[Home] [By Thread] [By Date] [Recent Entries]


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.


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member