Release 2.x‎ > ‎Install - Reference‎ > ‎Config Ref Guide‎ > ‎Models‎ > ‎Model‎ > ‎Relationships‎ > ‎


A Relationship defines how a single Subject (Definition) is "associated" with another individual Subject or to a collection of Subjects.  This XML Element leverages a pre-defined XML Relationship implementation and definition.


<Relationship id="directReports">
      <Property name="relationship.classname"   value="org.openptk.model.ChildrenRelationship"/>
      <Property name="relationship.description" value="Children for a Subject"/>
   <Query type="EQ" name="manager" value="${uniqueid}"/>


 Name Required Description Example 
 id yes A unique identifier for the Relationship  peers


 Name Required Description Example 
 relationship.classname yes The full path name of the Java class that implements the Relationship interface org.openptk.model.ChildrenRelationship

 relationship.description no Describe what the relationship does. "Managers direct reports" 


A Query Element must be defined.  The Query is used by the Relationship as the "rule" for how the Subject is "related" to another Subject or a collection of Subjects.  

Query arguments:

 name The Subject's attribute that will be used for evaluation.  This must a valid / defined Attribute within the Definition.
 value The value of the attribute.  This is typically going to the be run-time value from the Subject.  Use the "${}" syntax to declare which attribute to use.