[
Lists Home |
Date Index |
Thread Index
]
Mike Fitzgerald wrote:
> Bob Foster wrote:
> > From: "Mike Fitzgerald"
> > Also, RELAX NG lacks the precise occurrence restraints of XML
> > Schema that is, no minOccurs/maxOccurs. RNG supports only the common RE
> > or DTD constraints ? * + as <optional>, <zeroOrMore>, and <oneOrMore>.
> >
> > Yes, but that's just shorthand; it doesn't add any additional capability.
>
> In some respects, it is shorthand, e.g.:
>
> ? is <optional> is minOccurs="0" maxOccurs="1"
>
> but you can't say a min of 9 occurrences with a max of 12 in RELAX NG; you
> can in XML Schema with minOccurs="9"/maxOccurs="12". However, M-N
> constraints are on the official docket for RELAX NG as a separate spec.
What are the real-world use cases of minOccurs and maxOccurs?
In my experience, occurrence constraints specifying anything
other than zero, one, or many are almost always an indication
of a bad design decision somewhere in the system.
(Or maybe that *is* the use case? To be able to accurately
describe badly normalized legacy RDBMSs and other such things?)
--Joe English
jenglish@flightlab.com
|