<metDecl>

<metDecl> (metrical notation declaration) 韻律パタンを表す表記法を示す。韻文のための要素(例えば、lglsegなど)にある属性metrealrhymeの値として定義される。 [6.6 Metrical Notation Declaration 6.4 Rhyme and Metrical Analysis]
モジュール verse — Verse
属性
type⚓︎ 当該表記法が抽象的韻律形式、実際の韻律形式、押韻スキーム、これら の組み合わせを表すかどうかを示す。
状態 任意
データ型 1–3 occurrences of teidata.enumerated 空白文字で区切られる
正当な値:
met
(met attribute) 属性metにある、抽象的韻律形式に該当する。
real
(real attribute) 属性realにある実際の韻律形式に該当する。
rhyme
属性rhymeにある押韻スキームに該当する。
解説

デフォルト値として、要素metDeclは、韻律パタンや実現形 を表す表記法を記録する。また、押韻スキーム用の表記法も記録する。 これら表記法が記録されたいない場合には、押韻スキームのデフォルト の表記法は、従来の‘アバブ(abab)’法になる。

pattern⚓︎ (regular expression pattern) 当該表記法に叶う値を正規表現で示す。
状態 任意
データ型 teidata.pattern
クラブのメンバー
上位
header: encodingDesc
下位
core: note noteGrp p
linking: ab
verse: metSym
解説

符号化する人は、当該表記法が形式的・非形式的に定義するかを選択する ことができる。しかし、この2つを混ぜて使うことはないだろう。つまり、 要素metDeclが、一連の要素metSym、または一連の段落 や他の構成要素をとるかもしれない。属性patternが定義され、 かつ要素metSymが使われている場合には、属性 pattern中にあるコードは全て記録されるべきである。

当該要素は、韻文モジュールを使う場合にのみ、ヘダー中で使うことがで きる。

<metDecl xml:id="iptype="met"
 pattern="((SU|US)USUSUSUS/)">

 <metSym value="S">stressed syllable</metSym>
 <metSym value="U">unstressed syllable</metSym>
 <metSym value="/">metrical line boundary</metSym>
</metDecl>

This example is intended for the far more restricted case typified by the Shakespearean iambic pentameter. Only metrical patterns containing exactly ten syllables, alternately stressed and unstressed, (except for the first two which may be in either order) to each metrical line can be expressed using this notation.

Content model
<content>
 <alternate>
  <alternate minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.pLike"/>
   <classRef key="model.noteLike"/>
  </alternate>
  <elementRef key="metSymminOccurs="1"
   maxOccurs="unbounded"/>

 </alternate>
</content>
宣言
<rng:element name="metDecl">
 <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.declarable.attributes"/>
 <rng:optional>
  <rng:attribute name="type"
   a:defaultValue="met real">

   <rng:list>
    <rng:choice>
     <rng:value>met</rng:value>
     <rng:value>real</rng:value>
     <rng:value>rhyme</rng:value>
    </rng:choice>
    <rng:optional>
     <rng:choice>
      <rng:value>met</rng:value>
      <rng:value>real</rng:value>
      <rng:value>rhyme</rng:value>
     </rng:choice>
    </rng:optional>
    <rng:optional>
     <rng:choice>
      <rng:value>met</rng:value>
      <rng:value>real</rng:value>
      <rng:value>rhyme</rng:value>
     </rng:choice>
    </rng:optional>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="pattern">
   <rng:ref name="teidata.pattern"/>
  </rng:attribute>
 </rng:optional>
 <rng:choice>
  <rng:oneOrMore>
   <rng:choice>
    <rng:ref name="model.pLike"/>
    <rng:ref name="model.noteLike"/>
   </rng:choice>
  </rng:oneOrMore>
  <rng:oneOrMore>
   <rng:ref name="metSym"/>
  </rng:oneOrMore>
 </rng:choice>
</rng:element>
element metDecl
{
   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.declarable.attributes,
   attribute type
   {
      list
      {
         ( "met" | "real" | "rhyme" ),
         ( "met" | "real" | "rhyme" )?,
         ( "met" | "real" | "rhyme" )?
      }
   }?,
   attribute pattern { teidata.pattern }?,
   ( ( model.pLike | model.noteLike )+ | metSym+ )
}