Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


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

From: "Chiusano Joseph" <chiusano_joseph@---.--->
To: "Fraser Goffin" <goffinf@-------.--->, <xml-dev@-----.---.--->
Date: 9/5/2005 2:20:00 PM
Title: [xml-dev] Access to elements from schema imported once removed !






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@h...]
Sent: Mon 9/5/2005 10:03 AM
To: 
xml-dev@l...
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,
XMLSpy">XMLSpy 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>


transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent