Parse Tree OK ! Parse query OK ! Compil OK ! Run OK ! ##### Query ##### /descendant::a[descendant::c[child::e and not descendant::f[not descendant::e]/descendant::g]]/descendant::b[child::g] ##### Doc ##### <#document> ##### ASTA ##### # Query states: { q₁ q₂ q₈ q₉ } # Recognizing states: { q₀ q₃ q₄ q₅ q₆ q₇ } # Selecting states: { q₁ } # Bottom states: { q₂ q₈ q₉ } # Top states: { q₉ } # Queries transitions: | q₁ ----F(b)---> ↓₁q₀ | q₂ ----Cof(ø)---> ↓₁q₂ ∨ ↓₂q₂ ∨ ↓₁q₁ ∨ ↓₂q₁ | q₈ ----F(a)---> (↓₁q₂ ∨ ↓₁q₁) ∧ ↓₁q₇ | q₈ ----Cof(ø)---> ↓₁q₈ ∨ ↓₂q₈ | q₉ ----Cof(ø)---> ↓₁q₈ # Recognizing transitions: | q₀ ----F(g)---> ⊤ | q₀ ----Cof(ø)---> ↓₂q₀ | q₃ ----F(g)---> ⊤ | q₃ ----Cof(ø)---> ↓₁q₃ ∨ ↓₂q₃ | q₄ ----F(e)---> ⊤ | q₄ ----Cof(ø)---> ↓₁q₄ ∨ ↓₂q₄ | q₅ ----F(f)---> ̅↓̅₁̅q̅₄ ∧ ↓₁q₃ | q₅ ----Cof(ø)---> ↓₁q₅ ∨ ↓₂q₅ | q₆ ----F(e)---> ⊤ | q₆ ----Cof(ø)---> ↓₂q₆ | q₇ ----F(c)---> ↓₁q₆ ∧ ̅↓̅₁̅q̅₅ | q₇ ----Cof(ø)---> ↓₁q₇ ∨ ↓₂q₇ ##### RUN ##### # Mapping: ø