Title: Survey of XML Query Languages
1Survey of XML Query Languages
2What is an XML Query Language?
Roughly like SQL but for XML instead of
relational data.
ltemployeesgt ltemployee id1gt ltnamegtJohn
Coltranelt/namegt ltsalarygt152156lt/salarygt lt/emplo
yeegt ltemployee id2gt ltnamegtMaceo
Parkerlt/namegt ltsalarygt82654lt/salarygt lt/employee
gt ltemployee id3gt ltnamegtJosh
Spiegellt/namegt ltsalarygt35250lt/salarygt lt/employe
egt lt/employeesgt
I want all the employees that make more than
50,000.
3The Languages
Chances are, if you ever end up using an XML
query language, you will use XQuery.
XML-QL
The High Bit
XQuery
Lorel
Quilt
SQL/XML
- Almost a W3C recommendation
- Already the de facto standard
- There are many implementations
(ANSI/ISO)
XPath
CXQuery
XML-GL
XSL
XQL
Active XQuery
4Comparative Analysis
- Comparative Analysis of Five XML Query Languages
by Angela Bonifati and Stefano CeriSIGMOD
Record 2000 - 27 Features an XML Query Language should have
- Uses the features to compare 5 languages
- Lorel
- XML-QL
- XML-GL
- XSL
- XQL
- ADDED XQuery
5(No Transcript)
6(No Transcript)
7Expectations
- We expect XQuery to do better than the other 5
languages. - The other languages are roughly grandparents of
XQuery. - XQuery is the de facto standard.
- XQuery will soon be a W3C recommendation.
8XQuery could have done better
- Where it did well
- Integration of XML Schema
- Where it needs improvement
- Insert, update, delete
- Full support for XPointer and XLink
- XQuery working group indicates these features
will be added in the future. - Implementations support features not in the
language specification.
9Integration of XML Schema
- XML Schema / DTD define the structure, content
and semantics of XML documents e.g. xsdinteger - XQuery will never require a XML Schema
- When a schema is available, more static checks
are possible
10Integration of XML Schema
- ltemployeesgt
- ltemployee id1gt
- ltnamegtJohn Coltranelt/namegt
- ltsalarygt152156lt/salarygt
- lt/employeegt
- ltemployee id2gt
- ltnamegtMaceo Parkerlt/namegt
- ltsalarygt82654lt/salarygt
- lt/employeegt
- ltemployee id3gt
- ltnamegtJosh Spiegellt/namegt
- ltsalarygtpeanutslt/salarygt
- lt/employeegt
- lt/employeesgt
Query What is the average salary?
11Integration of XML Schema
- ltemployeesgt
- ltemployee id1gt
- ltnamegtJohn Coltranelt/namegt
- ltsalarygt152156lt/salarygt
- lt/employeegt
- ltemployee id2gt
- ltnamegtMaceo Parkerlt/namegt
- ltsalarygt82654lt/salarygt
- lt/employeegt
- ltemployee id3gt
- ltnamegtJosh Spiegellt/namegt
- ltsalarygtpeanutslt/salarygt
- lt/employeegt
- lt/employeesgt
Query What is the average salary?
12THE END