XML and Databases XML and Databases (CS 345b) (CS 345b) Daniela - - PowerPoint PPT Presentation
XML and Databases XML and Databases (CS 345b) (CS 345b) Daniela - - PowerPoint PPT Presentation
XML and Databases XML and Databases (CS 345b) (CS 345b) Daniela Florescu (dflorescu@mac.com) Daniela Florescu (dflorescu@mac.com) Donald Kossmann (donaldk@inf.ethz.ch) Donald Kossmann (donaldk@inf.ethz.ch) Organization Organization
2
Organization Organization
Instructors
Instructors
Daniela Florescu:
Daniela Florescu: dflorescu@mac.com dflorescu@mac.com
Donald Kossmann:
Donald Kossmann: donaldk@inf.ethz.ch donaldk@inf.ethz.ch
TA
TA
Anish Das Sarma:
Anish Das Sarma: anishds@stanford.edu anishds@stanford.edu
Office Hours
Office Hours
Mondays, Wednesdays: 3 - 4 pm, Gates #414 (tentative)
Mondays, Wednesdays: 3 - 4 pm, Gates #414 (tentative)
Structure + Grades
Structure + Grades
Classes
Classes
Homework: 2-3 assingments (20%)
Homework: 2-3 assingments (20%)
Project (50%)
Project (50%)
Exams (30%): midterm (Feb. 14), final (March 14)
Exams (30%): midterm (Feb. 14), final (March 14)
Course Web Page:
Course Web Page: http://www.stanford.edu/class/cs345b http://www.stanford.edu/class/cs345b
3
Goals Goals
Overview of XML Technologies
Overview of XML Technologies
„
„Impress your boss“ Impress your boss“
Follow standards, products, recent developments
Follow standards, products, recent developments
Use XML for projects (e.g., Mashups)
Use XML for projects (e.g., Mashups)
Advantages, disadvantages of XML technologies
Advantages, disadvantages of XML technologies
Typical application scenarios
Typical application scenarios
Evaluate products (critically)
Evaluate products (critically)
Own developments
Own developments
Packaging of Technologies, Abstractions
Packaging of Technologies, Abstractions
Compensate for missing functionality
Compensate for missing functionality
4
References References
http://w3c.org
http://w3c.org
Most general XML standards
Most general XML standards
http://
http://www.oasis-open.org www.oasis-open.org
More specific, industrial standards
More specific, industrial standards
http://
http://www.informatik.uni-trier.de www.informatik.uni-trier.de/~ /~ley ley / /db db
Database of research literature
Database of research literature
Product information from vendors
Product information from vendors
5
Tools Tools
Oxygen, XML Spy, Stylus Studio
Oxygen, XML Spy, Stylus Studio
XML Editor, Schema Editor, Query Editor
XML Editor, Schema Editor, Query Editor
Apache Xerxes and family
Apache Xerxes and family
XML Parser, XML Schema validator, XSLT Engine
XML Parser, XML Schema validator, XSLT Engine
MXQuery, Saxon, …
MXQuery, Saxon, …
XQuery Engines
XQuery Engines
(complete list at W3C Web site)
(complete list at W3C Web site)
6
Schedule Schedule
final exam 3/14 Semantic Web 3/12 Implementation, XQuery Engines 2/28 - 3/7 Data Integration (external presenter) 2/26 IR, XQuery FullText 2/21 RSS, Atom, pub/sub 2/19 midterm exam 2/14 XQuery, XSLT, Updates, XQueryP 1/29 - 2/12 Web Services, REST, Mashups 1/24 basics: namespaces, InfoSet, schema, ... 1/17 - 1/22 intro & motivation 1/10
7
Overview (ctd.) Overview (ctd.)
M4: XML and relational databases
M4: XML and relational databases
Shredding: Storing XML in tables
Shredding: Storing XML in tables
SQL / XML Standard
SQL / XML Standard
Products (IBM, Microsoft, Oracle)
Products (IBM, Microsoft, Oracle)
M5: Implementation: Storage + Processing
M5: Implementation: Storage + Processing
M6: Web Services
M6: Web Services
SOAP, WSDL, UDDI
SOAP, WSDL, UDDI
BPEL and XL
BPEL and XL
M7: Information Filtering and RSS
M7: Information Filtering and RSS
M8: Semantic Web
M8: Semantic Web
M9: Outlook
M9: Outlook
8
Project Project
Carry out in groups of 2-3 students
Carry out in groups of 2-3 students
Make a proposal after two weeks (Jan. 28)
Make a proposal after two weeks (Jan. 28)
Mashups
Mashups
Phase 1: build an interesting Web Service
Phase 1: build an interesting Web Service
Phase 2: build a Mashup with other Web Services
Phase 2: build a Mashup with other Web Services
Suggestions for other projects (if you are eager)
Suggestions for other projects (if you are eager)
XQuery benchmark
XQuery benchmark
Testing compliance of XQuery engines
Testing compliance of XQuery engines
Run XQuery on a PS3 (or so)
Run XQuery on a PS3 (or so)
RSS Aggregator in XQuery
RSS Aggregator in XQuery
extend XQuery engine with cool new functionality
extend XQuery engine with cool new functionality
... (ask us for more suggestions)
... (ask us for more suggestions)