An Extensible Markup Language (XML) Application Server for storing,
processing, communicating, and displaying dynamic semi-structured
information. It comprises a declarative specification language, a
transactional indexed XML data store, and an XML application server
engine. An integrated architecture (a) provides for optimization,
indexing, and backtracking search in a business logic layer, (b) provides
for general-purpose programming idioms including recursive function
definitions, iteration, and dynamic dispatch in data layer queries and
updates, and (c) eliminates processing overhead and maintenance issues
caused by transforming between relational, object-oriented, and
semi-structured data paradigms.