[
Lists Home |
Date Index |
Thread Index
]
For converting from XSD to RELAX there is a free tool plug-in for Sun's
demonstration software MSV (Multi-schema validator).
By coincidence, my company Topologi will release a utility next week-ish
Topologi XML Schema Evolution Utility that includes a (different) XSD to
RELAX NG (Compact Syntax) converter. Contact me about the price, or see
our website next week or so.
The Open Source Jing library allows various kinds of conversions including
from XSD *to* RELAX NG, but not the other way round.
Cheers
Rick Jelliffe
http://www.topologi.com
Marielou said:
> I´ve had a look at RELAX NG and it certainly does look
> like I can better describe the data required. I have
> suggested it to my boss who never heard of it and so
> not knowing that much about it yet, I need more
> information on how to work with RELAX NG: Does one
> just use the grammar of RELAX NG at urls
> "http://relaxng.org/ns/structure/1.0" and
> datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
> instead of XML Schema at
> "http://www.w3.org/2001/XMLSchema" and
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
> how easy is it to translate an existing XML Schema to
> RELAX NG e.g. are there any tools for this? obviously
> I will need to describe with different syntax the
> aspects which couldn´t really be describe with in XML
> Schema, but can other elements and be quickly
> converted?
>
> thank you!
>
> Marie Louise
>
> --- Eric van der Vlist <vdv@dyomedea.com> wrote:
>
>> Le mercredi 21 juin 2006 à 14:21 +0100, Marielou a
>> écrit :
>> > Funny thing is, the description used to be written
>> in
>> > a DTD, but my boss now wants a schema!
>>
>> Did he tell which one? If not, give him a RELAX NG
>> schema, that will
>> make your life much easier :) ...
>>
>> > When I use <choice> in a schema, I find it works
>> when
>> > all element occurrences are unrestricted,
>>
>> Yes, that's how I understood your requirements in
>> your first mail.
>>
>> > but I have
>> > several child elements to describe each with
>> different
>> > cardinality, all are unrestricted in the order. So
>> I
>> > tried with maxOccurs="unbounded" on the <choice>
>> and a
>> > limit on the elements but I find that the
>> maxOccurs on
>> > the <choice> takes priortiy over element
>> occurrences
>> > so maxOccurs e.g below
>> >
>> > <xs:element name="parentA">
>> > <xs:complexType>
>> > <xs:choice minOccurs="0" maxOccurs="unbounded">
>> > <xs:element ref="childB" minOccurs="1"
>> maxOccurs="1"/>
>> > <xs:element ref="childC" minOccurs="1"
>> > maxOccurs="7"/>
>> > <xs:element ref="childD" minOccurs="1"
>> maxOccurs="4"/>
>> > <xs:element ref="childE" minOccurs="1"
>> > maxOccurs="unbounded"/>
>> > ...
>> > </xs:choice>
>> > </xs:complexType>
>> > </xs:element>
>> >
>> > lets all elements occur unbounded and ignores that
>> > e.g. B should only occur 1x. If I remove
>> "unbounded"
>> > from the <choice>, I cant get past the first
>> element!
>>
>> Yep, that's how xs:choice is supposed to work. What
>> you need would be
>> xs:all without the restrictions imposed to this
>> composer in the W3C XML
>> Schema recommendation but such a thing doesn't
>> exist.
>>
>> If you can use RELAX NG, this is trivial using an
>> interleave pattern.
>>
>> Eric
>>
>> --
>> GPG-PGP: 2A528005
>> Weblog:
>>
>>
> http://eric.van-der-vlist.com/blog?t=category&a=English
>>
> ------------------------------------------------------------------------
>> Eric van der Vlist http://xmlfr.org
>> http://dyomedea.com
>> (ISO) RELAX NG ISBN:0-596-00421-4
>> http://oreilly.com/catalog/relax
>> (W3C) XML Schema ISBN:0-596-00252-1
>> http://oreilly.com/catalog/xmlschema
>>
> ------------------------------------------------------------------------
>>
>
>
>
>
> ___________________________________________________________
> All New Yahoo! Mail – Tired of Vi@gr@! come-ons? Let our SpamGuard protect
> you. http://uk.docs.yahoo.com/nowyoucan.html
>
> -----------------------------------------------------------------
> 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>
>
>
|