Implement the multiple-starters feature:
authorKim Nguyễn <kn@lri.fr>
Tue, 23 Jul 2013 17:06:50 +0000 (19:06 +0200)
committerKim Nguyễn <kn@lri.fr>
Wed, 24 Jul 2013 09:39:12 +0000 (11:39 +0200)
commit6ca42ffbd541cede6afcc473b563e54b848ee534
tree32e4623c7849bbab09aa51d5599c70f3b463869f
parent398ce5dca1bee23f5137a3eba21df17d7aaaf1fa
Implement the multiple-starters feature:
- implement automata merging and concatenation
- change the command line parsing to allow multiple queries
- update the output format to denote which query a result set belongs to
- implement full evaluation of automata (associate each selecting state
with its result set)

Given queries Q1 ... QN on the command line, we can now:
- compute Q1, then Q2, ... , then QN on the same document, sequentially
- build one automaton that computes Q1, ..., QN in parallel
- compute QN(... Q2(Q1(root))) sequentially (materializing intermediate
results)
- build one automaton that computes QN(...(Q2(Q1(root)))) in one run.
85 files changed:
src/ata.ml
src/ata.mli
src/options.ml
src/run.ml
src/run.mli
src/tatoo.ml
src/xpath/compile.ml
tests/alphabet.xml.results/A10_jaxp.xml
tests/alphabet.xml.results/A11_jaxp.xml
tests/alphabet.xml.results/A12_jaxp.xml
tests/alphabet.xml.results/A1_jaxp.xml
tests/alphabet.xml.results/A2_jaxp.xml
tests/alphabet.xml.results/A3_jaxp.xml
tests/alphabet.xml.results/A4_jaxp.xml
tests/alphabet.xml.results/A5_jaxp.xml
tests/alphabet.xml.results/A6_jaxp.xml
tests/alphabet.xml.results/A7_jaxp.xml
tests/alphabet.xml.results/A8_jaxp.xml
tests/alphabet.xml.results/A9_jaxp.xml
tests/alphabet.xml.results/O1_jaxp.xml
tests/alphabet.xml.results/O2_jaxp.xml
tests/alphabet.xml.results/O3_jaxp.xml
tests/alphabet.xml.results/O4_jaxp.xml
tests/alphabet.xml.results/P10_jaxp.xml
tests/alphabet.xml.results/P11_jaxp.xml
tests/alphabet.xml.results/P12_jaxp.xml
tests/alphabet.xml.results/P1_jaxp.xml
tests/alphabet.xml.results/P2_jaxp.xml
tests/alphabet.xml.results/P3_jaxp.xml
tests/alphabet.xml.results/P4_jaxp.xml
tests/alphabet.xml.results/P5_jaxp.xml
tests/alphabet.xml.results/P6_jaxp.xml
tests/alphabet.xml.results/P7_jaxp.xml
tests/alphabet.xml.results/P8_jaxp.xml
tests/alphabet.xml.results/P9_jaxp.xml
tests/alphabet.xml.results/T1_jaxp.xml
tests/alphabet.xml.results/T2_jaxp.xml
tests/alphabet.xml.results/T3_jaxp.xml
tests/alphabet.xml.results/T4_jaxp.xml
tests/alphabet.xml.results/T5_jaxp.xml
tests/alphabet.xml.results/T6_jaxp.xml
tests/alphabet.xml.results/T7_jaxp.xml
tests/comments00.xml.results/C0_jaxp.xml
tests/xmark_small.xml.results/A1_jaxp.xml
tests/xmark_small.xml.results/A2_jaxp.xml
tests/xmark_small.xml.results/A3_jaxp.xml
tests/xmark_small.xml.results/A4_jaxp.xml
tests/xmark_small.xml.results/A5_jaxp.xml
tests/xmark_small.xml.results/A6_jaxp.xml
tests/xmark_small.xml.results/A7_jaxp.xml
tests/xmark_small.xml.results/A8_jaxp.xml
tests/xmark_small.xml.results/B10_jaxp.xml
tests/xmark_small.xml.results/B11_jaxp.xml
tests/xmark_small.xml.results/B12_jaxp.xml
tests/xmark_small.xml.results/B13_jaxp.xml
tests/xmark_small.xml.results/B1_jaxp.xml
tests/xmark_small.xml.results/B2_jaxp.xml
tests/xmark_small.xml.results/B3_jaxp.xml
tests/xmark_small.xml.results/B4_jaxp.xml
tests/xmark_small.xml.results/B5_jaxp.xml
tests/xmark_small.xml.results/B6_jaxp.xml
tests/xmark_small.xml.results/B7_jaxp.xml
tests/xmark_small.xml.results/B8_jaxp.xml
tests/xmark_small.xml.results/B9_jaxp.xml
tests/xmark_tiny.xml.results/A1_jaxp.xml
tests/xmark_tiny.xml.results/A2_jaxp.xml
tests/xmark_tiny.xml.results/A3_jaxp.xml
tests/xmark_tiny.xml.results/A4_jaxp.xml
tests/xmark_tiny.xml.results/A5_jaxp.xml
tests/xmark_tiny.xml.results/A6_jaxp.xml
tests/xmark_tiny.xml.results/A7_jaxp.xml
tests/xmark_tiny.xml.results/A8_jaxp.xml
tests/xmark_tiny.xml.results/B10_jaxp.xml
tests/xmark_tiny.xml.results/B11_jaxp.xml
tests/xmark_tiny.xml.results/B12_jaxp.xml
tests/xmark_tiny.xml.results/B13_jaxp.xml
tests/xmark_tiny.xml.results/B1_jaxp.xml
tests/xmark_tiny.xml.results/B2_jaxp.xml
tests/xmark_tiny.xml.results/B3_jaxp.xml
tests/xmark_tiny.xml.results/B4_jaxp.xml
tests/xmark_tiny.xml.results/B5_jaxp.xml
tests/xmark_tiny.xml.results/B6_jaxp.xml
tests/xmark_tiny.xml.results/B7_jaxp.xml
tests/xmark_tiny.xml.results/B8_jaxp.xml
tests/xmark_tiny.xml.results/B9_jaxp.xml