Re:Validating XML documents containing xml:*

From
Jack Lindsey <>
To
Date
2005-11-08T03:52:45Z
ID
<>
Thread
Re:Validating XML documents containing xml:*
For the instance files to validate, your schema needs to define where 
xml:* attributes are permitted. 

In order to reference xml:lang, etc., in your schema, you have to import 
the following W3C namespace:

<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>

where the world's most famous attributeGroup is defined:

<xs:attributeGroup name="specialAttrs">
<xs:attribute ref="xml:base"/>
<xs:attribute ref="xml:lang"/>
<xs:attribute ref="xml:space"/>
</xs:attributeGroup>


using the W3C-reserved namespace prefix:  xml

In order for instance files referencing your schema to use xml:lang they 
must include the W3C's xsi namespace but the associated target schema is 
yours, e.g.

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://yourTargetSchema/namespace 
optionally/yourLocalschema.xsd"

What could be simpler?

Also try this list:  <>

Cheers
             Jack Lindsey