OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: "Uh, what do I need this for" (was RE: XML.COM: How I Learne d to Love daBomb)

> From: Simon St.Laurent [mailto:simonstl@simonstl.com]


> Funny that you say that last bit ("API level"), as much of what I find
> interesting and exciting about XML is that it's an alternative to
> thinking in terms of "APIs".
> APIs are great if you're building programs.  They're damn 
> near worthless
> if you're trying to hold a conversation.  I'd argue that business,
> despite attempts to the contrary, is much more like a 
> conversation than
> an API, and that XML offers far more flexible modeling of 
> conversations.

Except that somewhere there is a program driving that conversation.
Nonetheless, I think you make valid points, and for this same reason I think
that of all of the things the W3C has given us, the DOM is probably the one
with the least value.

In our own software we leverage a custom XSLT-like technology that lets us
define in a declarative fashion the data structures we wish to extract from
an XML message, and define mappings between these structures and the XML
format for a particular message. We can also hook in arbitrary code at
particular points to allow us to do any additional processing not
accommodated with the declarative syntax. This affords us a rather malleable
layer that sits between our own engine and the external interface we expose
to customers and partners. However, the technologies are such today that you
often drop into code at some point, and then you are typically stuck with
the DOM or SAX. We are exploring ways to strike those from the APIs and let
developers work at higher levels of abstraction when they do need to drop
into code while still supporting that flexible modeling of conversations. 

Developers still need to write business logic, and they need to get the
information from the XML document into data structures better suited to
supporting that business logic. All of the APIs in the XML world are
unsuited for this. They force the developer to mold their logic to fit an
API that is only suited for modeling a document structure, rather than
letting the developer mold their data structures and APIs to align with
business concepts and processes.