<join>

<join> (Liaison) identifie un segment de texte, qui peut être fragmenté, en pointant vers les éléments éventuellement dispersés qui le composent. 16.7 Aggregation
Modulelinking — 16 Linking, Segmentation, and Alignment
Attributs att.pointing (@type, @evaluate)
targetsspécifie les identifiants des éléments ou des passages qui doivent être réunis dans un élément virtuel.
Statut Requis
Type de données 2–∞ occurrences of
data.pointer
séparé par un espace
Valeurs two or more pointers (URIs), separated by whitespace
resultspécifie le nom d'un élément que cette agrégation semble représenter.
Statut Optionel
Type de données
data.name
Valeurs The generic identifier of an element in the current DTD.
scopeindique si les cibles à réunir incluent l'intégralité de l'élément indiqué (le sous-arbre entier y compris sa racine) ou seulement les enfants de la cible (les branches du sous-arbre).
Statut Recommendé
Les valeurs autorisées sont:
root
the rooted subtrees indicated by the targets attribute are joined, each subtree become a child of the virtual element created by the join [Valeur par défaut]
branches
the children of the subtrees indicated by the targets attribute become the children of the virtual element (i.e. the roots of the subtrees are discarded)
Utilisé parjoinGrp model.global.meta
Peut contenir
core: desc gloss
tagdocs: altIdent equiv
Declaration
element join
{
   att.global.attributes,
   att.pointing.attributes,
   attribute targets { list { data.pointer, data.pointer+ } },
   attribute result { data.name }?,
   attribute scope { "root" | "branches" }?,
   model.glossLike*
}
Exemple

The following example is discussed in section 16.7 Aggregation:

<sp>
 <speaker>Hughie</speaker>
 <p>How does it go?
 <q>
   <l xml:id="frog_x1">da-da-da</l>
   <l xml:id="frog_l2">gets a new frog</l>
   <l>...</l>
  </q>
 </p>
</sp>
<sp>
 <speaker>Louie</speaker>
 <p>
  <q>
   <l xml:id="frog_l1">When the old pond</l>
   <l>...</l>
  </q>
 </p>
</sp>
<sp>
 <speaker>Dewey</speaker>
 <p>
  <q>...
  <l xml:id="frog_l3">It's a new pond.</l>
  </q>
 </p>
 <join targets="#frog_l1 #frog_l2 #frog_l3result="lgscope="root"/>
</sp>

The <join> element here identifies a linegroup (<lg>) comprising the three lines indicated by the targets attribute. The value root for the scope attribute indicates that the resulting virtual element contains the three <l> elements linked to at #frog_l1 #frog_l2 #frog_l3, rather than their character data content.

Exemple

In this example, the attribute scope is specified with the value of branches to indicate that the virtual list being constructed is to be made by taking the lists indicated by the targets attribute of the <join> element, discarding the <list> tags which enclose them, and combining the items contained within the lists into a single virtual list:

<p>Southern dialect (my own variety, at least) has only
<list xml:id="LP1">
  <item>
   <s>I done gone</s>
  </item>
  <item>
   <s>I done went</s>
  </item>
 </list> whereas Negro Non-Standard basilect has both these and
<list xml:id="LP2">
  <item>
   <s>I done go</s>
  </item>
 </list>.</p>
<p>White Southern dialect also has
<list xml:id="LP3">
  <item>
   <s>I've done gone</s>
  </item>
  <item>
   <s>I've done went</s>
  </item>
 </list> which, when they occur in Negro dialect, should probably
be considered as borrowings from other varieties of
English.</p>
<join
  result="list"
  xml:id="LST1"
  targets="#LP1 #LP2 #LP3"
  scope="branches">

 <desc>Sample sentences in Southern speech</desc>
</join>