[a re-posting, made on request]
Arjun, you write: "XML may be useful at the periphery, to move data between systems."
I take a different view.
Did
you sufficiently take into consideration that XML-encoded information
is addressable, down to the smallest item, in a unified way which could
not be more concise and at the same time more intuitive? XML-encoded
information can be submitted to powerful operations, effecting
extraction, transformation, aggregation. XML turns information into a
substrate with which to work, in a way which reminds me of numbers (the
substrate) and mathematics (the operations).
Therefore
your statement would make sense to me if there were XML, but not XPath,
XQuery, XSLT. I think that to speak about the "usefulness" of XML
forgetting the existence of these technologies makes little
sense, similar to speaking about the usefulness of relational databases
without considering the existence of SQL.
Little
example. You have two XML files and you are interested in the
differences. The following 9 lines of XQuery code, written in two
minutes, lists added/removed data paths (see below). Of course it is
generic - any two documents can be used. Can you give me examples of how
this could be achieved equally easily after leaving XML format?
Kind regards,
Hans-Juergen
declare variable $doc1 external;
declare variable $doc2 external;
let $paths1 := distinct-values(doc($doc1)//*/string-join(ancestor-or-self::*/local-name(), '/'))
let $paths2 := distinct-values(doc($doc2)//*/string-join(ancestor-or-self::*/local-name(), '/'))
return
<diff>
<new>{for $p in $paths2[not(.=$paths1)] order by $p return <loc p="{$p}"/>}</new>
<del>{for
$p in $paths1[not(.=$paths2)] order by $p return <loc p="{$p}"/>}</del>
</diff>
Arjun Ray <arjun.ray@verizon.net> schrieb am 2:43 Dienstag, 1.April 2014:
On Sun, 30 Mar 2014 10:21:13 +0000, "Costello, Roger L."
<
costello@mitre.org> wrote:
| (Paul Tyson) In my role as webapp developer, nothing but
|
XML+XSLT will do.
|
| What is your simplicity stack?
I'm not a 'webapp devloper", so as far as XML enters into the picture,
my simplicity stack starts with getting data _out_ of XML as soon as
possible.
XML may be useful at the periphery, to move (structured) data between
systems. But I keep the business end of the logic XML-free.