Modelling Data on the Web

Unit code: COMP60411
Credit Rating: 15
Unit level: Level 6
Teaching period(s): Semester 1
Offered by School of Computer Science
Available as a free choice unit?: Y




This course unit aims to give students a good understanding of the core concepts of data modelling, and will give them some familiarity with various formalisms, APIs, and languages that have been developed for modelling data on the web, as well as various design and representation issues that arise. Students will learn how to compare different data modelling formalisms, and how to design or analyse a data management system, i.e., whether it makes good use of the features provided by the formalisms used, and whether it fits its purpose.

Laboratory sessions will ground the abstract notions on practical cases and tools.


This course unit discusses formalisms to capture, describe, transform and query semi-structured data (in particular XML, different schema languages, XQuery, etc.), and looks at their respective strengths and weakness. It will provide students with the background and skills to work with these and similar formalisms and tools, and with the understanding of relevant features to analyze their strengths and weaknesses.

Learning outcomes

Learning outcomes are detailed on the COMP60411 course unit syllabus page on the School of Computer Science's website for current students.

Employability skills

  • Analytical skills
  • Problem solving
  • Research
  • Written communication

Assessment methods

  • Written exam - 50%
  • Written assignment (inc essay) - 50%


          • Introduction: four fundamental concepts of data modelling, i.e., core data models, schema languages, query languages, and update mechanisms 

          • Tree data and formalisms (XML, JSON)

          • Schema Languages for tree data (DTDs, XML Schema, JSON Schema, and more)

          • Query Languages for tree data (XPath, XQuery)

          • APIs for tree data (DOM, SAX, ...)

          • Updating tree data and robustness

          • Graph data and formalisms (RDF, GraphML)

          • Schema Languages for graph data (RDFS)

          • Query Languages for graph data (SPARQL)

          • APIs for graph data

          • Updating graph data and robustness

Recommended reading

COMP60411 does not have a specified reading list.

Feedback methods

Weekly coursework will be collected via Blackboard, and feedback is provided through the same mechanism.

Study hours

  • Lectures - 20 hours
  • Practical classes & workshops - 15 hours
  • Independent study hours - 115 hours

Teaching staff

Ulrike Sattler - Unit coordinator

▲ Up to the top