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

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

xml:lang namespace problem



Please help!

I'm trying to use Xerces-J CVS (2.0 beta 3 beyond) version to
validate the xml:lang namespace, but got the following error:

[Error] test.xml:38:25: cvc-complex-type.3.2.2: Attrib
ute 'xml:lang' is not valid respect to the attribute wildcard of
Elment 'FreeText'.

Is my example incorrect or is something else?  Can anyone help?
I'm enclosing the .xsd and .xml at the bottom.

Thanks!

--Wo

--------------- test.xsd ---------------
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:mpeg:mpeg7:schema:2001"
   xmlns="http://www.w3.org/2001/XMLSchema";
   xmlns:xml="http://www.w3.org/XML/1998/namespace";
   xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001"
     elementFormDefault="qualified" attributeFormDefault="unqualified">

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

<element name="Root">
<complexType>
<sequence>
<element name="FreeText"
type="mpeg7:TextualType" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>

<complexType name="TextualBaseType" abstract="true">
<simpleContent>
<extension base="string">
<attribute ref="xml:lang" use="optional"/>
<!-- omitted for simplicity
<attribute name="phoneticTranscription"
use="optional">
<simpleType>
<list
itemType="mpeg7:PhoneType"/>
</simpleType>
</attribute>
<attribute name="phoneticAlphabet"
type="mpeg7:phoneticAlphabetType" use="optional" default="sampa"/>
-->
</extension>
</simpleContent>
</complexType>
<!-- Definition of Textual datatype -->
<complexType name="TextualType">
<simpleContent>
<extension base="mpeg7:TextualBaseType"/>
</simpleContent>
</complexType>
</schema>

------------ xml-1998.xsd -----------
<?xml version="1.0"?>
<schema targetNamespace="http://www.w3.org/XML/1998/namespace";
xmlns="http://www.w3.org/2001/XMLSchema";
xmlns:x="http://www.w3.org/XML/1998/namespace";>
<annotation>
<documentation>This schema defines attributes and an attribute
group
        suitable for use by
        schemas wishing to allow xml:lang or xml:space attributes
        on elements they define.

        To enable this, such a schema must first declare the XML
        namespace, and then import this schema
        for the XML namespace, e.g. as follows:
        &lt;schema . . . xmlns:xml="http://www.w3.org/XML/1998/namespace";>
         . . .
         &lt;import namespace="http://www.w3.org/XML/1998/namespace";
                    schemaLocation="http://www.w3.org/XML/2000/10/xml.xsd"/>

        Subsequently, qualified reference to either of the attributes
        or the group defined below will have the desired effect, e.g.

        &lt;type . . .>
         . . .
         &lt;attributeGroup ref="xml:specialAttrs"/>

         will define a type which will schema-validate a instance
         element with both xml:space and xml:lang attribute</documentation>
</annotation>
<attribute name="lang" type="language">
<annotation>
<documentation>In due course, we should install the
relevant ISO 2- and 3-letter
         codes as the enumerated possible values . . .</documentation>
</annotation>
</attribute>
<attribute name="space" default="preserve">
<simpleType>
<restriction base="NCName">
<enumeration value="default"/>
<enumeration value="preserve"/>
</restriction>
</simpleType>
</attribute>
<attributeGroup name="specialAttrs">
<attribute ref="x:lang"/>
<attribute ref="x:space"/>
</attributeGroup>
</schema>

------------ test.xml ---------------
<?xml version="1.0" encoding="iso-8859-1"?>
<Root xmlns="urn:mpeg:mpeg7:schema:2001"
      xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001"
      xmlns:xml="http://www.w3.org/XML/1998/namespace";
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
      xsi:schemaLocation="urn:mpeg:mpeg7:schema:2001 test.xsd">
<FreeText xml:lang="us">Hello world!!</FreeText>
<FreeText xml:lang="jp">Sekai yo Kon-nichiwa!!</FreeText>
</Root>