|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Create XML
martin@d... (Martin Soukup) writes: >> It is hard to write a DTD with elements which takes a somewhat >> larger number of different child elements in arbitrary order but >> each at most once or exactly once. For me, that's enough to >> introduce an order constraint. > >It's not hard, just ugly: > >(for each child B, C, D at most once) > ><!ELEMENT A >((B)|(C)|(D)|(B,C)|(B,D)|(C,D)|(C,B)|(D,B)|(D,C)|(B,C,D)|(B,D,C)|(C,B, >D)|(C,D,B)|(D,B,C)|(D,C,B)) > > >That said, this is enough to make order constraints required rather >than useful, with 20 children this becomes so tedious the errors are >almost guaranteed. Doesn't that trip over the requirement at: http://www.w3.org/TR/REC-xml#sec-element-content "The content of an element matches a content model if and only if it is possible to trace out a path through the content model, obeying the sequence, choice, and repetition operators and matching each element in the content against an element type in the content model. For compatibility, it is an error if an element in the document can match more than one occurrence of an element type in the content model." Further explanation is at: http://www.w3.org/TR/REC-xml#determinism RELAX NG seems to have these kinds of problems under control, at least for my purposes. -- Simon St.Laurent Ring around the content, a pocket full of brackets Errors, errors, all fall down! http://simonstl.com -- http://monasticxml.org
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








