<locus>

<locus> (locus) defines a location within a manuscript, manuscript part, or other object typically as a (possibly discontinuous) sequence of folio references.
Module msdescription
Attributes Attributes
from (from) specifies the starting point of the location in a normalized form, typically a page number.
Status Required
Datatype teidata.word
to (to) specifies the end-point of the location in a normalized form, typically as a page number.
Status Required
Datatype teidata.word
Contained by
header: profileDesc
msdescription: locusGrp msItem
May contain Empty element
Schematron

<sch:pattern>
   
<sch:rule context="tei:locus[@from and @to]">
      
<sch:let name="from" value="xs:integer(replace(@from,'[^\d]+',''))"/>
      
<sch:let name="to" value="xs:integer(replace(@to,'[^\d]+',''))"/>
      
<sch:assert test="$from lt ($to + 1)">ERROR: @to value should not be less than @from. If you need to specify a set of discontinuous pages (i.e. spanning across a pageGroup), use a locusGrp.</sch:assert>
   
</sch:rule>
</sch:pattern>

<sch:pattern>
   
<sch:rule context="tei:locus[@type='Paton'][@n and @from and @to]">
      
<sch:let name="n" value="@n"/>
      
<sch:let name="max" value="if (@n = '1') then 382 else if (@n = '2') then 380 else 416"/>
      
<sch:let name="from" value="xs:integer(replace(@from,'[^\d]+',''))"/>
      
<sch:let name="to" value="xs:integer(replace(@from,'[^\d]+',''))"/>
      
<sch:assert test="$from lt ($max + 1)">ERROR: @from value out of range: Paton volume<sch:value-of select="$n"/>contains<sch:value-of select="$max"/>pages.</sch:assert>
      
<sch:assert test="$to lt ($max + 1)">ERROR: @to value out of range: Paton volume<sch:value-of select="$n"/>contains<sch:value-of select="$max"/>pages.</sch:assert>
   
</sch:rule>
</sch:pattern>
Source Github

<elementSpec ident="locus" module="msdescription" mode="replace">
   
<gloss>locus</gloss>
   
<desc xml:id="locus.desc">defines a location within a manuscript, manuscript part, or other object typically 
                 as a (possibly discontinuous) sequence of folio references.
</desc>
   
<attList>
      
<attDef ident="from" usage="req">
         
<gloss>from</gloss>
         
<desc>specifies the
                       starting point of the location in a normalized form, typically a
                       page number.
</desc>
         
<datatype>
            
<dataRef key="teidata.word"/>
         
</datatype>
      
</attDef>
      
<attDef ident="to" usage="req">
         
<gloss>to</gloss>
         
<desc>specifies the
                       end-point of the location in a normalized form, typically as a
                       page number.
</desc>
         
<datatype>
            
<dataRef key="teidata.word"/>
         
</datatype>
      
</attDef>
      
<attList org="choice">
         
<attList org="group">
            
<attDef ident="type" usage="req" mode="replace">
               
<valList type="closed">
                  
<valItem ident="Forbes" mode="add">
                     
<desc>Forbes</desc>
                     
<gloss>A Forbes page range</gloss>
                  
</valItem>
               
</valList>
            
</attDef>
         
</attList>
         
<attList org="group">
            
<attDef ident="type" usage="req" mode="replace">
               
<valList type="closed">
                  
<valItem ident="Paton" mode="add">
                     
<desc>Paton</desc>
                     
<gloss>A Paton page range</gloss>
                  
</valItem>
               
</valList>
            
</attDef>
            
<attDef ident="n" usage="req">
               
<gloss>number</gloss>
               
<desc>gives a number (or other label) for an element, which is not necessarily unique within
                             the document.
</desc>
               
<datatype maxOccurs="1">
                  
<dataRef name="positiveInteger">
                     
<dataFacet name="maxInclusive" value="3"/>
                  
</dataRef>
               
</datatype>
            
</attDef>
         
</attList>
      
</attList>
   
</attList>
</elementSpec>