[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xml-dev
Subject:    Re: [xml-dev] how to make the order of elements in the DTD null n void
From:       John Cowan <cowan () ccil ! org>
Date:       2004-06-22 13:44:25
Message-ID: 20040622134425.GE25504 () ccil ! org
[Download RAW message or body]

Note: Please don't post to Internet mailing lists in HTML.  Plain text
is the way to go.

Varun Suri scripsit:

> 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.

You need to use RELAX NG in that case.  The compact mode of RELAX NG
is very close to DTD style, and should be easy to learn.  See
http://www.relaxng.org for tutorial and reference information, or
pick up the O'Reilly book.

The RELAX NG "interleave" (or "&" in compact syntax) is what you
want: it allows elements to appear just once in any order desired.

-- 
John Cowan      cowan@ccil.org        http://www.ccil.org/~cowan
        Is it not written, "That which is written, is written"?

-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://www.oasis-open.org/mlmanage/index.php>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic