[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Namespaces and XML Schema validation

  • To: <xml-dev@l...>
  • Subject: Namespaces and XML Schema validation
  • From: Peter Bergström <peter.bergstrom@e...>
  • Date: Tue, 19 Nov 2002 09:34:42 +0100
  • Importance: Normal

schema validation nonamespaceschemalocation
I have trouble understanding how to use namespaces with XML Schema, without
loosing the control of the overall xml document structure. In order to
understand the problem better I have formulated a few simple "problems"
which I hope somebody would help me find possible solutions for.

I understand that in a schema, I cannot define elements from more than one
namespace, but I can include elements from other namespaces. (I also know
that I can create new elements of a type which is defined in another
namespace. However, this does not solve my base problem, I think, since I
want to make the different namespaces visible in the XML document through
use of prefixes.)

My problem originated in a work with RDF/XML, which seems to require its own
namespace prefix and the exact local name corresponding to the RDF term. I
tried to use RDF/XML with traditional documents (encoding the document
metadata as RDF/XML), but I find this a more general problem than that. For
example, when working with file transfer between application inside a
company, or between companies, I would like to have control over the
structure of the exchange file through one single XML Schema, or through a
number of "interlinked" (?) XML Schemas, if necessary.


PROBLEM 1

Can I validate an XML document containing elements from different namespaces
against either
a) one XML Schema
b) several XML schema

What would the schema a.xsd look like in the example below? I would like to
have the different namespaces visible through different prefixes, as in the
example, and I would like to preserve the local names given in the original
namespace. If it helps, I could accept using a namespace (preferably
default) for all elements in the schema a.xsd.

I am also interested in solutions to example documents which are very
similar to mine, but don't alter the internal relationship between the
presented elements, e.g. containing more "container elements" or such.

Example document:
<?xml version="1.0">
<a1 xsi:noNamespaceSchemaLocation="a.xsd"
    xmlns:b="http:\\example.org\b\"
    xmlns:c="http:\\example.org\c\">
  <b:b1>This is element B1 from namespace B</b:b1>
  <a2>This is the second element from schema a</a2>
  <c:c1>This element is from namespace c</c:c1>
</a1>




PROBLEM 2

Can I nest the namespaces in such an XML document, so that elements from one
namespace contains elements from other namespaces, and still validate my XML
document against one or several XML Schemas?

Example document:
<?xml version="1.0">
<a1 xsi:noNamespaceSchemaLocation="a.xsd"
    xmlns:b="http:\\example.org\b\"
    xmlns:c="http:\\example.org\c\">
  <b:b2>
    <b:b1>This is element B1 from namespace B</b:b1>
    <c:c1>This element is from namespace c</c:c1>
  </b:b2>
</a1>




PROBLEM 3

Can elements from one namespace occur several times in a hierarchy where
elements from other namespaces occur as fathers, i.e. true nesting, and
still validate my XML document against one or several XML Schemas? And how
would the XML Schemas that defines those namespaces look like?

Example document:
<?xml version="1.0">
<a1 xsi:noNamespaceSchemaLocation="a.xsd"
    xmlns:b="http:\\example.org\b\"
    xmlns:c="http:\\example.org\c\">
  <b:b2>
    <b:b1>This is element B1 from namespace B.</b:b1>
    <a2>This is the second element from schema a</a2>
    <c:c2>
      <c:c1>This element is from namespace c</c:c1>
      <b:b1>This is element B1 from namespace B.</b:b1>
    </c:c2>
  </b:b2>
</a1>




PROBLEM 4

Can I, using the example from my problem 3, enforce (through validation)
that instances are created with exactly those elements, occuring just one
time each, with one single XML Schema?

If not, what degree of enforcement can I achieve with one single XML schema?
and with several?



Thanks a lot, anyone, for helping me find references or solutions for the
above!
Peter
--
Peter Bergstrom
Eurostep AB
Vasagatan 38
SE-111 20 Stockholm
Sweden

mobile phone:    +46 708 111 966
mobile fax:      +46 708 111 965
home office fax: +46 470 711 930

http://www.eurostep.com/
Open solutions for open organisations and people



PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.