@@ -142,9 +142,10 @@ have sole responsibility and authority for maintaining the application state.
142142
143143### Cyclic References
144144
145- The relationship between resources, such as parent-child or
146- [ resource references] [ ] , ** must** be representable via a
147- [ directed acyclic graph] [ ] .
145+ The relationship between resources, such as with [ resource references] [ ] ,
146+ ** must** be representable via a [ directed acyclic graph] [ ] . The parent-child
147+ relationship also ** must** be acyclic, and as per [ AIP-124] [ ] a given resource
148+ instance will only have one canonical parent resource.
148149
149150A cyclic relationship between resources increases the complexity of managing
150151resources. Consider resources A and B that refer to
@@ -161,6 +162,7 @@ This requirement does not apply to relationships that are expressed via
161162[ output only] [ ] fields, as they do not require the user to specify the values
162163and in turn do not increase resource management complexity.
163164
165+ [ AIP-124 ] : ./0124.md
164166[ create ] : ./0133.md
165167[ custom methods ] : ./0136.md
166168[ delete ] : ./0135.md
@@ -181,6 +183,7 @@ and in turn do not increase resource management complexity.
181183
182184## Changelog
183185
186+ - ** 2024-07-08** : Clarify acyclic nature of parent-child relationship.
184187- ** 2023-08-24** : Added guidance on consistency guarantees of methods.
185188- ** 2023-07-23** : Clarify stateless protocol definition.
186189- ** 2023-01-21** : Explicitly require matching schema across standard methods.
0 commit comments