You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Create a template (Template A), with node type Type A. It has an ID of 123
Create a child template Template A Child
Create a network, with node Node A using Type A. Type A is defined on the Template A
In Template B, create a subclass of Type A -- This has an ID of 789
This results in:
Type A has ID of 123
Type A Child has id of 789
Node A' refers to 123`
Network A refers to Template B
When requesting Template B, there is no node type with 123, thus resulting in a mismatch between the network and template.
Current Outcome
We now have a network, which is defined as using 'Template B`, but with one of its nodes referring to the Superclass of a node defined withing it, rather than the subclass.
Desired Outcome Node A in Network A references the child type, either with a HARD reference, or with a SOFT reference -- meaning:
When creating a subclass of a node in a child template, we update all references to the parent node type in networks which reference the child template
When requesting a child template, we keep a record of all parent node types (there can be more than one), and leave it to the application to figure out what to do:
For example, the node_type in template B when returned would look like
After discussion, the approach of updating references seems likely to obscure the relationship between parent and child types so clients should be presented with a list of parent ids when retrieving type information.
Should this then be accompanied by a function to retrieve types en-mass, so all parent types can be retrieved?
And if this is the case, how do we ensure the correct type inheritance on the client side? For example, if the parent_ids list is [100, 200, 300], can we guarantee that 200 is a child of 100 and 300 is a child of 100?
Consider the following:
Type A
. It has an ID of 123Template A Child
Node A
usingType A
.Type A
is defined on theTemplate A
Template B
, create a subclass ofType A
-- This has an ID of 789This results in:
Type A
has ID of 123Type A Child
has id of 789Node A' refers to
123`Network A
refers toTemplate B
When requesting
Template B
, there is no node type with 123, thus resulting in a mismatch between the network and template.Current Outcome
We now have a network, which is defined as using 'Template B`, but with one of its nodes referring to the Superclass of a node defined withing it, rather than the subclass.
Desired Outcome
Node A
inNetwork A
references the child type, either with a HARD reference, or with a SOFT reference -- meaning:For example, the node_type in template B when returned would look like
The text was updated successfully, but these errors were encountered: