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] Before creating a syntax, create an underlying datamodel

Ghislain,

As always, I am impressed with the clarity and brevity with which you express complex concepts.

Thanks!!
Jim

On 4/18/2016 2:58 AM, Ghislain Fourny wrote:
Hi,

With a database background, my perspective is that:

1. A data model is needed as soon as you want to validate (don't forget the PSVI :-) ), query, process data.

2. A database needs a data model (this is what Edgar Codd called data independence, a very important concept) that the query language can manipulate.

3. Syntax is a representation of the data model that can be used for interoperability and exchanging (importing, exporting) data between different vendors. I tend to see the data model as the upper layer and the syntax as the lower layer, maybe because I think of it in terms of abstraction layers.

4. Whether the syntax or the data model is designed first is more best-practice-related, and, as was said in the other thread, the order in which it was done for XML has historical reasons. In practice, an instance of the data model can be serialized to syntax and syntax can be parsed to an instance of the data model.

5. There is this same idea of syntax and data model for other data formats as well:

- XML and JSON (and protocol buffers, BSON, etc to the extent that bits can be seen as a low level of syntax, too) are the syntaxes that correspond to document stores/hierarchical data.
- CSV is the syntax that corresponds to relational databases and the relational model, queried with SQL.
- XBRL is the syntax that corresponds to data cubes (OLAP, queried with MDX...) (I'm doing a bit of a stretch here, but that's how I see it).
- RDF (or, to be more precise, RDF/XML, Turtle, etc) is the syntax that corresponds to graph databases and triple stores, queried with SPARQL.

My 2 cents :-)

Kind regards,
Ghislain
--
========================================================================
Jim Melton --- Editor of ISO/IEC 9075-* (SQL)     Phone: +1.801.942.0144
  Chair, ISO/IEC JTC1/SC32 and W3C XML Query WG    Fax : +1.801.942.3345
Oracle Corporation        Oracle Email: jim dot melton at oracle dot com
1930 Viscounti Drive      Alternate email: jim dot melton at acm dot org
Sandy, UT 84093-1063 USA  Personal email: SheltieJim at xmission dot com
========================================================================
=  Facts are facts.   But any opinions expressed are the opinions      =
=  only of myself and may or may not reflect the opinions of anybody   =
=  else with whom I may or may not have discussed the issues at hand.  =
========================================================================



[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