<desc>

<desc> (description) contains a short description of the purpose, function, or use of its parent element, or when the parent is a documentation element, describes or defines the object being documented. [22.4.1. Description of Components]
Module core
Attributes Attributes att.global (xml:id, n, xml:lang) (lim.att.global.fragmentable (part)) (att.global.rendition (rendition)) (att.global.source (source))
type characterizes the element in some sense, using any convenient classification scheme or typology.
Derived from att.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
deprecationInfo
(deprecation information) This element describes why or how its parent element is being deprecated, typically including recommendations for alternate encoding.

<dataSpec module="tei" ident="teidata.point" validUntil="2050-02-25">
   
<desc type="deprecationInfo" versionDate="2018-09-14" xml:lang="en">Several standards bodies, including NIST in the USA,
        strongly recommend against ending the representation of a number
        with a decimal point. So instead of 
<q>3.</q> use either <q>3</q>
        or 
<q>3.0</q>.</desc>
   
<!-- ... -->
</dataSpec>
Member of
Contained by
May contain
Note
When used in a specification element such as elementSpec, TEI convention requires that this be expressed as a finite clause, begining with an active verb.
Examples Example of a desc element inside a documentation element.

<dataSpec module="tei" ident="teidata.point">
   
<desc versionDate="2010-10-17" xml:lang="en">defines the data type used to express a point in cartesian space.</desc>
   
<content>
      
<dataRef name="token" restriction="(-?[0-9]+(\.[0-9]+)?,-?[0-9]+(\.[0-9]+)?)"/>
   
</content>
   
<!-- ... -->
</dataSpec>
Example of a desc element in a non-documentation element.

<place xml:id="KERG2">
   
<placeName>Kerguelen Islands</placeName>
   
<!-- ... -->
   
<terrain>
      
<desc>antarctic tundra</desc>
   
</terrain>
   
<!-- ... -->
</place>
Schematron
A desc with a type of deprecationInfo should only occur when its parent element is being deprecated. Furthermore, it should always occur in an element that is being deprecated when desc is a valid child of that element.

<sch:rule context="tei:desc[ @type eq 'deprecationInfo']">
   
<sch:assert test="../@validUntil">Information about a deprecation should only be present in a specification element that is being deprecated: that is, only an element that has a @validUntil attribute should have a child <desc type="deprecationInfo">.</sch:assert>
</sch:rule>
Source Github

<elementSpec module="core" ident="desc">
   
<gloss>description</gloss>
   
<desc>contains a short description of the purpose, function, or
use of its parent element,
or when the parent is a documentation element, describes or defines the object being documented. 

  
</desc>
   
<classes>
      
<memberOf key="att.global"/>
      
<memberOf key="model.descLike"/>
      
<memberOf key="att.typed"/>
      
<memberOf key="model.labelLike"/>
   
</classes>
   
<content>
      
<macroRef key="macro.limitedContent"/>
   
</content>
   
<attList>
      
<attDef ident="type" mode="change">
         
<valList type="semi" mode="add">
            
<valItem ident="deprecationInfo">
               
<gloss>deprecation
      information
</gloss>
               
<desc>This element
      describes why or how its parent element is being deprecated,
      typically including recommendations for alternate
      encoding.
</desc>
            
</valItem>
         
</valList>
      
</attDef>
   
</attList>
</elementSpec>