Re: DTD Question - PCDATA followed by an optional element
From: Richard Tobin <richard@c...> >> I have a large number of fields that normally hold simple textual data, but >> might also include a comment. > >You can't constrain the content in that way with a DTD. The best you >do is > > <!ELEMENT rho0 (#PCDATA|comment)*> > >which allows any mixture of comments and text. To get strong typing you either must 1)explicitly label the text section: <!ELEMENT rho0 (text, comment?)> <!ELEMENT text (#PCDATA)> or 2) use some other schema language to validate: use a DTD with Richard's <!ELEMENT rho0 (#PCDATA|comment)*> Then the following Schematron schema to check that only one comment is used (I think this is correct, I haven't run it): <schema><title>Norman's Schema</title> <pattern name="Rho0 Pattern"> <rule context="rho0"> <assert text="count(comment) <= 1" >An rh0 element should have only one comment</assert> </rule> </pattern> </schema> You can download schematron-report, which is an error browser generating HTML pages, from http://www.ascc.net/xml/resource/schematron/schematron.html Rick Jelliffe xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To unsubscribe, mailto:majordomo@i... the following message; unsubscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
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