From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,f2e33c9247ed3917 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news4.google.com!news.glorb.com!atl-c03.usenetserver.com!pc03.usenetserver.com!ALLTEL.NET!not-for-mail Date: Thu, 10 Mar 2005 08:24:42 -0600 From: "Marc A. Criley" User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: ANNOUNCE: XIA 1.00 Now Available References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Message-ID: <45154$4230589f$499535a$2422@ALLTEL.NET> X-Complaints-To: abuse@usenetserver.com Organization: UseNetServer.com X-Trace: 451544230589fa13cf6ff02422 Xref: g2news1.google.com comp.lang.ada:9040 Date: 2005-03-10T08:24:42-06:00 List-Id: Marc A. Criley wrote: > Version 1.00 of XIA (XPath In Ada) is now available on the McKae > Technologies website at www.mckae.com/xia.html. > > This version of XIA completes the initial Ada implementation and release > of the XPath 1.0 specification. (Since this is my thread, I'm just going to keep on adding to it :-) Okay, so you now have a native Ada implementation for XPath querying, so what? Well, Ada programmers in general like to work with software written in Ada so they can look at it and more easily see what's going on, hence writing XIA in Ada. What does XPath buy me? If you're working with XML documents, there are two standard approaches for interacting with such documents, SAX and DOM. SAX is oriented towards stream-oriented processing, meaning that you process the contents of a document as it streams through your application, there's no innate retention of the content once it's been processed. This is good for doing things like transformations and especially when working with documents of very large size. DOM is tree-oriented access to the document, where the entire XML document is loaded into an in-memory tree, and can now be walked through, randomly accessed, manipulated, and even easily written back out to a document. Thanks for the info, but what does XPath buy me? XPath is a standard approach for selecting nodes out of an XML document. Instead of you having to write your own code to go and search for nodes (elements and/or attributes) of interest, you write an XPath query and bang it up against the document--and back comes a list of nodes that meet the query's criteria. XPath can work with both DOM and SAX approaches to XML document processing, but SAX, being a 1-way stream oriented mechanism, means that you either have to restrict yourself to an XPath subset (eliminating queries that involve elements that would have already gone past), or do some gnarly query preprocessing, along with maintenance and pruning of lists of potential node matches, etc. Due to the latter complications of dealing with SAX interaction, XIA works strictly with the DOM model of XML document access. Hope this was helpful... www.mckae.com/xia.html Marc A. Criley McKae Technologies www.mckae.com