W3C home > Mailing lists > Public > xmlschema-dev@w3.org > May 2004

RE: Namespaces in Attribute Value..

From: Ashok <ashoksrini@yahoo.com>
Date: Wed, 12 May 2004 20:30:22 -0700 (PDT)
Message-ID: <20040513033022.77548.qmail@web41106.mail.yahoo.com>
To: Michael Kay <mhk@mhk.me.uk>, xmlschema-dev@w3.org


I tried using xs:QName..but I am not getting the
behaviour I wanted.

Here is what I am trying to do..(a little long read!)

Lets take this example schema extract:

<xs:element name="Quantity">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:float">
	<xs:attribute name="Item" type="xs:QName"/>
      </xs:extension>
     </xs:simpleContent>
   </xs:complexType>		
</xs:element>

When I author this using an Schema editor (Stylus
etc), and validate the schema it passes.

Now I change the attribute definition to 

<xs:attribute name="Item" type="abc:ItemType"/>

I validate schema and my schema editor throws the
error:
1 - Prefix: 'abc' can not be resolved to a URI
2 - SimpleType (:ItemType) for attribute: Type not
found

I want to achieve exactly the same kind of behavior as
above in my schema/instance document i.e throw this
kind of error while validating my instance document.

I defined an instance document and associated it with
the above valid schema. The instance document:

<Quantity Item="abc:Gas">234.34</Quantity>

When I validate this document, I DONT get the errors I
expect. I expected:
1- Prefix: 'abc' can not be resolved to a URI
2- SimpleType (:Gas) for attribute: Item not found


Is this possible to achieve using schemas? If so what
am I missing?

Or is it that Schema Editors have special
logic/processing in them to validate XSD's only and
flag those errors?


Thanks



--- Michael Kay <mhk@mhk.me.uk> wrote:
> This is what type xs:QName is for.
> 
> Michael Kay 
> 
> > -----Original Message-----
> > From: xmlschema-dev-request@w3.org 
> > [mailto:xmlschema-dev-request@w3.org] On Behalf Of
> Ashok
> > Sent: 11 May 2004 19:58
> > To: xmlschema-dev@w3.org
> > Subject: Namespaces in Attribute Value..
> > 
> > 
> > Hi..
> > 
> > I want to know how to validate instance documents
> that
> > has an attribute, and the value of the attribute
> is of
> > form "prefix:value".
> > 
> > To explain more clearly...
> > 
> > I have an instance document:
> > 
> > <Documents 
> >    xmlns:dd="http://test.uri.org"
> >   
> >
> xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance"
> >    xsi:schemaLocation="http://test.uri.org
> >                        c:/document.xsd">
> > 
> >    <document doctype="dd:PurchaseOrder"/>
> > 
> > </Documents>
> > 
> > How can I validate this document, such that the
> schema
> > validator checks that value of doctype attribute,
> > "PurchaseOrder" exists in namespace "dd" defined
> in
> > "document.xsd" file? Do I have to define 'doctype'
> > attribute differently in the schema?
> > 
> > This is similar to how we define type attribute in
> > standard XML schema:
> > <xsd:element name="Catalog" type="xsd:string">
> > 
> > Any pointers? 
> > 
> > Thanks
> > 
> > 
> > 	
> > 		
> > __________________________________
> > Do you Yahoo!?
> > Win a $20,000 Career Makeover at Yahoo! HotJobs  
> >
> http://hotjobs.sweepstakes.yahoo.com/careermakeover 
> > 
> > 
> 



	
		
__________________________________
Do you Yahoo!?
Yahoo! Movies - Buy advance tickets for 'Shrek 2'
http://movies.yahoo.com/showtimes/movie?mid=1808405861 
Received on Wednesday, 12 May 2004 23:31:10 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 11 January 2011 00:14:44 GMT