[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XCatalog
>Don Park wrote: > >> You wrote a few days ago that you were abandoning XCatalog. > [John Cowan] >More precisely: I no longer think the XML syntax described in >the XCatalog paper makes much sense. The Socat subset is >more interoperable and more sensible. > >The main reason is that it's unreasonable, IMHO, to ask a >parser to recursively parse XML-XCatalog format while it's >parsing some other document. Socat format on the other hand >is an easy hack. > An alternative might be to retain the XML syntax but not use an XML parser to parse the syntax. What I mean is that you could add application specific rules about how the XML is laid out to make it easily parsed with regexp yet retain the ability to do a full parse for syntax/structure checking. You would also retain the ability to manipulate these catalogs with XML tools which is a good thing:-) In particular your catalogs get to live with your "documents" in your document database and can be stored, chopped, re-used and pretty printed using XML tools. Saying that "the XML parser uses special parsing logic for catalogs (oh, and by the way, they are also XML files)" sounds better to me than "the XML parse uses special parsing logic for Socat catalogs (oh, and by the way, the Socat parser is a one-off creation.") <experience where="In the trenches"> Data structures have a tendancy to grow organically over time. This is expecially true of succesful ones:-) They start off with a small number of syntactic constructs which are trivially parsed but the parsing gets more difficult as new stuff is added. Then comes the point where you say "Gee, I wish I had stuck with XML..." </experience> <PythonSpecificHack> An alternative to the "perfectly-good-XML-with- DTD-but-parsed-with-regexp-to-avoid-chicken-and-egg" would be a syntax like this:- Maps = { "foo" : "bar", .... } This appeals to the Python bigot in me because it is easily parsed in any language you like, but parsed and loaded into an in memory data structure in one line of Python:- import Catalog.py A similar line in bigotry can be followed from other interpreted languages of course:-) </PythonSpecificHack> <Sean uri="http://www.digitome.com/sean.htm"/> 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 (un)subscribe, mailto:majordomo@i... the following message; (un)subscribe 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
|