Content roles in XML

Peter Murray-Rust peter at
Fri Jan 23 22:19:39 GMT 1998

At 15:07 22/01/98 -0500, Jim Amsden wrote:
Thanks for the posting Jim.

Your example raises a second completely independent, rather picky, problem
that is likely to be a common one. (I hope I have it right :-)

><!ATTLIST EventSet
>  %FeatureDescriptor;
>  listenerType CDATA #REQUIRED
>  isInDefaultEventSet (true | false) "false"
>  isUnicast (true | false) "false"

This is incorrect XML and bites almost every newcomer to SGML (and now
XML). For interoperability (see [59] and 3.3.1 Validity Constraint -
Enumeration) you may not have two enumerated attribute values the same,
even though they occur in different attributes. This is because it's
illegal in SGML. (The reason is because in SGML you can arrange to minimise
the typing by leaving out the attribute *names* ).  So you have to rename
them somehow:
	>  isInDefaultEventSet (true | false) "false"
	>  isUnicast (oui | non) "non"
	You might try running your ATTLIST through one or more parsers and seeing
what happens. It is billed as a 'validity constraint', so it would be
interesting to see under what conditions the parsers trap it.


Peter Murray-Rust, Director Virtual School of Molecular Sciences, domestic
net connection
VSMS, Virtual Hyperglossary

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

More information about the Xml-dev mailing list