pericles domain specific modelling - ‘eye of the storm: preserving digital content in an...
TRANSCRIPT
GRANT AGREEMENT: 601138 | SCHEME FP7 ICT 2011.4.3 Promoting and Enhancing Reuse of Information throughout the Content Lifecycle taking account of Evolving Semantics [Digital Preservation]
“This project has received funding from the European Union’s Seventh Framework Programme for research, technological development and demonstration under grant agreement no601138”.
DOMAIN SPECIFIC MODELLINGStratos Kontopoulos, Panos Mitzias (CERTH/ITI)
“... a formal, explicit specification of a shared conceptualization...” [Studer et al., 1998]
Upper ontology: A model of the common objects that are generally applicable across multiple knowledge domains. Domain ontology: A model of concepts that belong to a specific domain or part of the world.
What is an Ontology?
machine readable with
computational semantics
unambiguous concepts, properties,
functions, axioms definition
commonly accepted
consensual knowledge
abstract, simplified model
of a domain
[Studer et al., 1998] Studer, R., Benjamins, V.R. and Fensel, D. (1998), Knowledge engineering: Principles and methods. Data & Knowledge Engineering, Elsevier Ltd, Vol. 25, Issues 1-2, pp. 161-197
◦ Classes (concepts)Superclass/subclass
relationship◦ Properties (relationships)
Subject → Predicate → Object◦ Axioms, restrictions and
constraints◦ Individuals (instances)
OWL - the Web Ontology Language
Key Notions
Pros:◦Variety of existing tools for representation,
consistency checking, reasoning, risk assessment etc.
◦Great fit for model-driven DP → queries & rules.Cons:◦Not fully mature technologies yet.◦Significant expertise & effort needed.
Why PERICLES likes Ontologies?
PERICLES Models▶ LRM -
ontology for modelling linked resources
▶DEM – formalism for digital ecosystems
▶Domain ontologies
◦ Ontology editor developed by Stanford University
◦ Free and open-source◦ Version 4.3 will be used in the examples
◦ Current version: 5.1.0◦ Also available as a web application
Exercise 1 – Create an ontology for digital videos
Video
CodecContainer
container1
video1
codec1
hasCodechasContainer
hasDuration
video2
codec2
Integer(e.g. 120)
Tasks:1. Open Protégé.2. Create classes Video, Codec and Container.3. Create object properties hasCodec and
hasContainer.4. Create datatype property hasDuration.5. Create instances for each class (e.g. video1, codec1,
etc.).6. Set the duration for each video.7. Connect instances using object properties.
Exercise 1 – Create an Ontology for Digital Videos
◦Why start from scratch? There is almost always an available third-party ontology that provides a useful starting point for our own ontology.
◦What do I gain? ◦Save the effort and time.◦Use validated and well-established ontologies.◦Take advantage of others’ domain expertise.◦Interact with the tools that use other ontologies
Consider Reuse
◦What to reuse? ◦Domain-specific ontologies◦Upper-level ontologies◦Ontology libraries◦Other resources
◦How is it done? Let’s go to exercise 2!
Consider Reuse
Tasks:1.Open Protégé and create a new ontology.2.Import the Digital Video ontology design
pattern from http://mklab.iti.gr/pericles/DigitalVideo_ODP.owl
3.Add a subclass of DigitalVideo called AnimationVideo.
Exercise 2 – Extend an existing ontology
◦What is a reasoner? A piece of software able to infer logical consequences.
◦What does it do? ◦Derives implicit information from explicitly
asserted knowledge.◦Performs consistency checking and validates the
ontology schema and content.◦Known reasoners: HermiT, Pellet, FaCT++,
Drools
Reasoners
Tasks:1.Run HermiT reasoner and check the inferred
information for class AnimationVideo.2.Stop the reasoner.3.Create instances for classes AnimationVideo
and VideoStream (e.g. shrek and videostream1).
4.Connect these two instances with property hasAudioStream.
5.Run HermiT reasoner and check results.6.Stop the reasoner and try to correct the errors!
Exercise 3 – Perform reasoning
◦Common inconsistencies◦Incompatible domain and range definitions for
transitive, symmetric, or inverse properties.◦Cardinality properties◦Requirements on property values can conflict
with domain and range restrictions.◦Solution: Specialized software (e.g. OOPS! -
OntOlogy Pitfall Scanner!)
Validation
Tasks:1.Visit oops.linkeddata.es2.Scan the Digital Video ontology with URI
http://mklab.iti.gr/pericles/DigitalVideo_ODP.owl
3.Check inconsistencies
Exercise 4 – Validate the ontology
◦Linked Data: The concept of Semantic Web to create links between datasets.
◦DBpedia: ◦Linked Data source with structured information
from Wikipedia.◦Available for querying via SPARQL language.◦Allows interlinking of the DBpedia dataset with
other datasets on the web.
Data Interlinkage
Tasks:1.Locate the instance of Shrek that we created.2.Add the seeAlso annotation to
http://dbpedia.org/resource/Shrek
Exercise 5 – Link with DBPedia