<relation>

<relation> (relation) décrit tout type de relation ou de lien à l'intérieur d'un groupe donné de participants. [13.3.2.3 Personal Relationships]
Module namesdates — Names, Dates, People, and Places
Attributs
calendar⚓︎ indique le système ou le calendrier auquel appartient la date exprimée dans le contenu de l'élément.
Deprecated This feature will be withdrawn after 2024-11-11
Statut Optionel
Type de données 1–∞ occurrences de teidata.pointer séparé par un espace
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
name⚓︎ fournit un nom pour le type de relation dont elle est une instance.
Statut Optionel
Type de données teidata.enumerated
active⚓︎ identifie 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 de teidata.pointer séparé par un espace
mutual⚓︎ fournit une liste de participants entre lesquels la relation est réciproque.
Statut Optionel
Type de données 1–∞ occurrences de teidata.pointer séparé par un espace
passive⚓︎ identifie les participants ‘passifs’ dans une relation non mutuelle.
Statut Optionel
Type de données 1–∞ occurrences de teidata.pointer séparé par un espace
Contenu dans
Peut contenir
core: desc
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.

Exemple
<relation type="socialname="supervisor"
 active="#fr_p1passive="#p2 #p3 #p4"/>

Cela indique que la personne avec l'identifiant p1 est le superviseur des personnes p2, p3 et p4.

Exemple
<relation type="personalname="friends"
 mutual="#fr_p2 #fr_p3 #fr_p4"/>

Cela indique que p2, p3 et p4 sont tous amis.

Schematron

<sch:assert test="@ref or @key or @name">One of the attributes 'name', 'ref' or 'key' must be supplied</sch:assert>
Schematron

<sch:report test="@active and @mutual">Only one of the attributes @active and @mutual may be supplied</sch:report>
Schematron

<sch:report test="@passive and not(@active)">the attribute 'passive' may be supplied only if the attribute 'active' is supplied</sch:report>
Modèle de contenu
<content>
 <elementRef key="descminOccurs="0"/>
</content>
Schéma Declaration
<rng:element name="relation">
 <rng:ref name="att.global.attributes"/>
 <rng:ref name="att.global.rendition.attributes"/>
 <rng:ref name="att.global.linking.attributes"/>
 <rng:ref name="att.global.analytic.attributes"/>
 <rng:ref name="att.global.facs.attributes"/>
 <rng:ref name="att.global.change.attributes"/>
 <rng:ref name="att.global.responsibility.attributes"/>
 <rng:ref name="att.global.source.attributes"/>
 <rng:ref name="att.datable.attributes"/>
 <rng:ref name="att.datable.w3c.attributes"/>
 <rng:ref name="att.datable.iso.attributes"/>
 <rng:ref name="att.datable.custom.attributes"/>
 <rng:ref name="att.editLike.attributes"/>
 <rng:ref name="att.canonical.attributes"/>
 <rng:ref name="att.sortable.attributes"/>
 <rng:ref name="att.typed.attributes"/>
 <rng:optional>
  <rng:attribute name="calendar">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="teidata.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="name">
   <rng:ref name="teidata.enumerated"/>
  </rng:attribute>
 </rng:optional>
 <rng:choice>
  <rng:optional>
   <rng:attribute name="active">
    <rng:list>
     <rng:oneOrMore>
      <rng:ref name="teidata.pointer"/>
     </rng:oneOrMore>
    </rng:list>
   </rng:attribute>
  </rng:optional>
  <rng:optional>
   <rng:attribute name="mutual">
    <rng:list>
     <rng:oneOrMore>
      <rng:ref name="teidata.pointer"/>
     </rng:oneOrMore>
    </rng:list>
   </rng:attribute>
  </rng:optional>
 </rng:choice>
 <rng:optional>
  <rng:attribute name="passive">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="teidata.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.global.rendition.attributes,
   att.global.linking.attributes,
   att.global.analytic.attributes,
   att.global.facs.attributes,
   att.global.change.attributes,
   att.global.responsibility.attributes,
   att.global.source.attributes,
   att.datable.attributes,
   att.datable.w3c.attributes,
   att.datable.iso.attributes,
   att.datable.custom.attributes,
   att.editLike.attributes,
   att.canonical.attributes,
   att.sortable.attributes,
   att.typed.attributes,
   attribute calendar { list { teidata.pointer+ } }?,
   attribute name { teidata.enumerated }?,
   (
      attribute active { list { teidata.pointer+ } }?
    | attribute mutual { list { teidata.pointer+ } }?
   ),
   attribute passive { list { teidata.pointer+ } }?,
   desc?
}