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 Schema as a data modeling tool

Maybe someday somebody can create something like the “Whiteboard serialization format” able to store those nice models drawn on meetings, without the problems arose when become “represented” on a computer format (UML model, database schema, XML Schema or whatever). Meanwhile, XML Schema (or even DTD) has a lot of advantages, specially over DB modeling and the data shredding associated with normalization.


And the idea is not new, I found at least two books from 2011 and 2003 on the subject:


-          Web Data management by Serge Abiteboul et al. http://webdam.inria.fr/Jorge/?action="">

-          Modeling Business Objects with XML Schema by Berthold Daum http://books.google.com.co/books/about/Modeling_Business_Objects_With_Xml_Schem.html?id=RQVpeYV_lPwC&redir_esc=y


Another good example of data modeling on XML is HR-XML for Human Resources. As David Lee clarified, it is not modeled on XML Schema (neither UBL or HL7) but they are better represented on XML Schema than on SQL CREATE TABLE Statements.


Some lessons to learn:

-          Think abstract, act concrete: OASIS tried to create several “universal” models with no success (they had initiatives even for CRM). Although it would be nice to see something like that, for practical purposes your model for sure will be used only for your particular need, so don’t lose many time being “general-purpose”

-          Don’t fall in the trap of Code Lists represented as XML Schemas. It could be good for validating, but it’s not so practical for modeling.

-          Remember modeling is an abstraction process. Abstraction is about focusing on some details, while losing others. Our mind can’t get all the detail, neither XML Schema or any representation format.


For sure there isn’t not a wide community of XML Schema data modelers (mainly because we prefer the “well known” way over the “better” way) but maybe David Lee’s $EMPLOYEER could share their experience ;-).


Or maybe I’m wrong, but you can learn from mistakes too.


-          Bill


De: Hans-Juergen Rennau [mailto:hrennau@yahoo.de]
Enviado el: lunes, 30 de septiembre de 2013 17:52
Para: William Velasquez;
Asunto: Re: XML Schema as a data modeling tool


Bill, thank you very much for your thoughts and for pointing to UBL and HL7. It is this kind of pointing which I had hoped for, and I will try to get an idea of the approaches taken.

Kind regards,



Von: William Velasquez <wvelasquez@visiontecnologica.com>
An: Hans-Juergen Rennau <hrennau@yahoo.de>; "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>
Gesendet: 0:44 Dienstag, 1.Oktober 2013
Betreff: RE: XML Schema as a data modeling tool


Hi Hans,


Using XML Schema for data modeling is an excellent idea for these reasons:

-          You don’t have to normalize.

-          Trees are more like the real world structures than rows and columns.

-          It’s an standard representation, universally accepted

-          You can find many tools to represent it visually and generate nice documentation on HTML and other presentation formats.

-          Could be used as the basis for Model Driven Development in combination with XRX. Just imagine generating XForms automatically from Schemas and using an XML database to store the data as XML Instances. Many people is saving  lot of work using this approach (including me).

-          And finally, it’s XML! You can manipulate it using the XML ecosystem of tools and technologies.


Off course, there are some disadvantages:

-          XML Schema is not so good representing relationships, but is flexible to allow you to design a mechanism for representing them

-          Some concepts are complex to represent, like inheritance, but you can find some helpful XML Schema patterns on the web.

-          One of the most useful features, assertions, is new on XML Schema 1.1 and the vast majority of tools only support XSD 1.0.


In infer from you question that your need is related to business systems and XML Schema fits very well on these, even best than ER model. The best examples you could find are ecommerce standards, like UBL and HL7. Those are based on XML Schemas for modeling both messages and entities, and solved the problem of representing relations dividing the models in two layers core concepts and messages:


All the ‘static’ entities on the core concepts layer are represented as XML elements, with ID attributes, and in the messages layer, these ID’s are used as references, but is allowed to include a full copy of the core concept elements in the message, not only the ID (to avoid normalization).


Maybe UBL is not very successful, but it’s due to the human resistance to standardization, but is an excellent example of a data model made with XSD.


Hope you find these ideas useful,


-          Bill




[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