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

Two philosophies of XML usage

  • From: "Costello, Roger L." <costello@mitre.org>
  • To: "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>
  • Date: Thu, 22 Dec 2011 14:19:13 +0000

Two philosophies of XML usage
Hi Folks,

Long ago Sean McGrath created this mantra [1]:

1. Get data into XML as quickly as possible.
2. Keep it in XML until the last possible minute.
3. Bring all your XML tools to bear on solving the data processing problem.

"Bring all your XML tools to bear" means to use XSLT and XPath to transform the XML, XQuery to query the XML, XML Schema/Relax NG/Schematron to validate the XML, and XProc to perform a series of activities (using the preceding tools) on the XML.

On December 12, 2011 Liam Quin wrote [2]:

I tend to think of data binding as a relatively unusual, although
important, use of XML, but that's because I'm a document person
really.

By "document person" does Liam mean that he subscribes to Sean McGrath's mantra? That is, XML should remain intact and be processed by XML tools?

Long ago Michael Kay made a wonderful statement about data being of primary importance. I wish that I could locate the specific statement, it was beautifully stated. Anyway, it went something like so:

Data is of primary importance so it makes sense to keep the 
data intact and use tools that were created for the data format.

Hopefully I have captured the essence of Michael's statement correctly.

Okay ... XML (data) is primary ... there are tools to process XML ... use them.

Would you call this the data-is-primary, manipulate-as-documents philosophy?

--------
It seems that some developers don't operate that way.

It seems that some developers immediately extract the data from XML and embed it into Java (C++, C#, Python, etc.) data structures. From thence onward, processing is done in Java. 

Data binding tools facilitate the creation of the Java data structures.

In some sense SAX promotes this approach since SAX requires Java code to catch the events it generates.

Okay ... algorithms is primary ... there are programming languages to implement the algorithms ... use them. 

Would you call this the algorithms-is-primary, manipulate-data-structures philosophy?

--------
Is there an increasing trend toward the data-is-primary, manipulate-as-documents philosophy? Are web services being developed that way?

Are there studies to show the enhanced productivity of the data-is-primary, manipulate-as-documents philosophy?

Is there a reason why web services can't be implemented using the data-is-primary, manipulate-as-documents philosophy?

/Roger 

 
[1] See slide #12 of http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCIQFjAA&url=http%3A%2F%2Fseanmcgrath.blogspot.com%2Fpipelines.ppt&ei=pyfzTue2Kcfg0QG_ra2JAg&usg=AFQjCNHJrmFcxoIaWq-lqqWEHMo6T47pKg&sig2=rTK1bnw2z7WRWsfsU2_WUA

[2] http://lists.xml.org/archives/xml-dev/201112/msg00045.html 


[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.