Interface Relationship

All Known Subinterfaces:
ExplicitRelationship, ReverseRelationship, ReverseRelationshipInterDataset, ReverseRelationshipIntraDataset

public interface Relationship
An instance of this class specifies a relationship between nodes in the same dataset or in another dataset.

A relationship defines an owner node and a target node. The owner node is the one that holds a foreign key constraint (osd:tableRef), a selection link (osd:select) or an association link (osd:association). The target table node is the one used by the foreign key constraint, the selection link or the association link. For example, in the following tableRef definition:

        <osd:tableRef>
                <tablePath>
                        /root/table
                </tablePath>
        </osd:tableRef>
 

/root/table is the target node of the relationship.

A relationship has two ways:
  1. From an owner node to a target table node. In this case it is an ExplicitRelationship.
  2. From a target table node to an owner node. In this case it is a ReverseRelationship.

Each relationship can be defined in the same dataset or between several datasets.
Inter-datasets relationships define a container dataset reference and optionally a container dataspace reference (case of tableRef between dataspaces).
The container dataset reference specifies the instance containing the source node of this link.
The container dataspace reference specifies the home containing the container reference.

Since:
5.7.1
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Returns true if this relationship is explicit.
  • Method Details

    • isExplicit

      boolean isExplicit()
      Returns true if this relationship is explicit. That is, this relationship is the one that is defined in a data model from a node to a target table.