XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: [xml-dev] increment pattern for an attribute..



I use W3C XML schema language 1.0.

--- Michael Kay <mike@saxonica.com> wrote:

> You don't say what technology you are using to
> define the schema. But let's
> assume it's XSDL 1.1 with assertions (and with no
> limits on the XPath syntax
> allowed in assertions) - as implemented in Saxon
> 9.0.
> 
> Then I think you can do it with
> 
> <xs:complexType name="type-of-data-element">
>   ...
>   <xs:assert test="e1[1]/@val=20 and 
>   every $e in e1[position()>1] satisfies $e/@val =
> $e/preceding-sibling::e1/@val + 1"/>
> </xs:complexType>
> 
> I'm not sure this is quite right according to your
> description - perhaps you
> allow gaps in the numbering sequence. In that case
> it's:
> 
> <xs:assert test="e1[1]/@val=20 and 
> every $e in e1[position()>1] satisfies $e/+@val >
> $e/preceding-sibling::e1/+@val"/>
> 
> (The odd little "+" signs are a quirky way of
> forcing conversion to a number
> in XPath 2.0)
> 
> Give it a try and let us know if it works.
> 
> Michael Kay
> http://www.saxonica.com/
> 
> > 	
> > I need to define the schema for "val" attribute in
> the below XML:
> > 
> > <data term="EXP">
> > <el val="20">
> > <ch> some data </ch>
> > </el>
> > <el val="21">
> > <ch> some data </ch>
> > </el>
> > .....similarly for val=22,23,24,....N
> > </data>
> > 
> > <data term="SUPP">
> > <el val="20">
> > <ch> some data </ch>
> > </el>
> > <el val="21">
> > <ch> some data </ch>
> > </el>
> > .....similarly for val=22,23,24,....N
> > </data>
> > 
> > Here, am more interested in the "val" attribute of
> "el" 
> > element. What is the Specific schema for "val"
> > attribute which satisfies the following
> conditions:
> > 1. allowed values for "val" are 20,21,22,..... N
> (no limit on 
> > N although it's typically < 100.) 2. "val" always
> begins with 
> > 20 in each "data" element scope.
> > 3. "val" must be in ascending order
> (20,21,22...etc) 4. "val" 
> > must be unique in each "data" element scope.
> > 
> > appreciate any pointers.
> > +D
> > 
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam?  Yahoo! Mail has the best spam
> protection 
> > around http://mail.yahoo.com 
> > 
> >
>
______________________________________________________________
> > _________
> > 
> > XML-DEV is a publicly archived, unmoderated list
> hosted by 
> > OASIS to support XML implementation and
> development. To 
> > minimize spam in the archives, you must subscribe
> before posting.
> > 
> > [Un]Subscribe/change address:
> http://www.oasis-open.org/mlmanage/
> > Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
> > subscribe: xml-dev-subscribe@lists.xml.org List
> archive: 
> > http://lists.xml.org/archives/xml-dev/
> > List Guidelines:
> http://www.oasis-open.org/maillists/guidelines.php
> > 
> 
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


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

Copyright 1993-2007 XML.org. This site is hosted by OASIS