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] Venetian Blinds vs Garden of Eden patterns forindustry standards XML Schemas

Lech,

From my recent experiences with generating XForms applications from XML Schema I'd recommend, for simplicity's sake, the Venetian Blind pattern as it makes it a lot easier to build an editing application who's control presentation structure follows the structure of the document/data. However, where you need complete freedom to create/edit/validate fragments at any level of the hierarchy then the garden of Eden approach may seem attractive too. In my most recent case we were using Venetian Blind and where it was necessary to deal with specific fragments of the entire document all that was need was a 'wrapper' schema that defined the element for the complexType in question.

Also, from a point of view of application generation, you will most likely need to associate annotations, with the various complex and simple types, that capture control labels, hints and help text. In order that you can capture the richness of these annotation I'd go as far as to suggest creating a simpleType declaration for every attribute and simple element type that are declared in the schema. If you do that then you'll have somewhere to put or reference those annotations.

A small word of warning on this: if you have all you annotations, as I describe, in your schema it then becomes very hard to read the schema. Therefore, keep your annotations out-of-line and use an XSLT transform to merge them into the schema before you start transforming it into your chosen application format (XForms I hope)


Regards

Philip Fennell
Consultant
MarkLogic Corporation

88 Wood Street, London. EC2V 7RS

Mobile: +44 (0) 7824 830 866

email  Philip.Fennell@marklogic.com
web    www.marklogic.com




-----Original Message-----
From: Lech Rzedzicki [mailto:xchaotic@gmail.com] 
Sent: 27 October, 2010 5:32 PM
To: xml-dev@lists.xml.org
Subject: [xml-dev] Venetian Blinds vs Garden of Eden patterns for industry standards XML Schemas

Hi all.

I am now involved in developing the next iteration of schemas to
standardise information storage and exchange for trademarks and design
(there is also some cooperation with patent people).
The current standards (TM-XML and DS-XML) use a venetian blind pattern
because it nicely mimics OO model, so it's easy to generate classes
and objects, also it hides element definitions so there's no conflicts
when processing them. Finally the naming convention (not my idea)
means that the element names are not reusable anyway.
Some people are now proposing that we move to "Garden of Eden" design
patter, but I don't see that as a particularly smart move in the
context of our domain.
I have noticed that many of the schemas in the industry, for instance
UBL have gone for Garden of Eden first and and later reverted to
Venetian Blinds.
I am very interested in some thoughts from the trenches as to why one
or the other approach might be more useful in a committee driven
standards with contributors from different domains.

No need to point me to google either - I have read all the articles
about it [1,2,3] and authored schemas that are in production now both
ways, but still unconvinced either way...


References:

[1] A slideshows on various approaches:
http://dret.net/lectures/xml-fall08/xsd-2#(11)
[2] http://www.xfront.com/GlobalVersusLocal.html - schema best practices
[3] http://www.ibm.com/developerworks/xml/library/x-schemascope/
etc...

_______________________________________________________________________

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