[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Obsolete
When people say "progressive development", everyone who has dealt with legacy data which was allowed uncontrolled development will shudder. Just like everything else with a markup language, the answer will in many cases be simple: the document instance should have a label to clearly indicate which version of the DTD is being used. The simplest way to do this is to put a comment at the top <!-- This uses DTD version 3 --> But that is not available to the program, so is not much use. The next simplest way is to use a DOCTYPE declaration <!DOCTYPE p SYSTEM "www.calfp.co.uk/~nickle/DTD/dtd3" []> Another way is to put an attribute on the root element: <p public-DTD="www.calfp.co.uk/~nickle/DTD/dtd3">...<p> or a fixed attribute <!DOCTYPE p SYSTEM "www.calfp.co.uk/~nickle/DTD/dtd3" [ <!ATTLIST p DTD-version CDATA #FIXED "3.0"> ]> You should not use a namespace for this, probably. There is also, and this is probably best, an ISO standard way to declare it using a processing instruction. I dont have my ISO material at hand, so I shouldnt attempt it. Finally, you can make up your own PI, if you have any doubt. <?calfp-dtd version="3"?> The big trouble is that the DTD in the DOCTYPE declaration can be overridden in the "internal subset" (i.e. the [ ]> bit which follows the DOCTYPE). So the system or the public identifier on the DOCTYPE declaration names an external piece of text, not the document type of that document. So XML is very flexible in this, and does not enforce any discipline--you will have to make sure that every alteration to the total DTD will be reflected in some attribute or markup. If the document is adequately labelled, processing applications can adjust their behaviour accordingly. Rick Jelliffe > -----Original Message----- > From: owner-xml-dev@i... [mailto:owner-xml-dev@i...]On Behalf Of > Nick Leaton > Sent: Tuesday, 23 June 1998 1:56 > To: nickle@c...; XML Dev > Subject: Obsolete > > > What mechanism's are available to make features of DTDs obsolete? > > Or how can one manage the progressive development of a DTD without > invalidating existing data? > > -- > > Nick > > 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/ > To (un)subscribe, mailto:majordomo@i... the following message; > (un)subscribe xml-dev > To subscribe to the digests, mailto:majordomo@i... the > following message; > subscribe xml-dev-digest > List coordinator, Henry Rzepa (mailto:rzepa@i...) > 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/ To (un)subscribe, mailto:majordomo@i... the following message; (un)subscribe 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
|