Requirements and Desiderata for an
XML Query Language
Frank Olken and John McCarthy,
Lawrence Berkeley National Laboratory
November 12, 1998
We are coming to this primarily from the perspective
of database management applications, E-commerce messages,
and (especially) metadata management for DB applications.
It is our view that XML will be extensively used to encode
DB queries and query results, i.e., fragments of databases.
Hence, we are seeking a query language with expressiveness
at least equal to conventional DB query facilities, e.g.,
SQL or OQL.
We believe in the importance of metadata for understanding
data and building plug-and-play applications hence we
are seeking a query language that can query both/either
data and metadata encoded in either XML and/or RDF.
Requirements and Desiderata
at Lawrence Berkeley National Laboratory.
November 12, 1998
- Ability to query multiple documents - We view this as
essential for our applications.
- Integrated treatment of links - In some proposals,
e.g., early XSL proposals, links are not treated as full
We would like to see as much homogeniety as feasible in the
treatment of elements and links..
- Query language for both XML and RDF - preferably as similar
as possible. We need to be able to query both data
- High order query language - We seek the ability to
have variables in query language range over schema elements.
(Note: SQL does not support this.) This facilitates
the development of tools (e.g., mediators)
which dynamically bind to schemas.
- Recursive queries - We would like to be able to specify
regular expressions on paths (i.e., transitive closure
- Uniform treatment of attributes and elements.
XML has two different syntaxes which are often used
equivalently: attributes specifyied in the tags, and
nested elements. A number of XML dialect proposals treat
these as equivalent. We would therefore like a query language
which also did so. Obviously, attributes can not be nested.
- Typed query language and extensible type algebra.
We favor strong typing of the query language and an extensible
type algebra (for consistency/conversion of types) - see
discussion below on measurement units/dimensionality.
- Measurement units/dimensionality types enforced/automatically
converted in query language.
- Ability to query schemas, as well as data. Ability to
query metadata repositories.
- Coordinate query language efforts with schema efforts -
A number of persons have noted that the query language and
schema specification efforts should be closely coordinated.
- Query multi-dimensional tables. Many web/XML documents
contain multi-dimensional tables. Tree-based schema/query
language proposals do not fully capture this structure,
hence make it very clumsy to query.