Description
The NodeRelation component is used to define the possible creation of a relation between a Node and another component (another Node for example) with a drop-down list in the NodeCreator. The NodeRelation defines how this drop-down list should be created. It must be added in a definition and applies to all child Nodes of that definition.
Implementation
- Add a NodeRelation in a NodeDefinition
- The name of the NodeRelation is the name of the relation that can be created. Ensure it is given a correct format (e.g.: b:tenantOf)
- It is possible to enter a relation for any dictionary
- If no dictionary is entered, the relation will be created in the BtibDictionary (and will thus add a b:)
Properties
- Status: Status of the NodeRelation. Can be {ok}, {fault}, {disabled} or {null}. See the corresponding actions
- FaultCause: Message that complements the state of the NodeRelation (generally used to explain the reason for an initialization failure)
- Tip: Description of the relation. Used in views (in particular NodeCreator)
- RelateHints: BQL or NEQL query to select components to relate the Node to or from. You can use relative queries. In this case the base for slot: would be the Node.
- AllowMultiRelations: Allows link to multiple components
- Direction {In, Out}: Direction of the relation to be created with respect to the Node. In: from the component to the Node, Out: from the Node to the component
- ListFormat: SFormat used to define the name displayed in the drop-down list
Actions
- Initialize: Initializes the NodeRelation and changes its state to {ok} or {fault}. Does not add a relation. (It plays an informative role for views)
- Disable: Disables the NodeRelation and changes its state to {disabled}. Does not change relations but disables the views
- Clean: Clears the NodeRelation and changes its state to {null}. Deletes the relations matching its configuration in the Nodes. This action is not reversible and must be performed before the permanent deletion of the NodeRelation