-
Notifications
You must be signed in to change notification settings - Fork 19
Open
Description
#130 uses viaPredicate
to express predicate which directly relates parent to a child, we use it for inherited access.
I will link this issue inline in the primer to track changing it to st:viaShapePath
.
Currently to find all Data Instances of child resources, we do following:
- Each Data Grant is associated with specific ShapeTree (eg. Project, Task etc.)
- Starting from child Data Grant with
InheritInstances
scope (eg. Tasks), followinterop:inheritsFromGrant
Optimize referenced data grants and referenced access needs #124 - We get parent Data Grant with scope
AllInsances
orSelectedInstances
(eg. Projects) - For each instance of parent (eg. Project)
- Find and fetch ReferencesList for children matching ShapeTree of child Data Grant (there will be separate ReferencesList for each referenced child ShapeTree in parent ShapeTree).
- In the ReferencesList find references to all child Data Instances
I think in 3.1 we should be able to do it purely based on child ShapeTree if we include that information in ReferencesList description (partially embedded in each parent Data Instance). In 3.2 we would need to use Shape Path to get references of children. We would also need to consider how based on that Shape Path relevant statements get added to ReferencesList.