Special Topics in Software Engineering:
Semantic Web Technologies: Fundamentals, Tools, Case Studies and Best Practices
Ontologies have become one of the fundamental elements in developing intelligent systems. W3C Semantic Web stack of specifications has greatly helped with promoting ontology-based knowledge representation. Semantic web technologies enable developers to represent and interlink knowledge on the web scale or even on enterprise scale to a so-called "web of data", which is often referred to now as the Semantic Web.
During the course, we will present concepts, technologies and tools available in the field of semantic web. We will also investigate their current impact on the industry.
We will present typical scenarios for using ontologies and semantic web technologies. We will present the pros and cons of such an approach from a conceptual and technical point of view. We will show best practices for using semantic web technologies, such as RDF, OWL and SPARQL. From the technical point of view we will also point out how to efficiently use available tools and libraries, such as Jena. We will not only present the theory, but also and above all, practical experiences while developing semantics enabled solutions. These include techniques on efficiently integrating heterogeneous data sources and services. We will present good approaches on manipulating data in object-oriented efficiently systems, especially while mapping instances from the semantic web to objects.
We will present some success stories that are based on semantic web technologies. According to these success stories and our own experiences, we will discuss also the future of using semantic web technologies.
Dr. Luka Pavlič
The course is at an introductory level. Software engineering and knowledge management basic skills are, however, beneficial. Knowledge about object-oriented programming concepts is also not strictly required, but is an advantage for following the tutorial. Technically, Java programming language will be used.
Students will have to do a project and send it to the lecturer. The marks for this course will be based on the project and a written test.