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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] Access to elements from schema imported once removed !

[ Lists Home | Date Index | Thread Index ]

This all validates fine on Saxon-SA.

Michael Kay
http://www.saxonica.com/
 

> -----Original Message-----
> From: Fraser Goffin [mailto:goffinf@hotmail.com] 
> Sent: 05 September 2005 15:03
> To: xml-dev@lists.xml.org
> Subject: [xml-dev] Access to elements from schema imported 
> once removed !
> 
> I have a main transcation schema which INCLUDEs a schema 
> containing a number 
> of type definitions. That schema IMPORTs another schema which 
> contains some 
> global element declarations which are used to extend one of 
> the types in the 
> import'ing schema.
> 
> Transaction schema
>   --> includes base types
>        --> imports global elements
> 
> When an XML instance based on the transaction schema is created that 
> contains a reference to one of the global elements of the 
> imported schema, 
> XML Spy outputs the message :-
> 
> 'Could not validate element <<globalElement>>. No type 
> definition was found'
> 
> If I view the transaction schema, the imported types and elements are 
> clearly visible. Can anyone tell me why the XML is invalid ??
> 
> I have attached a simplified example below :-
> 
> XML Instance Doc
> ===========
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <tns:includedRoot xmlns:tns="urn:bar" 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
> xsi:schemaLocation="urn:bar includingSchema.xsd" xmlns:imp="urn:foo">
>   <fromImported>
>     <root>blah</root>
>     <imp:globalElement>blah</imp:globalElement>
>   </fromImported>
> </tns:includedRoot>
> 
> transaction schema
> ============
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns="urn:bar"
>   targetNamespace="urn:bar"
>   elementFormDefault="unqualified" attributeFormDefault="unqualified">
>   <xs:include schemaLocation="importingSchema.xsd"/>
>     <xs:element name="includedRoot">
>       <xs:complexType>
>         <xs:sequence>
>           <xs:element name="fromImported" type="Extended"/>
>         </xs:sequence>
>       </xs:complexType>
>     </xs:element>
> </xs:schema>
> 
> 
> importing schema
> ===========
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
> elementFormDefault="unqualified"
>    attributeFormDefault="unqualified" xmlns:imp="urn:foo">
>   <xs:import namespace="urn:foo" schemaLocation="importedSchema.xsd"/>
>   <xs:complexType name="myBaseType">
>     <xs:sequence>
>       <xs:element name="root" type="xs:string"/>
>     </xs:sequence>
>   </xs:complexType>
>   <xs:complexType name="Extended">
>     <xs:complexContent>
>       <xs:extension base="myBaseType">
>          <xs:sequence>
>            <xs:element ref="imp:globalElement" minOccurs="0"/>
>          </xs:sequence>
>       </xs:extension>
>     </xs:complexContent>
>   </xs:complexType>
> </xs:schema>
> 
> imported schema
> ==========
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
> elementFormDefault="qualified"
>   attributeFormDefault="qualified" targetNamespace="urn:foo" 
> xmlns="urn:foo">
>   <xs:element name="globalElement" type="xs:string"/>
> </xs:schema>
> 
> 
> 
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> 
> The list archives are at http://lists.xml.org/archives/xml-dev/
> 
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>
> 
> 






 

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

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