[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Build Rich Complexity from a Small Set of Well-DefinedMark

  • From: Mukul Gandhi <gandhi.mukul@gmail.com>
  • To: John Cowan <cowan@mercury.ccil.org>
  • Date: Thu, 25 Aug 2011 19:32:53 +0530

Re:  Build Rich Complexity from a Small Set of Well-DefinedMark
I felt tempted to write on to this thread.

I have full regards for any mechanism that can validate XML instances.
Therefore XSD, RELAX NG and Schematron all look good to me.

Having said this, I have few specific comments to points mentioned
below (please see inline).

On Wed, Aug 24, 2011 at 9:12 PM, John Cowan <cowan@mercury.ccil.org> wrote:
> What makes XSD complicated is the irregularity of the rules.  For example,
> a choice between child elements is representable, but a choice between
> attributes is not.

I believe, this is no longer true with XSD 1.1. The choice between 2
or more attributes can be represented in an XSD 1.1 schema. Here's a
small example, that uses XSD 1.1 assertions,

<xs:attribute name="att1" type="xs:string"/>
<xs:attribute name="att2" type="xs:string"/>
<xs:assert test="count(@att1 | @att2) = 1"/>


> What is more, there are many special rules about
> what can and cannot be done, the Unique Particle Attribution rule being
> the most notorious.

The concept of XSD particles is central to the XSD language (and this
hasn't changed between XSD 1.0 and 1.1). XSD particles map to element
declarations, element wild cards and model groups. During validation
with XSD schemas, an instance XML element is attributed (i.e with
which XSD particle an instance structure should be validated with) to
an XSD particle. The schema author may write an XSD schema, that have
ambiguous validation paths (and this is central to the UPA constraint,
and the XSD language defining such situations seems to present a nice
design).

> By comparison, RELAX NG has 9 basic patterns (element, attribute,
> reference, parent reference, empty, text, datatype, typed value,
> notAllowed) and 8 combinator patterns (sequence, interleave, choice,
> optional, zeroOrMore, oneOrMore, list, mixed), but feels much simpler
> than XSD because of the relatively few restrictions in combining them.

I look forward to make a detailed comparison between XSD, RELAX NG and
Schematron :)




-- 
Regards,
Mukul Gandhi


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


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.