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


Andrew Dubinsky scripsit:

> 	Message  : The content model must be deterministic. Multiple
> definition of element 'DATA' causes content model to become ambiguous.
> An error occurred at smartdoc_V_1_0.dtd(42, 75).
> 
> 42: <!ELEMENT SMARTDOC (HEADER, ((DATA, VIEW*) | (DATA?, VIEW+)),
> SIGNATURES?)>

Now this one is definitely a problem.  In parsing SMARTDOC content, a
HEADER child element is required, but if DATA comes next it is not
immediately clear whether this is a required DATA with optional VIEWs
following, or an optional DATA with required VIEWs following.
DTDs can't cope with choices of this sort.  This declaration has to be
loosened to:

	<!ELEMENT SMARTDOC (HEADER, DATA?, VIEW*, SIGNATURES?)>

and let application code worry about a SMARTDOC with neither DATA nor
VIEW.  There may be a better fix, but some fix is needed: this DTD is
simply not XML.

-- 
John Cowan  jcowan@r...  www.reutershealth.com  www.ccil.org/~cowan
Promises become binding when there is a meeting of the minds and consideration
is exchanged. So it was at King's Bench in common law England; so it was
under the common law in the American colonies; so it was through more than
two centuries of jurisprudence in this country; and so it is today. Assent
may be registered by a signature, a handshake, or a click of a computer
mouse transmitted across the invisible ether of the Internet. Formality
is not a requisite; any sign, symbol or action, or even willful inaction,
as long as it is unequivocally referable to the promise, may create a contract.
       --_Specht v. Netscape_

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