Data attributes (was: Stylesheets considered limiting)

W. Eliot Kimber eliot at dns.isogen.com
Fri Nov 13 21:59:30 GMT 1998


At 01:40 PM 11/13/98 -0500, John Cowan wrote:

> <!ENTITY big-graphic SYSTEM "picture.gif" NDATA gif
>   [ width="640" height="480"]>

Okay.  Since XML cannot have references to unparsed entities*, the
above can be treated as syntactic sugar.  Specifically,

	<GRAPHIC pic="big-graphic"/>

is effectively syntactic sugar for:

	<GRAPHIC pic="big-graphic" gif.width="640" gif.height="480"/>

Not necessarily. What if I have this situation:

<!NOTATION MyQuery PUBLIC "">
<!NOTATION GIF PUBLIC "" >
<!ENTITY mygif SYSTEM [ width="640" height="480" ]>

...
<Query notation="MyQuery" icon="mygif">find something</Query>

Here, the notation of the element governs the query--the graphic it
references is just presentation stuff in this case. So I can't put the
entity's attributes on the element as well--they represent two different
semantic domains, that of the query (represented by the element) and that
of the graphic, represented by the entity.  Without data attributes and the
ability to specify them as part of an entity declaration, I cannot keep
these two domains clearly and unambiguously separate.

>> <!ATTLIST SelectData
>>    notation NOTATION(MyQuery) MyQuery
>>    table CDATA #REQUIRED
>>    select-on CDATA #REQUIRED
>>    where (name|ssnum|phone) #REQUIRED>
>
>In this case, though, the notation attributes seem to blend with
>the regular attributes, and are redeclared in the ATTLIST declaration
>for the element.  What happens in the case of an element type that
>can be governed by alternative notations?

If the attributes are explicitly declared, its attributes have to be the
union of the attributes for all the possible governing notations.  However,
if you only declare the notations and not the attributes (or even the
element type), then there's no redundancy of declaration as long as you
specify the notation.  You can only specify one notation per element
instance (which might be a design bug now that I think about it--I can
thing of cases where the same element might be reasonably governed by
different notations relevant to different processing domains).

One of the things that the notation attributes do is make it clear that a
particular attribute of an element should be (or can be) relevent to the
notation  that governs the element.  

Cheers,

E.
--
<Address HyTime=bibloc>
W. Eliot Kimber, Senior Consulting SGML Engineer
ISOGEN International Corp.
2200 N. Lamar St., Suite 230, Dallas, TX 75202.  214.953.0004
www.isogen.com
</Address>

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list