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 ]

I do not see any problem in the schemas, Xerces 2.7.1 validates the 
instance document without problems.
Note that xs:element/@name value is a non qualified name so it does not 
require a default namespace and it is not allowed to specify a prefix; 
the global elements belong to the schema target namespace.

Best Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


Chiusano Joseph wrote:
>  From a quick glance, in your "imported schema", element "globalElement 
> is not in the "urn:foo" namespace because it does not have a namespace 
> prefix, and you have not specified a default namespace for that schema. 
> If you add a default namespace declaration to the imported schema that 
> makes the "urn:foo" namespace your default namespace, it should work.
> 
> Joe Chiusano
> 
> ------------------------------------------------------------------------
> 
> *From:* Fraser Goffin [mailto:goffinf@hotmail.com]
> *Sent:* Mon 9/5/2005 10:03 AM
> *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