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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: DOCTYPE used in an XML Schema

[ Lists Home | Date Index | Thread Index ]

Well, strictly speaking, XMLSchema.dtd is extended with the namespace declarations for XML encryption and XML signature in the internal subset.  This is hardly to ensure the integrity of the schema--not according to the recommendation at least--because if you're using XML Schema, a DTD isn't normative. Other mechanisms should be used.
 
As to pointing out a valid URL for the schema, you'd normally use a catalog file to map the PUBLIC id to your local system. If memory serves, the Microsoft parser doesn't know what a catalog file is, however, so if you really want to use DTDs to validate schemas, you'll probably have to change the SYSTEM id anyway... Microsoft doesn't like DTDs.
 
Best,
 
/Ari
-----Original Message-----
From: Delmerico, James [mailto:James.Delmerico@ips-sendero.com]
Sent: 04 December 2003 21:00
To: xml-dev@lists.xml.org
Subject: DOCTYPE used in an XML Schema

Can someone explain why some XML Schemas include a DTD definition similar to the following?  Is this to ensure the integrity of the schema itself?

 

<!DOCTYPE schema PUBLIC "-//W3C//DTD XMLSchema 200102//EN"

 "http://www.w3.org/2001/XMLSchema.dtd" [

            <!ATTLIST schema

            xmlns:xenc CDATA #FIXED "http://www.w3.org/2001/04/xmlenc#"

                        xmlns:ds CDATA #FIXED "http://www.w3.org/2000/09/xmldsig#"

> 

            <!ENTITY xenc 'http://www.w3.org/2001/04/xmlenc#'>

            <!ENTITY % p ''>

            <!ENTITY % s ''>

]>

 

The issue for us is that when validating the schema containing this declaration, the validating software (VS.NET in this case) downloads the XMLSchema.dtd and if the validating computer doesn’t have access to this URL fails.  Given that an XML Schema parser is a software implementation of XMLSchema itself isn’t this superfluous?

 

What is the best practice in a situation like this?  Should I have a local copy of the dtd and change the schema?

 

Thanks for any enlightenment here.





 

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

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