|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: SML: Second Try
Seairth Jacobs wrote: > This could have been said for the initial adoption of XML as well. If > people had listened to this arguement back then, we would still have only > SGML... IMHO, no we wouldn't. There are two radical departures from SGML in the premises of XML: the first is the "SGML on the Web" impetus, however dimly understood it was at the time, and the second is simple well-formedness. Taken together these two utterly transform--and are both necessary to the transformation of--SGML from the assumption of functional nodes made transparent to one another by a priori agreements and from the mutual transparency conferred by an homogenous network. On the internetwork, functional nodes are inherently opaque to one another. If that opacity is erased it is only through individual nodes giving up their autonomy of process, which is the very essence of the internetwork. Were the manner in which functional nodes instantiate data for their own purposes and then execute their characteristic functions to be governed or limited or even guided by the practices or expectations of other nodes, the result would effectively be the creation of an homogenous network--that is, a network characterized by a shared body of a priori assumptions ultimately governing the individual functioning of each node. Instead, the internetwork is created by overlaying a universal addressing mechanism on constituent nodes and networks. Each node gains the power to address every other node directly. Yet because the functional assumptions of constituent networks are not recast around a body of shared data structures, datatypes, and the processing which acceptance of those shared types and structures implies, the nodes of the internetwork do not and cannot have 'interfaces' to other functional nodes. The functional nodes of the internetwork can address one another directly, can put or post documents by address, and can get documents from addresses where they are authorized to do so. If those documents come with or refer to DTDs or other schematics, then nodes which use those documents in their particular processing may validate if they choose to test that the documents as received follow the content model they proclaim. Such validation, if performed, amounts to a functional node yielding, in particular instances at least, its fundamental privilege of determining its own input data in every instance of its function or, more accurately, delegating the logistics of that determination to standard processing parameterized by an accepted form of schema. The inclusion of the well-formedness-only option in XML 1.0 specifically separates testing for conformance of an instance document to a particular content model from testing of that document's compliance with fundamental rules of XML 1.0 syntax. Because it is the node consuming a document which chooses in each instance whether to validate, the practice of XML 1.0 has from the beginning made clear that decisions of what data to accept--given always basic compliance with fundamental rules of syntax--lie with each user of that data. Historically, SGML systems were implemented, most often idiosyncratically, within closed systems of homogenous assumptions. The premise on which various functions of such systems interoperated by sharing the same documents, similarly understood, went largely unexamined. In the 'data' world this is analogous to how two-phase commit enables the transactional interoperation of RDBMSs through the sharing of identical data structures identically understood by transactional counterparties, down to the form and type of each of their constituent fields. In such an environment--whether for processing documents or data--it is easy to believe, and ultimately to design systems on the belief, that if a document or data validates to an expected model then functional nodes intended to operate upon a document or data of that model should perform their expected functions against a given instance precisely because that instance validates. Too often when I hear people speak of a 'contract' between the creator and the consumer of documents or data, it is clear that what they really mean is a two-step agreement: the consumer retains the right to validate each instance against expectations, but the producer expects that if the instance validates the consumer will accept and process it. So far as I can determine, the second step has not been articulated as an explicit general premise, but it has nonetheless been for twenty years or more the basis of building homogenous systems or of creating a sort of interoperability which binds individual functional nodes into systems. In short, by being premised on straightforward usability on the internetwork and by offering simple well-formedness at the choice of the document user, XML 1.0 radically reaffirms the autonomy of each functional node in determining its own input data requirements and in deciding what, and whether, to execute against that data. By contrast with that radical departure, any simplification or modification of XML 1.0 based on 'the Infoset' or invoking 'the Infoset' as the basis of interoperability vitiates the interoperability inherent in XML 1.0 and, in practice, will reverse the premises of XML 1.0 by imagining some OO-like 'interface' to each functional node of the internetwork and eventually positing some contractual obligation of that node to perform when its interface is appropriately invoked. XML 1.0-compliant documents are syntactic entities which may be instantiated and then used in various idiosyncratic ways by various functional nodes. That is the sole basis of any interoperability which XML 1.0 affords. But, in fact, it is the most general interoperability obtainable, and one which is vitiated by any expectation, model or information-item abstraction which might additionally be imposed on the uses of a given instance document. 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
|
|||||||||

Cart








