<citeStructure>

<citeStructure> (citation structure) declares a structure and method for citing the current document. [3.11.4 Declaring Reference Systems 16.2.5.4 Citation Structures]
Moduleheader — The TEI Header
Attributsatt.global (@xml:id, @n, @xml:lang, @xml:base, @xml:space) (att.global.rendition (@rend, @style, @rendition)) (att.global.linking (@corresp, @synch, @sameAs, @copyOf, @next, @prev, @exclude, @select)) (att.global.analytic (@ana)) (att.global.facs (@facs)) (att.global.change (@change)) (att.global.responsibility (@cert, @resp)) (att.global.source (@source)) att.citeStructurePart (@use)
delim(delimiter) supplies a delimiting string preceding the structural component.
Statut Optionel
Type de données string
Schematron

<s:rule context="tei:citeStructure[parent::tei:citeStructure]">
<s:assert test="@delim">A <s:name/> with a parent <s:name/> must have a @delim attribute.</s:assert>
</s:rule>
match(match) supplies an XPath selection pattern using the syntax defined in Kay (ed.) (2017) which identifies a set of nodes which are citable structural components. The expression may be absolute (beginning with /) or relative. match on a citeStructure without a citeStructure parent must be an absolute XPath. If it is relative, its context is set by the match of the parent citeStructure.
Statut Requis
Type de données teidata.xpath
Schematron

<s:rule context="tei:citeStructure[not(parent::tei:citeStructure)]">
<s:assert test="starts-with(@match,'/')">An XPath in @match on the outer <s:name/> must start with '/'.</s:assert>
</s:rule>
Schematron

<s:rule context="tei:citeStructure[parent::tei:citeStructure]">
<s:assert test="not(starts-with(@match,'/'))">An XPath in @match must not start with '/' except on the outer <s:name/>.</s:assert>
</s:rule>
unit(unit) describes the structural unit indicated by the citeStructure.
Statut Optionel
Type de données teidata.enumerated
Exemple de valeurs possibles:
book
chapter
entry
poem
letter
line
section
verse
volume
Contenu dans
Peut contenir
Exemple
<citeStructure unit="book"
 match="//body/divuse="@n">

 <citeStructure unit="chaptermatch="div"
  use="position()delim=" ">

  <citeStructure unit="versematch="div"
   use="position()delim=":"/>

 </citeStructure>
</citeStructure>
Modèle de contenu
<content>
 <sequence>
  <elementRef key="citeDataminOccurs="0"
   maxOccurs="unbounded"/>

  <elementRef key="citeStructure"
   minOccurs="0maxOccurs="unbounded"/>

  <classRef key="model.descLike"
   minOccurs="0maxOccurs="unbounded"/>

 </sequence>
</content>
Schéma Declaration
<rng:element name="citeStructure">
 <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.citeStructurePart.attributes"/>
 <rng:optional>
  <rng:attribute name="delim">
   <rng:data type="string">
    <rng:param name="pattern">.+</rng:param>
   </rng:data>
  </rng:attribute>
 </rng:optional>
 <rng:attribute name="match">
  <rng:ref name="teidata.xpath"/>
 </rng:attribute>
 <rng:optional>
  <rng:attribute name="unit">
   <rng:ref name="teidata.enumerated"/>
  </rng:attribute>
 </rng:optional>
 <rng:group>
  <rng:zeroOrMore>
   <rng:ref name="citeData"/>
  </rng:zeroOrMore>
  <rng:zeroOrMore>
   <rng:ref name="citeStructure"/>
  </rng:zeroOrMore>
  <rng:zeroOrMore>
   <rng:ref name="model.descLike"/>
  </rng:zeroOrMore>
 </rng:group>
</rng:element>
element citeStructure
{
   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.citeStructurePart.attributes,
   attribute delim { string { pattern = ".+" } }?,
   attribute match { teidata.xpath },
   attribute unit { teidata.enumerated }?,
   ( citeData*, citeStructure*, model.descLike* )
}