<relation>

<relation> (relation) décrit tout type de relation ou de lien à l'intérieur d'un groupe donné de participants 15.2.2 The Participant Description
Modulenamesdates — 13 Names, Dates, People, and Places
Attributs att.datable (att.datable.w3c (@period, @when, @notBefore, @notAfter, @from, @to)) (att.datable.iso (@when-iso, @notBefore-iso, @notAfter-iso, @from-iso, @to-iso)) att.editLike (@cert, @resp, @evidence, @source) (att.dimensions (@unit, @quantity, @extent, @atLeast, @atMost, @min, @max, @precision, @scope)) att.naming (@nymRef) (att.canonical (@key, @ref))
typecaractérise la relation sous un certain aspect, par exemple social, personnel ou autre
Statut Optionel
Type de données

<rng:ref name="data.enumerated"/>
data.enumerated
Les valeurs suggérées comprennent:
social
forme de relation sociale.
personal
forme de relation personnelle, comme parenté, mariage, etc. [Valeur par défaut]
other
autres formes de relation.
namefournit un nom pour le type de relation dont elle est une instance.
Statut Requis
Type de données

<rng:ref name="data.enumerated"/>
data.enumerated
Valeurs an open list of application-dependent keywords
activeidentifie les participants actifs dans une relation à sens unique, ou tous les participants dans une relation réciproque.
Statut Optionel
Type de données 1–∞ occurrences of

<rng:ref name="data.pointer"/>
data.pointer
séparé par un espace
Valeurs a list of identifier values for participant or participant groups
mutualfournit une liste de participants entre lesquelles la relation est réciproque.
Statut Obligatoire quand applicable
Type de données 1–∞ occurrences of

<rng:ref name="data.pointer"/>
data.pointer
séparé par un espace
Valeurs a list of identifier values for participant or participant groups
passiveidentifie les participants ‘passifs’ dans une relation non mutuelle
Statut Optionel
Type de données 1–∞ occurrences of

<rng:ref name="data.pointer"/>
data.pointer
séparé par un espace
Valeurs a list of identifier values for participant or participant groups
Utilisé par
Peut contenir
core: desc
Declaration

<rng:element name="relation">
<rng:ref name="att.global.attributes"/>
<rng:ref name="att.datable.w3c.attributes"/>
<rng:ref name="att.datable.iso.attributes"/>
<rng:ref name="att.editLike.attributes"/>
<rng:ref name="att.dimensions.attributes"/>
<rng:ref name="att.naming.attributes"/>
<rng:ref name="att.canonical.attributes"/>
<rng:optional>
 <rng:attribute name="typea:defaultValue="personal">
  <rng:choice>
   <rng:value>social</rng:value>
   <rng:value>personal</rng:value>
   <rng:value>other</rng:value>
   <rng:data type="Name"/>
  </rng:choice>
 </rng:attribute>
</rng:optional>
<rng:attribute name="name">
 <rng:ref name="data.enumerated"/>
</rng:attribute>
<rng:choice>
 <rng:optional>
  <rng:attribute name="active">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="data.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="mutual">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="data.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
</rng:choice>
<rng:optional>
 <rng:attribute name="passive">
  <rng:list>
   <rng:oneOrMore>
    <rng:ref name="data.pointer"/>
   </rng:oneOrMore>
  </rng:list>
 </rng:attribute>
</rng:optional>
<rng:optional>
 <rng:ref name="desc"/>
</rng:optional>
</rng:element>
element relation
{
   att.global.attributes,
   att.datable.w3c.attributes,
   att.datable.iso.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.naming.attributes,
   att.canonical.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?
}
Exemple
<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.

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

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

Note
Un seul des attributs active et mutual peut être fourni ; l'attribut passive ne peut être utilisé que si l'attribut active est fourni. Tous les langages de schéma ne sont pas capables d'exprimer la totalité de ces contraintes.