[Home] [By Thread] [By Date] [Recent Entries]



Hi,

The problem is, we already have quite many XML (2500)
which we need to validate against any of the validators
that could be DTD , W3 Schemas or RELAX NG.

The only inconsistency in the XMLs is that the order of child
elements are not fixed. The child elements could contain sub
elements themselve.

We initailly tried converting the DTD to a schema and changed all
xs:sequence to xs:all , but still the problem wasn't solved because
maxOccurs cannot be more that 1 for our ELEMENT* of the DTDs.

Regds
Varun.


John Cowan wrote:
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?)

  


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member