Print

Print


>
> In reading guidelines 12. Dictionaries it is not clear whether tag <gloss>
> can give a link to the target term. If yes, then how, please kindly
> provide syntax.

> <term>Thunderstorm</term>
>
> <def>Storm in which thunder is heard; caused by decreases in <gloss>upper
> air temperatures</gloss> being abnormal. This vertical instability causes
> large cloud formations, with correspondingly large electrical
> charges.</def>
>

This query and example calls for a two-part response, the first addressed to
what you are apparently asking, the second to my interpretation of what you
probably want to know.


(1) The mechanism for associating a <gloss> with the <term> to which it
applies is ID-IDREF(S). I say "associating" rather than "linking" because
the latter implies to some people the generation of a link that the user can
follow; but the conversion of an association into a link in that sense is a
processing/rendering issue, not a markup one.

The Guidelines give a clear enough example of how term-gloss association
works:
==========
We may define <term id="tdpv" rend="sc">discoursal point of view</term>
as <gloss target="tdpv">the relationship, expressed through discourse
structure, between the implied author or some other addresser,
and the fiction.</gloss>
==========

(2) In fact that isn't what you are seem to be asking, because your example
suggests you are not actually talking about a gloss-to-term relationship at
all. What you show seems more like an instance of a cross reference from
within the definition of one term to the definition for another term. For
that, under P4, the element that seems to suit your needs  is <xr> with a
<ref> child.  <xr> encloses the whole cross-referencing phrase (including
any parts of it that are outside the specification of the target proper, not
present in your example unless in a fit of extreme purism we put the
pluralising "s" into that category,  but phrases like "see also" commonly
found in such instances would belong here); <ref> encloses the actual cross
reference and can bear a target attribute whose value is typed as IDREFS. So
in general, to make one cross reference point to more than one target: the
id of each target is added to the value list of the target attribute on the
<ref> element. The Guidelines give a clear enough example of that also. As
before, how you turn that IDREFS list into something appropriate for an
interactive user interface is a processing issue, independent of the markup.

But your case seems to imply that you don't actually want to make the cross
reference in its entirety point to two terms, but rather that your cross
referencing string in itself contains a structure, with the string in its
entirety pointing to one term, and a substring of it pointing to another. I
don't think the Guidelines give an appropriate example of that, but the DTD
does indeed allow it, because <ref> can nest to arbitrary depth.  Assuming
that you do have two independent IDs to point to, you would need something
like this (I am not seriously proposing these actual ID values as
appropriate, they are for illustration only).

<term id="at">Air Temperature></term>
<def> ... </def>

[...]
<term id = "uat"><Upper Air Temperature</term>
 <def> ... </def>
[...]

<term id = "ts">Thunderstorm</term>
<def>Storm in which thunder is heard; caused by decreases in
<xr><ref target="uat">upper <ref target="at">air
temperatures</ref></ref></xr>
being abnormal. This vertical instability causes  large cloud formations,
with
correspondingly large electrical  charges.</def>


Michael Beddow