<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]
Module header — The TEI Header
Attributes
delim⚓︎ (delimiter) supplies a delimiting string preceding the structural component.
Status Optional
Datatype string
Note

delim must contain at least one character.

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.
Status Required
Datatype teidata.xpath
Schematron

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

<sch:rule context="tei:citeStructure[parent::tei:citeStructure]">
<sch:assert test="not(starts-with(@match,'/'))">An XPath in @match must not start with '/' except on the outer <sch:name/>.</sch:assert>
</sch:rule>
unit⚓︎ (unit) describes the structural unit indicated by the citeStructure.
Status Optional
Datatype teidata.enumerated
Sample values include:
book
chapter
entry
poem
letter
line
section
verse
volume
Contained by
May contain
core: desc
Example
<citeStructure unit="book"
 match="//body/divuse="@n">

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

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

 </citeStructure>
</citeStructure>
Content model
<content>
 <sequence>
  <elementRef key="citeDataminOccurs="0"
   maxOccurs="unbounded"/>

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

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

 </sequence>
</content>
Schema 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* )
}