Faculdade de Ciências e Tecnologia

Concepts and Technologies of XML

Code

8283

Academic unit

Faculdade de Ciências e Tecnologia

Department

Departamento de Informática

Credits

6.0

Teacher in charge

Carlos Augusto Isaac Piló Viegas Damásio, João Carlos Gomes Moura Pires

Weekly hours

4

Total hours

56

Teaching language

Português

Objectives

Knowledge:

  • Basic XML concepts (name-spaces, well-formed documents, valid documents, hierarchical data model, data-oriented versus text oriented XML documents, etc.).
  • The role of each of the XML associated technologies such that for validation, description, transforming and processing, querying, linking.
  • The basics for a XML vocabulary definition and the available technologies like DTD, XML schema.
  • The philosophical principle of separation of concerns from content, logic and presentation.
  • The declarative nature of XLST for XML processing; The declarative and functional nature of XQuery.

Skills:

  • To define an XML language for a specific application and to create a DTD or XML Schema.
  • To process XML documents using XSLT and alt least one of the standard APIs.
  • To select, install and configure the servers to build a web based solution.
  • To implement a small/medium size web base application very configurable, using XML technologies.

Design and explore an XML data repository.

Prerequisites

Database concepts. Object Oriented Programming skills

Subject matter

1. Introduction
1.1. Motivations and design options on SGML, HTML, XML
1.2. XML syntactic rules. Entities. Rules for a good markup. Markup styles.
1.3. XML vocabularies for text and for data. Examples and differences.
1.4. XML model document and XPath
1.5. Overview of XML technologies, their roles and status.
1.6. Fundamental approach: separating the format from the content.
2. Validation of XML documents
2.1. DTD
2.2. XML Schema
2.3. Other approaches.
3. Transformation and processing of XML documents
3.1. XSLT
3.2. Other approaches
3.3. The role of XSL:FO
4. XML Databases
4.1. Overview and principles
4.2. XQuery
4.3. XUpdate and XML:DB
5. XML APIs
5.1. DOM
5.2. SAX
6. Metadata and XML

Bibliography

XML in a Nutshell, Third Edition, Elliott Rusty Harold, W. Scott Means. Third edition, 2004, ISBN: 0596007647.

XSLT 2.0 Web Development (Charles F Goldfarb Definitive Xml Series) Dmitry Kirsanov, Prentice Hall PTR (March 25, 2004), ISBN: 0131406353.

XQuery from the Experts: A Guide to the W3C XML Query Language,  Howard Katz, et all.,  Addison-Wesley Professional, 2004., ISBN: 0321180607.

Beginning XML Databases (Wrox Beginning Guides), Gavin Powell, John Wiley & Sons (14 Nov 2006), ISBN: 0471791202

Teaching method

The syllabus is taught in theoretical and laboratory classes. In the former, the main concepts and techniques are addressed. The lab sessions are used to solve small problems for basic training. Some lab sessions are used to setup their team works used for evaluation purpose.

Evaluation method

The evaluation of students include:

  • 1 theoretical individual test, where the knowledge acquired by the students on the concepts and technologies are assessed.
  • 2 practical projects, for 2 students teams, that evaluate their competence on partial subjects.
  • 1 practical project, for 2 students teams, that evaluate their competence on a project that integrates many competences.

The final exam replaces the theoretical individual test.

Courses