<trait>

<trait> (trait) contains a description of some status or quality attributed to a person, place, or organization typically, but not necessarily, independent of the volition or action of the holder and usually not at some specific time or for a specific date range. [14.3.1 Basic Principles 14.3.2.1 Personal Characteristics]
組件 namesdates — Names, Dates, People, and Places
屬性
calendar⚓︎ 指明該日期表示所使用的曆法計算系統。
Deprecated This feature will be withdrawn after 2024-11-11
狀態 非必備的
資料類型 1–∞ 次可出現: teidata.pointer 以空白鍵隔開
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>
俱乐部会员
可包含在於
analysis: cl phr s span
cmc: post
figures: cell figDesc
iso-fs: fDescr fsDescr
linking: ab seg
spoken: u writing
tagdocs: eg valDesc
verse: metSym rhyme
可包含
certainty: precision
header: biblFull
linking: ab
msdescription: msDesc
namesdates: trait

Where there is confusion between trait and state the more general purpose element state should be used even for unchanging characteristics. If you wish to distinguish between characteristics that are generally perceived to be time-bound states and those assumed to be fixed traits, then trait is available for the more static of these. The state element encodes characteristics which are sometimes assumed to change, often at specific times or over a date range, whereas the trait elements are used to record characteristics, such as eye-colour, which are less subject to change. Traits are typically, but not necessarily, independent of the volition or action of the holder.

例子
<trait type="physical">
 <label>眼珠顏色</label>
 <desc>藍色</desc>
</trait>
Content model
<content>
 <sequence>
  <elementRef key="precisionminOccurs="0"
   maxOccurs="unbounded"/>

  <alternate>
   <elementRef key="traitminOccurs="1"
    maxOccurs="unbounded"/>

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

    <classRef key="model.pLike"
     minOccurs="1maxOccurs="unbounded"/>

    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.noteLike"/>
     <classRef key="model.biblLike"/>
    </alternate>
   </sequence>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.labelLike"/>
    <classRef key="model.noteLike"/>
    <classRef key="model.biblLike"/>
   </alternate>
  </alternate>
 </sequence>
</content>
宣告
<rng:element name="trait">
 <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.naming.attributes"/>
 <rng:ref name="att.canonical.attributes"/>
 <rng:ref name="att.typed.attributes"/>
 <rng:ref name="att.dimensions.attributes"/>
 <rng:ref name="att.ranging.attributes"/>
 <rng:ref name="att.cmc.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:group>
  <rng:zeroOrMore>
   <rng:ref name="precision"/>
  </rng:zeroOrMore>
  <rng:choice>
   <rng:oneOrMore>
    <rng:ref name="trait"/>
   </rng:oneOrMore>
   <rng:group>
    <rng:zeroOrMore>
     <rng:ref name="model.headLike"/>
    </rng:zeroOrMore>
    <rng:oneOrMore>
     <rng:ref name="model.pLike"/>
    </rng:oneOrMore>
    <rng:zeroOrMore>
     <rng:choice>
      <rng:ref name="model.noteLike"/>
      <rng:ref name="model.biblLike"/>
     </rng:choice>
    </rng:zeroOrMore>
   </rng:group>
   <rng:zeroOrMore>
    <rng:choice>
     <rng:ref name="model.labelLike"/>
     <rng:ref name="model.noteLike"/>
     <rng:ref name="model.biblLike"/>
    </rng:choice>
   </rng:zeroOrMore>
  </rng:choice>
 </rng:group>
</rng:element>
element trait
{
   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.naming.attributes,
   att.canonical.attributes,
   att.typed.attributes,
   att.dimensions.attributes,
   att.ranging.attributes,
   att.cmc.attributes,
   attribute calendar { list { teidata.pointer+ } }?,
   (
      precision*,
      (
         trait+
       | (
            model.headLike*,
            model.pLike+,
            ( model.noteLike | model.biblLike )*
         )
       | ( model.labelLike | model.noteLike | model.biblLike )*
      )
   )
}