Next Up Previous Contents
Next: C.1.27 Element draftnote
Up: C.1 Element listing
Previous: C.1.25 Element docnumber
[ID index][Keyword index]

C.1.26 Element docxref

C.1.26.1 Description

Make a cross-reference to another Starlink document. Example:

<!DOCTYPE sun PUBLIC "-//Starlink//DTD Starlink SUN//EN" [
  <!ENTITY otherdoc PUBLIC "-//Starlink//DOCUMENT Summary SUN/123//EN" SUBDOC>
]>
...
<p>See also <docxref doc=otherdoc />, particularly
the <docxref doc=otherdoc loc=vimport>warning</docxref>
notes there.

Exactly as with the ref element, you can give the element no content, in which case the generated text will be of the form `SUN/XXX', or `SUN/XXX: section nnn'. That is, the generated texts should be grammatically consistent with each other. Note, however, that this mechanism for generating text is intended to be a shorthand, with pretensions to no more than being correct most of the time; sometimes you will need to help it out.

This element is designed to work with summary documents, which express the structure of the target document, and list the valid potential targets; this design means that you can't accidentally refer to a document, or a section, which doesn't exist, only to have your links break later. There is a maintenance problem, however, in distributing accurate document summaries, which has been deemed awkward enough that no such summaries are being distributed in the initial version of the Starlink SGML kit.

Instead, you can simply rely on the kit's fallback method of determining links for docxref elements. If the public identifier supplied to the element is of the form of the example above, so that the last word in the `description' part of the public identifier is of the form XXX/NNN (for example, SUN/123), then the document will make a link to the corresponding document at the central Starlink document server. If you also supply a `loc' attribute, the system will add that to the end of the generated URL.

If you want to make linking within your document more robust, you can generate document summaries yourself. Try experimenting with the script in $STARLINK_SGML_DIR/lib/htx2summ.pl to convert a current LaTeX-based Starlink document, and its HTX files, into a document summary file. This should become easier, or even automatic, in future.

C.1.26.2 Parents

attribution, cite, code, dt, em, entry, foreign, kbd, line, p, px, quote, span, strong, verbatim

C.1.26.3 Content

( #pcdata | em | strong | quote | code | kbd | cite | m | angle | foreign) *

docxref
 |_(#PCDATA |
 |__em |
 |__strong |
 |__quote |
 |__code |
 |__kbd |
 |__cite |
 |__m |
 |__angle |
 |__foreign)*

C.1.26.4 Attribute docxref/valueref

C.1.26.5 Attribute docxref/rflocsrc

C.1.26.6 Attribute docxref/hynames

C.1.26.7 Attribute docxref/loctype

C.1.26.8 Attribute docxref/text

At one time, the link text could be specified via the `text' attribute. This is now strongly deprecated in favour of specifying it via docxref element content, and this attribute is likely to disappear without further warning.

C.1.26.9 Attribute docxref/loc

Indicates a location within a document. The value of the loc attribute is an ID reference within the target document.

C.1.26.10 Attribute docxref/hytime

C.1.26.11 Attribute docxref/doc

Indicates the document we wish to link to. The value of this attribute is an entity (declared in the document declaration subset), which references another document.

C.1.26.12 Attribute docxref/ref-title


Next Up Previous Contents
Next: C.1.27 Element draftnote
Up: C.1 Element listing
Previous: C.1.25 Element docnumber
[ID index][Keyword index]
The Starlink SGML Set
Starlink System Note 70
Norman Gray, Mark Taylor
21 April 1999. Release DR-0.7-13. Last updated 24 August 2001