By editing them?
XML documents have no inherent nesting limit (although there will always be
a practical limit imposed by your processing software).
If a document does not have an explicit DTD, then, by definition, you are
free to change it at will, because it defines its rules by its own content.
If a document does have an explicit DTD, they, by definition, you are free
to change it at will because the DTD is a property of the document--the
document defines its own rules by declaring them in *its* DTD. If the DTD
is an external DTD subset that you don't have write access to, just copy it
into the internal subset and go on your way. [Hint to ADEPT*Editor users:
try the command 'dtgen' from the ADEPT command line if someone has tried to
impose a "standard" DTD on you.]
You can also create taxonomies using references or hyperlinks, e.g.,:
<?XML version="1.0" ?>
<!-- kimberpets.xml -->
<!DOCTYPE Pets [ 
 <!NOTATION XPointer 
   PUBLIC "+//IDN w3.org//NOTATION XML eXtended Pointer Language//EN" >
 <!ATTLIST housecat 
    is-a
      CDATA
      #FIXED "./taxonomy.xml#id(feline)"
    loctype
      CDATA
      #FIXED "is-a queryloc XPointer"
 >
 <!ATTLIST dog 
    is-a
      CDATA
      #FIXED "./taxonomy.xml#id(canine)"
    loctype
      CDATA
      #FIXED "is-a queryloc XPointer"
 >
 <!-- NOTE: loctype is defined by the HyTime "reference location
            address" facility, clause 7.9 of ISO/IEC 10744:1997,
            http://www.ornl.gov/sgml/wg4/docs/n1920/html/clause-7.8.html
   -->
]>
<Pets>
<housecat>
  <name>Seigfried Woods</name>
</housecat>
<housecat>
  <name>Bete Noir Woods</name>
</housecat>
<dog>
  <name>Forrest Woods</name>
</Pets>  
<!-- taxonomy.xml -->
<?XML version="1.0" ?>
<!DOCTYPE taxonomy [
  <!ATTLIST family
     ID
       ID
       #REQUIRED
  >
]>
<taxonomy><!-- NOTE: I don't know the right terms here, please forgive
                     my ignorance in this matter.-WEK -->
 <family id="feline">A catish thing</genus>
 <family id="canine">A dogish thing</genus>
</taxonomy>
This could also be done with extended links:
<?XML version="1.0" ?>
<taxonmic-web>
 <extended role="is-a">
  <locator 
   role="pet" 
   href="./kimberpets.xml#child(1,housecat)"/>
  <locator
   role="family"
   href="./taxonomy.xml#id(feline)"
  />
 </extended>
 <extended role="is-a">
  <locator 
   role="pet" 
   href="./kimberpets.xml#child(2,housecat)"/>
  <locator
   role="family"
   href="./taxonomy.xml#id(feline)"
  />
 </extended>
 <extended role="is-a">
  <locator 
   role="pet" 
   href="./kimberpets.xml#child(1,dog)"/>
  <locator
   role="family"
   href="./taxonomy.xml#id(canine)"
  />
 </extended>
Cheers,
Eliot
-- <Address HyTime=bibloc> W. Eliot Kimber, Senior Consulting SGML Engineer Highland Consulting, a division of ISOGEN International Corp. 2200 N. Lamar St., Suite 230, Dallas, TX 95202. 214.953.0004 www.isogen.com </Address>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)