<persName>

<persName> (personal name) contains a proper noun or proper-noun phrase referring to a person, possibly including one or more of the person's forenames, surnames, honorifics, added names, etc. [13.2.1. Personal Names]
Module namesdates
Attributes Attributes att.global (xml:id, n, xml:lang) (lim.att.global.fragmentable (part)) (att.global.rendition (rendition)) (att.global.source (source)) att.datable (att.datable.w3c (when, notBefore, notAfter, from, to)) (att.datable.custom (when-custom, notBefore-custom, notAfter-custom, from-custom, to-custom, datingMethod)) att.editLike (evidence) att.personal (att.naming (role) (att.canonical (ref)) ) att.typed (type)
calendar indicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecated will be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
Member of
Contained by
May contain
Examples

<persName>
   
<forename>Edward</forename>
   
<forename>George</forename>
   
<surname type="linked">Bulwer-Lytton</surname><roleName>Baron Lytton of
     
<placeName>Knebworth</placeName>
   
</roleName>
</persName>
Schematron
All inline persNames must have a ref that points to the personography db.

<sch:rule context="tei:persName[not(parent::tei:person)][@ref]">
   
<sch:assert test="matches(@ref,concat('^prs:', $persIdPattern, '$'))">ERROR: All persName pointers must have an @ref that begins with "prs:" followed by 5 uppercase letters and a number (e.g. prs:FORBR1).</sch:assert>
</sch:rule>
Do not use roleName, but use occupation instead.

<sch:rule context="tei:persName/tei:roleName">
   
<sch:assert test="false()">ERROR: Rolenames should not be denoted in a persName directly; all role information should be encoded using the occupation element.</sch:assert>
</sch:rule>

<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>
Source Github

<elementSpec rend="change" module="namesdates" ident="persName">
   
<gloss>personal name</gloss>
   
<desc>contains a proper noun or proper-noun phrase referring to a
 person, possibly including one or more of
 the person's forenames, surnames, honorifics, added names, etc.
</desc>
   
<classes>
      
<memberOf key="att.global"/>
      
<memberOf key="model.nameLike.agent"/>
      
<memberOf key="att.datable"/>
      
<memberOf key="att.editLike"/>
      
<memberOf key="att.personal"/>
      
<memberOf key="att.typed"/>
   
</classes>
   
<content>
      
<macroRef key="macro.phraseSeq"/>
   
</content>
   
<attList>
      
<attDef ident="calendar" usage="opt" validUntil="2024-11-11">
         
<desc>indicates one or more systems or calendars to which the
        date represented by the content of this element belongs.
</desc>
         
<datatype minOccurs="1" maxOccurs="unbounded">
            
<dataRef key="teidata.pointer"/>
         
</datatype>
      
</attDef>
   
</attList>
</elementSpec>