<relation>

<relation> (relationship) describes any kind of relationship or linkage amongst a specified group of participants. 15.2.2 The Participant Description
Modulenamesdates — 13 Names, Dates, People, and Places
Attributes [att.datable att.editLike att.naming ]
typecategorizes the relationship in some respect, e.g. as social, personal or other.
Status Optional
Datatype
data.enumerated
Suggested values include:
socialrelationship concerned with social roles
personalrelationship concerned with personal roles, e.g. kinship, marriage, etc. [Default]
otherother kinds of relationship
namesupplies a name for the kind of relationship of which this is an instance.
Status Required
Datatype
data.enumerated
Values an open list of application-dependent keywords
activeidentifies the ‘active’ participants in a non-mutual relationship, or all the participants in a mutual one.
Status Optional
Datatype 1–∞ occurrences of
data.pointer
separated by whitespace
Values a list of identifier values for participant or participant groups
mutualsupplies a list of participants amongst all of whom the relationship holds equally.
Status Mandatory when applicable
Datatype 1–∞ occurrences of
data.pointer
separated by whitespace
Values a list of identifier values for participant or participant groups
passiveidentifies the ‘passive’ participants in a non-mutual relationship.
Status Optional
Datatype 1–∞ occurrences of
data.pointer
separated by whitespace
Values a list of identifier values for participant or participant groups
Declaration
element relation
{
   att.global.attributes,
   att.datable.w3c.attributes,
   att.datable.iso.attributes,
   att.editLike.attributes,
   att.naming.attributes,
   attribute type { "social" | "personal" | "other" | xsd:Name }?,
   attribute name { data.enumerated },
   (
      attribute active { list { data.pointer+ } }?
    | attribute mutual { list { data.pointer+ } }?
   ),
   attribute passive { list { data.pointer+ } }?,
   desc?
}
Example
<relation
  type="social"
  name="supervisor"
  active="#p1"
  passive="#p2 #p3 #p4"/>

This indicates that the person with identifier p1 is supervisor of persons p2, p3, and p4.

Example
<relation type="personalname="friendsmutual="#p2 #p3 #p4"/>

This indicates that p2, p3, and p4 are all friends.

Note
Only one of the attributes active and mutual may be supplied; the attribute passive may be supplied only if the attribute active is supplied. Not all of these constraints can be enforced in all schema languages.
Contained bylistNym listOrg listPerson listPlace relationGrp
May contain
core: desc