[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: objects/syntax (was Character Entities: An XML C
Mike Champion wrote: > In my worldview -- which admittedly is not XML 1.x's -- elements are > first class "objects" in "XML" (along with attributes and text, and not > much else). Every thing is is just syntax -- entities, CDATA sections, > comments [not sure about PIs ..], namespace declarations and prefixes > [just a funny syntax for creating unique names]. XML 1.x is merely a > widely adopted and semi-standardized syntax for serializing these labeled, > attributed tree thingies. What if we re-phrase that as 'elements, attributes and text are first class objects in XML *documents*'. In the aggregate, the instance possibilities manifest in your corpus of documents limn your XML worldview. Likewise, my incrementally different view of the boundaries of the XML universe is dictated by a different collection of instance documents, and so on for each of us as our respective experiences differ. Following the classic premises of SGML we might each implement our respective worldview in running code as a profile customized for our own unique situation. In fact, I argue that in building processing nodes (call them web services if you will) that is still precisely what we should do: build to the specific requirements of our unique processing rather than trying for some more-embracing common denominator which inevitably vitiates the value which an idiosyncratic implementation of our particular expertise might afford. XML, however, is fundamentally different because its impetus is to realize SGML on the Web and the first of its ten cardinal goals is that XML be straightforwardly usable over the Internet. The 'straightforwardly' is the killer. The most simple-mindedly obvious straightforward networking of markup probably is, in fact, to propound a worldview, an object model, a vocabulary, a profile which offers, at the semantic level, the union of all reasonable and worthwhile subsets of that model, profile, vocabulary, etc., and then to press for its acceptance. Of course, that is not XML: for one thing, it constrains the intended extensibility in a manner antithetical to XML's design premises. It is also an approach which is hopelessly at odds with the Internet. The Internet is not a network, but an internetwork, and new subnets are not incorporated into it by restructuring them to a common object model, but by providing them access to a universal addressing syntax. The Internet is characterized by the diversity of its nodes in both structure and capability, given the fundamental constraint that each is addressable by particular syntax of bits on the wire. At a higher level, the Web is another such internetwork, where a different addressing syntax--the URL scheme--is the requisite common denominator. It turns out that the only straightforward application of XML to the Internet (or the Web) is realized with idiosyncratic nodes, each of which utilizes the full extensibility of XML to implement its unique object model, but each of which also is prepared to traffic on the wire with syntax emanating from, and conditioned by, very different object models. In baldest terms, the extensibility intended in XML and the interoperability designed into the internetwork are best realized when each node is open at least to the possibility of receiving and acting upon arbitrary XML. We do much better designing (and the resulting design is more straightforward) from that premise than from the converse notion that we need only that syntax which is required to serialize a pre-agreed common denominator object model. As a practical matter, a given node will of course need to reject or to ignore or perhaps re-route documents addressed to it which it is not intended top handle: e.g. an invoice processor is not intended to deal with resource scheduling. There will also be cases where the object model from which a document issues, and inevitably therefore the chosen syntax of that document, is incomprehensible to the object model of a receiving node, even though both of those nodes might, in semantic terms, process orders, or invoices, or otherwise have an inherent potential interoperability. Such instance failures to process are expected by the internetwork worldview, precisely because the power of universal addressing and of universal comprehensibility at a syntactic level ignore *by design* the possible semantic mismatch which might result. That syntactic universality--that standardization--is the fundamental strength of XML, just as it is of the Internet and of the Web. Outside of an homogenous enterprise network we will not reach the semantic agreement which allows the object to have precedence over the syntax. The recognition of that truth is why the first design goal of XML is straightforward applicability to the Internet, and all that implies of the standardization of syntax at the expense of agreed object models. Respectfully, Walter Perry
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|