An XML matching engine and method are provided, where policy rules
expressed using XPath/XQuery policies are matched to streaming XML
documents. Two distinct data structures are used: a combined modified DFA
data structure for storing simple XPath queries (no wildcards or
descendents) and a modified AFilter structure for storing complex queries
(with wildcards or/and descendents). As the matching engine receives XML
tags from XML parser, matching is performed in both structures in
parallel.