<join>

<join> (join) 標明文本中可能的不完整分割,指向構成此不完整分割的可能不連接元素。 [16.7 Aggregation]
組件linking — Linking, Segmentation, and Alignment
屬性att.global (@xml:id, @n, @xml:lang, @xml:base, @xml:space) (att.global.rendition (@rend, @style, @rendition)) (att.global.linking (@corresp, @synch, @sameAs, @copyOf, @next, @prev, @exclude, @select)) (att.global.analytic (@ana)) (att.global.facs (@facs)) (att.global.change (@change)) (att.global.responsibility (@cert, @resp)) (att.global.source (@source)) att.pointing (@targetLang, @target, @evaluate) att.typed (@type, @subtype)
result指出一個推斷該元素集合所代表的元素名稱。
狀態 非必備的
資料類型 teidata.name
scope指出被連結的目標是否包含所指元素的完整部份 (完整樹狀圖包含根節點) ,或僅包含該目標的子元素 (樹狀分支部份) 。
狀態 推薦的
資料類型 teidata.enumerated
合法的值是:
root
由屬性target所指明、具根節點的樹狀圖彼此連結,每個樹狀圖成為該連結所產生之虛擬元素的子元素。 [預設值]
branches
由屬性target所指明的樹狀圖的子元素成為虛擬元素的子元素 (例如捨去樹狀圖的根節點) 。
俱乐部会员
可包含在於
analysis: cl m phr s span w
figures: cell figure table
nets: graph
spoken: u writing
tagdocs: eg valDesc
textcrit: lem rdg wit witDetail
verse: metSym rhyme
可包含
例子
<sp>
 <speaker></speaker>
 <p>怎麼樣了?<q>
   <l xml:id="zh-tw_frog_x1">呱、呱、呱</l>
   <l xml:id="zh-tw_frog_l2">有新來的青蛙</l>
   <l>...</l>
  </q>
 </p>
</sp>
<sp>
 <speaker>路易</speaker>
 <p>
  <q>
   <l xml:id="zh-tw_frog_l1">以前的池塘</l>
   <l>...</l>
  </q>
 </p>
</sp>
<sp>
 <speaker>迪威</speaker>
 <p>
  <q>... <l xml:id="zh-tw_frog_l3">有新的池塘</l>
  </q>
 </p>
 <join target="#zh-tw_frog_l1 #zh-tw_frog_l2 #zh-tw_frog_l3"
  result="lgscope="root"/>

</sp>
例子
<p>台灣譯為<list xml:id="zh-tw_LP1">
  <item>
   <s>艾蜜莉的異想世界</s>
  </item>
 </list> ;香港譯作<list xml:id="zh-tw_LP2">
  <item>
   <s>天使愛美麗</s>
  </item>
 </list></p>
<p>中國大陸則名為<list xml:id="zh-tw_LP3">
  <item>
   <s>阿梅麗的奇妙命運</s>
  </item>
 </list></p>
<join result="listxml:id="zh-tw_LST1"
 target="#zh-tw_LP1 #zh-tw_LP2 #zh-tw_LP3scope="branches">

 <desc>電影Le Fabuleux Destin d'Amélie Poulain的中港台譯名</desc>
</join>
Schematron

<s:assert test="contains(@target,' ')">You must supply at least two values for @target on <s:name/>
</s:assert>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
宣告
<rng:element name="join">
 <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.pointing.attributes"/>
 <rng:ref name="att.typed.attributes"/>
 <rng:optional>
  <rng:attribute name="result">
   <rng:ref name="teidata.name"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="scope"
   a:defaultValue="root">

   <rng:choice>
    <rng:value>root</rng:value>
    <rng:value>branches</rng:value>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:zeroOrMore>
  <rng:choice>
   <rng:ref name="model.descLike"/>
   <rng:ref name="model.certLike"/>
  </rng:choice>
 </rng:zeroOrMore>
</rng:element>
element join
{
   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.pointing.attributes,
   att.typed.attributes,
   attribute result { teidata.name }?,
   attribute scope { "root" | "branches" }?,
   ( model.descLike | model.certLike )*
}