att.deprecated

att.deprecated 非推奨の機能を将来のリリースでどのように扱うかを示す属性を提供する。
モジュール tagdocs — Documentation Elements
構成 att.combinable [att.identified [attDef classSpec constraintSpec dataSpec elementSpec macroSpec moduleSpec paramSpec schemaSpec] defaultVal remarks valDesc valItem valList]
属性
validUntil⚓︎ 定義されている構文が削除される前の日付を提供する。
状態 任意
データ型 date
Schematron

<sch:rule context="tei:*[@validUntil]">
<sch:let name="advance_warning_period"
 value="current-date() + xs:dayTimeDuration('P60D')"/>

<sch:let name="me_phrase"
 value="if (@ident) then concat('The ', @ident ) else concat('This ', local-name(.), ' of ', ancestor::tei:*[@ident][1]/@ident )"/>

<sch:assert test="@validUntil cast as xs:date ge current-date()">
 <sch:value-of select="concat( $me_phrase, ' construct is outdated (as of ', @validUntil, '); ODD processors may ignore it, and its use is no longer supported' )"/>
</sch:assert>
<sch:assert role="warning"
 test="@validUntil cast as xs:date ge $advance_warning_period">

 <sch:value-of select="concat( $me_phrase, ' construct becomes outdated on ', @validUntil )"/>
</sch:assert>
</sch:rule>
Schematron

<sch:rule context="tei:*[@validUntil][ not( self::tei:valDesc | self::tei:valList | self::tei:defaultVal | self::tei:remarks )]">
<sch:assert test="child::tei:desc[ @type eq 'deprecationInfo']"> A deprecated construct should include, whenever possible, an explanation, but this <sch:value-of select="name(.)"/> does not have a child <desc type="deprecationInfo"></sch:assert>
</sch:rule>
解説

この属性の値は、(yyyy-mm-ddの形式で)日付を表し、属性がODDに追加された日付より後である必要がある。技術的には、この属性は、指定された日付まで定義されているマークアップ言語の将来のリリースで構造を残す意図のみを表明し、その日付以降に何が起こるかについて主張しない。実際には、validUntil日付の直後に定義されるマークアップ言語の将来のリリースからコンストラクトが削除されることが期待されます。

ODDプロセッサは、通常、validUntil日付が過去のものである仕様要素を処理しない。ODDプロセッサは、通常、validUntilの日付を持つコンストラクトについてユーザに警告する。例えば、そのような構造のドキュメントには、warning:deprecatedというフレーズが赤で表示される。