Re: Parser compliance
[Richard Lanyon:] > On Wed, 17 Nov 1999, Steven R. Newcomb wrote: > > > I have often wondered where this myth arose that DTDs are somewhere > > between evil and useless. It's baffling that this myth arises when > > there's nothing better than, or even as good as DTDs. > > It seems to me that the problem lies in what exactly DTDs are used /for/. > Basically, DTDs are used for checking the structure of a document. While > this is doubtless important, it seems to me to be curious that what is > essentially an error-checking mechanism is the first thing that many > people learn about XML. This in turn is because the important bit of XML > - viz designing hierarchical structures - becomes conflated in many > people's minds with the syntax you use to error-check your structures. > This is particularly worrying because in many cases the error-handling > will be best dealt with by something familiar with the /semantics/ of the > structure (i.e. a specific XML application) rather than by an XML parser. I think we essentially agree, but I would like to put it another way. In my own mind, the purpose of XML, as a tool, is to get information (not just data) from A to B. I think of information as having two forms: (1) ready-to-run objects in memory, e.g. ready-to-roll DOM (2) interchangeable (but otherwise useless) serialized-into-characters XML XML parsers convert the syntactic components of information in form (2) into information in form (1). The conversion of application-specific semantics requires something more than an XML parser; the XML parser only moves the *syntactic components* of the XML instance across the boundary between form (2) and form (1). The interesting thing here is that, for any information set, both forms can be rigorously defined (not just form (2), which is quite adequately definable via a DTD). Any given set of applications can usefully share a single meta-DTD and a single DOM-like (direct random access to all nodes in the grove) abstract API to the semantics intended to be interchanged by means of that meta-DTD. All such applications can share a single re-usable software module to perform the conversion. One desirable side-effect is that such re-usable software makes applications much less expensive to write, and much more likely to be able to reliably interchange information (not just data) with each other. These advantages are critical to both the economic feasibility and the reliability of XML-mediated business-to-business information interchange. (All this is standardized in HyTime (ISO/IEC 10744:1997) and is implemented in commercial software. Some relevant jargon: inheritable architectures, meta-DTDs, base architectural instance extraction, architectural syntactic groves, architectural semantic groves, plug-in architecture engines, multiple architectural inheritance, architectural property sets, grove APIs.) -Steve -- Steven R. Newcomb, President, TechnoTeacher, Inc. srn@t... http://www.techno.com ftp.techno.com voice: +1 972 517 7954 <<-- new phone number fax +1 972 517 4571 <<-- new fax number pager (150 characters max): srn-page@t... Suite 211 <<-- new address 7101 Chase Oaks Boulevard Plano, Texas 75025 USA xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To unsubscribe, mailto:majordomo@i... the following message; unsubscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
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