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] Micro XSD for Micro XML?

So which is more confusing

A concise regex based expression which looks more arcane then perl ?

Or a bloated-down heavy-handed overly designed complicated language in XML which if your lucky GUI app tools can comprehend but no mortals.





David A. Lee




From: Kurt Cagle [mailto:kurt.cagle@gmail.com]
Sent: Friday, December 17, 2010 3:18 PM
To: Michael Kay
Cc: xml-dev@lists.xml.org
Subject: Re: [xml-dev] Micro XSD for Micro XML?


alternatives would be indicated via the pipe character: "|"


    ISBNSet ?

          ^ISBN +

    ^priceUS |^priceUK


I'm trying to write this while debugging some XSD code for use in JAXB, so I apologize for the sporadic corrections. I should concentrate on my XSDs (bleeurgh).

Kurt Cagle
XML Architect
Lockheed / US National Archives ERA Project

On Fri, Dec 17, 2010 at 2:38 PM, Kurt Cagle <kurt.cagle@gmail.com> wrote:

Let's try that again:


&descript: string

ISBN: /\d{13}/

priceUS: /\$\d+\.d{2}/

priceUK: /\d+\.d{2}/



    @category:enumeration ?



    description:descript ?

    ISBNSet ?

          ^ISBN +




    ^book *



/../ indicates a regular expression

? indicates an optional element

+ indicates 1 or more items

* indicates 0 or more items

^ is a reference to a previously defined element.

& is a complex type

a:b indicates that element a is of type b


Similar notation could handle groups


Kurt Cagle
XML Architect
Lockheed / US National Archives ERA Project

On Fri, Dec 17, 2010 at 2:01 PM, Kurt Cagle <kurt.cagle@gmail.com> wrote:

You can also use a shorthand notation:


<book category="enumeration('children','adult','unknown') [0..1]">

<title> string() </title>

<description> string() [0..1] </description>

<author> string() </author>

<ISBNSet> [0..1]

     <ISBN> numeric(8,15) [1..*] </IBSN>

<price> decimal(4,2) </price>



<bookSet> [0..1]

      <book> ref [1..*] </book>



or even use a compact notation:



ISBN: /\d{13}/



    @category:enumeration ?



    description:description ?

    ISBNSet ?




(Getting close to RNC, admittedly)

Kurt Cagle
XML Architect
Lockheed / US National Archives ERA Project

On Fri, Dec 17, 2010 at 12:23 PM, Michael Kay <mike@saxonica.com> wrote:

On 17/12/2010 14:33, Pete Cordell wrote:

I recently put together a schema language for newbies that aims to be simple.  The idea was that an example of your XML data could be your schema. Chances are that alone wouldn't be rich enough, so you can then add annotations to it to better describe what you want.  For that reason I've called it "Annotated XML Example" or AXE.


Vaclav Trojan has a similar schema-by-annotated-example specification in the form of XDefinition:

see http://www.syntea.cz/xdweb/userdoc/XMLPrague2009_en.pdf

<book category="optional enumeration('children','adult','unknown')">
<title> required string() </title>
<author> required string() </author>
<IBSN> optional numeric(8,15) </IBSN>
<price> required decimal(4,2) </price>

Michael Kay


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




[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