Relationships
The relationships are the methodology: they connect intent (actors), behaviour (journeys, use cases), knowledge (rules, terms, contexts) and obligations (requirements), and they carry traceability through Product Changes.

Figure PDaC-6 - what happens when one part of the product changes? Non-normative: the arrows are readable prose and some point in the derived direction. The canonical vocabulary below is authoritative.
Canonical vocabulary
Section titled “Canonical vocabulary”Every relationship has exactly one canonical direction: it is authored on one artifact type, in one frontmatter field, targeting an allowed set of types.
| Source | Field | Allowed targets | Polarity |
|---|---|---|---|
| Journey | primary-actor | Actor | dependency |
| Journey | steps[].use-case | Use Case | dependency |
| Use Case | primary-actor | Actor | dependency |
| Use Case | supporting-actors | Actor | dependency |
| Use Case | bounded-context | Bounded Context | dependency |
| Use Case | governed-by | Business Rule | dependency |
| Use Case | uses-terms | Domain Term | dependency |
| Business Rule | applies-to | Journey, Use Case, Bounded Context | governance |
| Business Rule | uses-terms | Domain Term | dependency |
| Domain Term | defined-in | Bounded Context | dependency |
| Domain Term | uses-terms | Domain Term | dependency |
| Functional Requirement | derived-from | Use Case, Business Rule, Constraint | dependency |
| Functional Requirement | verification[].scenario-ref | Structured Behaviour | dependency |
| Functional Requirement | uses-terms | Domain Term | dependency |
| Quality Requirement | applies-to | Journey, Use Case, Bounded Context | governance |
| Quality Requirement | verification[].scenario-ref | Structured Behaviour | dependency |
| Quality Requirement | uses-terms | Domain Term | dependency |
| Constraint | applies-to | Journey, Use Case, Bounded Context; absent = entire product | governance |
| Constraint | uses-terms | Domain Term | dependency |
| Structured Behaviour | illustrates | Use Case, Business Rule, Constraint | dependency |
| Structured Behaviour | uses-terms | Domain Term | dependency |
| Product Change | operations.add | any product artifact (new ID) | none |
| Product Change | operations.modify | any existing product artifact | none |
| Product Change | operations.remove | any existing product artifact | none |
A relationship referencing an unknown ID, or targeting a type outside the allowed set, is a validation error.
Canonical authoring direction is not impact direction. The Polarity column declares which end of a relationship is put in question when the other end changes.
dependency. The source cites what it builds on. A change to the target puts the source in question. A change to the source says nothing about the target.governance. The edge couples both ends. The governed artifact must be reconsidered when the governing artifact changes, and the governing artifact’s continued applicability must be reconsidered when the governed artifact changes.none. The field carries no impact polarity. Product Change operation edges record a proposal, not a dependency between Product Artifacts.
A relationship field added to this vocabulary MUST declare its polarity.
Polarity is a property of the relationship. It places no obligation on an author and produces no diagnostic of its own. What an implementation does with it is stated in Product Changes → Elaboration.
Array-member relationship fields use the [] attribution convention. Diagnostics for a scenario-ref relationship MUST report field as verification[].scenario-ref, just as a Journey step relationship reports steps[].use-case. Schema diagnostics such as PRODUCT002 continue to report their own instance paths.
Derived relationships
Section titled “Derived relationships”Reverse relationships are always derived by the graph compiler and MUST NOT be authored or manually maintained.
The canonical/derived split is decided once per pair. The load-bearing case:
Domain Term.defined-inis canonical.Bounded Context.owns-termsis derived. A bounded context’s owned terms are exactly the domain terms whosedefined-inreferences it.owns-termsMUST NOT appear in authored bounded-context frontmatter; schemas reject it. Tools MAY displayowns-termsin inspection output and generated indexes as a derived field.
All other reverse views (Actor ← journeys, Business Rule ← governed use cases, Use Case ← derived requirements, Requirements verified by a Structured Behaviour, and so on) follow the same rule: derived, displayed, never authored.
Status interactions
Section titled “Status interactions”- An
activeartifact MUST NOT reference aretiredartifact (error). - An
activeartifact referencing adeprecatedartifact SHOULD produce a warning. draftartifacts MAY referencedraftartifacts.
Reachability
Section titled “Reachability”Some diagnostics depend on reachability, defined deterministically as follows: two artifacts are connected if a path exists between them in the undirected view of the product graph restricted to the canonical product relationships above, excluding Product Change edges. A requirement is reachable from an actor when it is connected to at least one Actor node under this definition.
Structured Behaviour edges participate under the same rule. A Requirement verified by a Structured Behaviour is connected to the behaviour’s source Use Cases, Business Rules and Constraints. Structural impact analysis therefore includes changes to a Structured Behaviour through those authored edges, without making a semantic impact claim.
Knowledge warning relationship sets
Section titled “Knowledge warning relationship sets”For PRODUCT105, a non-retired Business Rule is consumed if and only if it has at least one valid outgoing Business Rule.applies-to relationship, incoming Use Case.governed-by relationship or incoming Functional Requirement.derived-from relationship, and the artifact authoring that relationship is non-retired. An incoming Structured Behaviour.illustrates relationship MUST NOT count as a consumer.
uses-terms is authored from an artifact whose interpretation requires a Domain Term to that Domain Term. Reverse views are derived and MUST NOT be authored. A Domain Term MAY author uses-terms for a definitional dependency; cycles are not prohibited by this relationship alone.
For PRODUCT106, a non-retired Domain Term is used if and only if it has at least one valid incoming uses-terms relationship authored by a non-retired Use Case, Business Rule, Domain Term, Functional Requirement, Quality Requirement, Constraint or Structured Behaviour. A prose occurrence, a generated reverse relationship or another relationship path does not count.
