These pages are now out-of-date

Bookmarks / SGML exegeses / English - Question about architectural forms

[Help] [Root] [Up] [Prev] [Next]

English - Question about architectural forms

Subject: Re: Question about architectural forms
Date: 16 Jun 1996 00:00:00 GMT
From: jenglish@crl.com (Joe English)
Organization: Tagheads
Newsgroups: comp.text.sgml

Ivo Houbrechts  <Ivo.Houbrechts@esat.kuleuven.ac.be> wrote:
>The clink architectural form is declared as:
>
><!ELEMENT      clink           -o (%HyBrid;)*>
><!ATTLIST      clink
>     HyTime    NAME            "clink"
>     id                ID              #IMPLIED
>     linkend   IDREF           #REQUIRED>
>
>In "Making Hypermedia Work" there is an example of a clink in which they
>changed the declared value of the linkend attribute to CDATA:
>
><!ELEMENT      mylink          --(p)*>
><!ATTLIST      mylink
>     linkend   CDATA           #REQUIRED
>     HyTime    NAME            "clink">
>
>So if I understand this well, you may change the declared value of an attribute
>but not its name?

(Note that while it's legal to use a different declared
value in the client DTD, the HyTime engine will still
interpret the attribute as if it had the declared value
prescribed in the HyTime meta-DTD.)

You can also change the name of an attribute with the
"HyNames" architecture control attribute:

    <!ATTLIST mylink
        HyTime  NAME    #FIXED  "clink"
        HyNames NAMES   #FIXED  "linkend refid"
        refid   IDREF   #REQUIRED
    >

Here the HyNames attribute value "linkend refid" instructs the
architecture engine to use the base document type attribute
"REFID" for the value of the architectural attribute "LINKEND".
HyNames can contain as many attribute-substitute pairs as
needed.

--Joe English

  jenglish@crl.com
[Onward]
Norman
1 January 2001