OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: Extending DTDs for Backward Compatibility

[ Lists Home | Date Index | Thread Index ]
  • From: Marcus Carr <mrc@allette.com.au>
  • To: xml-dev@ic.ac.uk
  • Date: Fri, 30 Jan 1998 14:40:04 +1100

Joe Lapp wrote:

> I need to create DTDs that are extensible.  An application knowing the
> semantics behind an old DTD may be handed an XML document written with an
> extended DTD.  The old application should be able to function with the extended
> document by ignoring the extensions.  I need advice on the best way to go about
> creating the initial DTD (and subsequent DTDs, should their designs also be a
> factor).
>
> There are different ways in which I might want to extend the initial DTD. One
> way would be to add attributes or change default attribute values. This seems
> easy to accomplish because XML allows one element to have multiple attribute
> declarations, where attribute declarations are merged. However, it is not clear
> to me how to best accomodate new element types that might be added.

When we designed the CALS initiative in Australia, we created a core DTD and
about 27 satellite DTDs. The core was riddled with parameter entities - in fact
everything that you may want to remap used an entity. Variant DTDs were nothing
more than parameter entities mapping out the differences between the core
structure and the desired structure, then a parameter entity calling in the core
file. Because the first parameter entity is regarded and any subsequent
identically named entities are ignored, the remapped value stuck. For
distribution, we wrote a simple program to expand out most of the entities,
making the DTD readable as well as producing an extensively linked electronic
format.

This approach worked well - changes could be considered as local or global. If
they were global, change the core, otherwise change the satellite. It ensured
that elements meant fundamentally the same thing, but allowed the structural
flexibility that disparate branches of the military require.


--
Regards

Marcus Carr                  email:  mrc@allette.com.au
_______________________________________________________________
Allette Systems (Australia)  email:  info@allette.com.au
Level 10, 91 York Street     www:    http://www.allette.com.au
Sydney 2000 NSW Australia    phone:  +61 2 9262 4777
                             fax:    +61 2 9262 4774
_______________________________________________________________


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS