Menu

xmltk1.1 release

XMLTK process multiple XPath expressions in XP{//,*} optionally
with limited predicates. Predicate expressions must follow the
following conditions simultaneously.
1. The last location step does not have any predicates. Location steps except the last one can have predicates.
2. The last location step does not specify the same attribute used in predicates.
3. // and predicate are not used in a same XPath expression when the XML stream has nested with same elements.
4. A predicate follows the form of [attribute operator constant value] or [position]. A position predicate comes before any attribute predicates in the same location step.
5. When a location step has multiple predicates on attributes, the order of attributes must be the same with the occurrences of attributes in the XML stream.

For example, in DBLP example,
//inproceedings[1][contains(@key,'Onizuka')]/title
works correctly, because the DBLP XML stream is not nested with inproceedings.

ChangeLog
2006-11-16 Makoto Onizuka <oni@acm.org>

* fixed xagg bug by which xagg didn't properly process the multiple aggregation functions, which was discussed in the post to bug tracker at 2002-10-22 04:57
http://sourceforge.net/tracker/index.php?func=detail&aid=626830&group_id=51270&atid=462691

* fixed the bug in dfafiler.cxx by which Lazy DFA invoked startContext(/) before startDocument().

* added a xmltoolkit command, xdetector. xdetector inputs two files:
a query file (containing multiple queries) and an XML document.
xdetector invokes printAutomata(const char * filename) method in IDfaFilter interface and serializes the NFAs and DFA to (current)/xpathQuery.xml. Examples are included in sample/dblp directory (Read README in that directory).

2006-11-15 Makoto Onizuka <oni@acm.org>

* fixed the GCC 3.3 static_cast compile errors in xnest, xpair, xtail discussed in the post to bug tracker at 2003-10-18 23:13
https://sourceforge.net/tracker/index.php?func=detail&aid=825978&group_id=51270&atid=462691

* modified xrun to input XML stream from stdin discussed in the post to xmltk-devs at 2003-02-10 11:00
https://sourceforge.net/mailarchive/forum.php?thread_id=1634460&forum_id=9098

* fixed the bug in Automata::isTerminal() discussed in the post to xmltk-devs at 2006-11-11 14:34.
https://sourceforge.net/mailarchive/forum.php?forum_id=9098&max_rows=25&style=flat&viewmonth=200611&viewday=10
The bug caused unnecessary endContext() events.

* modified PString::buf which stores the cached value converted from XTOKEN.

* added printAutomata(const char * filename) method in IDfaFilter interface. It serializes the NFAs and DFA to the specified file.

* added the document IMPLEMENTATION that describes the complicated part of the Lazy DFA implementation.

Posted by makoto onizuka 2006-11-14

Log in to post a comment.