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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Miscellaneous questions

[ Lists Home | Date Index | Thread Index ]
  • From: Didier Perhirin <dperhirin@smtp2.cosmosbay.com>
  • To: "'xmlschema-dev@w3.org'" <xmlschema-dev@w3.org>
  • Date: Tue, 13 Jun 2000 16:06:28 +0200


I'm a newbie in XML Schema definitions, and I have some questions about it.
I'm sorry if the answers are trivial.

1- When we define more than one global element inside a schema, does it 
mean
that an XML instance validated by this schema may have different root 
elements
according to the defined global element.
Concretely, if I declare a schema
<schema>
	<element name="A" type="string"/>
	<element name="B" type="string"/>
</schema>
are both following document instances valid :

<?xml version="1.0"?>
<!-- doc1.xml -->
<A>value</A>

<?xml version="1.0"?>
<!-- doc2.xml -->
<B>value</B>

or, just the first one ?

2-This schema defined below is validated by the W3C xmlschema-check CGI :

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/1999/XMLSchema">
	<xsd:element name="root">
		<xsd:complexType>
			 <xsd:element name="B" type="xsd:string" minOccurs="0"/>
				<xsd:choice>
					<xsd:element name="A" type="xsd:integer"/>
					<xsd:element name="B" type="xsd:integer"/>
				</xsd:choice>
		</xsd:complexType>
	</xsd:element>
</xsd:schema>

but, how can a parser do the difference between the use of the first 
element B and the use  the second element B which is defined into the 
choice group.
I thought this schema was not correct, due to an ambiguity.

3- This question is about targetNamespace and the <import> element

Suppose I have a schema which defined a complexType with a targetNamespace 
imported_schema_ns:

schema imp_schema.xsd:
<xsd:schema targetNamespace="imported_schema_ns">
	<xsd:complexType name="animal">
		<xsd:element name="name" type="xsd:string"/>
	</xsd:complexType>
</xsd:schema>

This schema is imported inside a main schema main_schema.xsd, which have a 
different targetNamespace main_schema_ns:

<xsd:schema targetNamespace="main_schema_ns"
	xmlns:imp="imported_schema_ns">
        <xsd:import namespace="imported_schema_ns"
schemaLocation="imp_schema.xsd"/>
	<xsd:element name="lion" type="imp:animal"/>
</xsd:schema>

Is the following XML document valid:

<x:MainTag xmlns:x="main_schema_ns"
	xsi:schemaLocation="main_schema_ns main_schema.xsd">
	<x:lion><x:name>Elsa</x:name></x:lion>
</x:MainTag>

or is this one better:

<x:MainTag xmlns:x="main_schema_ns"
	xmlns:y="imported_schema_ns"
	xsi:schemaLocation="main_schema_ns main_schema.xsd
				imported_schema_ns imp_schema.xsd">
	<x:lion><y:name>Elsa</y:name></x:lion>
</x:MainTag>

Thanks for the answers,

Regards,

Didier Perhirin
CosmosBay

***************************************************************************
This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@xml.org&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/
***************************************************************************




 

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

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