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] Help Needed to create an XSD

[ Lists Home | Date Index | Thread Index ]

Not to worry, Cyril. The data you get from the third party declares its own a default namespace in the schema instance:

<rptTransmit xmlns="http://www.foo.ca/XMLSchemas "
:
</rptTransmit>

Anne

On 10/4/05, Cyril <cyrilw@technicost.com> wrote:
Thanks Michael and Anne T.

Just to consolidate my understanding about namespaces I think this is where
I was confused.

In my XML Data when there is no namespace prefix in the xml tag (for
<rptTransmit/>), doesn't it use the default namespace? I figured since my
default namespace has no definition of any element called rptTransmit, this
would be invalid.

I saw from your example you use a reference eg ref="foo:rptTransmit" or
ref="i:rptTransmit" with the prefix , should this prefix appear in the XML
Data I am creating ie <foo:rptTransmit> instead of just <rptTransmit>? Or is
the latter valid? I'm having trouble understanding how the parser would know
that the <rptTransmit> is from the external XSD since it has no prefix for
the namespace.

Cyril

-----Original Message-----
From: Michael Kay [mailto:mike@saxonica.com]
Sent: October 4, 2005 2:01 PM
To: 'Cyril'; xml-dev@lists.xml.org
Subject: RE: [xml-dev] Help Needed to create an XSD


>
>
> Now I need to create my own XSD that contains some info in
> addition to the
> XML file I get from the 3rd party. It should look something like this
>
> <myrpt>
> <id>0000</id>
> <status>pending</status>
>
> <rptTransmit xmlns="http://www.foo.ca/XMLSchemas "
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://www.foo.ca/XMLSchemas
> http://www.foo.ca/XMLSchemas/UAT/Transmit.xsd">
> :
> </rptTransmit>
> </myrpt>
>
>
>
> How will I create the XSD schema with the namespace of my
> tags and taking
> into consideration of the 3rd party namespace? Can anyone
> give me a sample
> XSD that will match what I 'd like to achieve
>

Something like this:

<xs:schema>

<xs:import namespace="http://www.foo.ca/XMLSchemas"
        schemaLocation=" http://www.foo.ca/XMLSchemas/UAT/Transmit.xsd"/>

<xs:element name="myrpt">
  <xs:sequence>
    <xs:element name="id"/>
    <xs:element name="status"/>
    <xs:element ref="i:rptTransmit" xmlns:i="http://www.foo.ca/XMLSchemas"/>
  </xs:sequence>
</xs:element>

</xs:schema>

That's just a sketch leaving out all the noise, but I hope you get the idea.

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



-----------------------------------------------------------------
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>



-----------------------------------------------------------------
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