[
Lists Home |
Date Index |
Thread Index
]
W. Hugh Chatfield I.S.P. scripsit:
> <!ELEMENT CompanyProfile ( Profile? | Promotion?)>
>
> each element is optional, will occur at most once, and any order
> is allowed.
In fact that permits a Profile, a Promotion, or neither, but does not
permit both. In order to permit both, you cannot write:
(Profile? Promotion? | Promotion? Profile?)
as you can in RELAX NG, due to the DTD unambiguity rule. You must write
something like:
(Promotion Profile? | Profile Promotion?)?
It's questionable, however, whether you want to allow this degree of
flexibility. It does little or nothing for XML creators, and makes
the way of XML receivers more difficult than necessary. Since there is
probably no semantic difference between a Profile followed by a Promotion
and a Promotion followed by a Profile, you might as well pick a fixed
order and stick to it, leading to the content model:
(Promotion? Profile?)
--
Henry S. Thompson said, / "Syntactic, structural, John Cowan
Value constraints we / Express on the fly." cowan@ccil.org
Simon St. Laurent: "Your / Incomprehensible http://www.reutershealth.com
Abracadabralike / schemas must die!" http://www.ccil.org/~cowan
|