Lab: OWL-DL: Difference between revisions
No edit summary |
No edit summary |
||
Line 42: | Line 42: | ||
Continue extending the InvestigationOntology from the previous exercise. | Continue extending the InvestigationOntology from the previous exercise. | ||
'''Task.''' Use the ''Individuals by class'' tab and create the following instances of ''owl:Thing'' (for the purpose of the exercise, do not use more specific types!): | '''Task.''' Stop the reasoner if it is running, and add individuals to represent that: | ||
* Robert Mueller lead the Mueller Investigation. | |||
* Paul Manafort was indicted. | |||
* Elizabeth Prelogar was an investigator. | |||
'''Task.''' Start the reasoner again. Have any axioms/triples been added to the ontology? | |||
'''Task.''' Can you do a change that makes your ontology inconsistent? (Save often, so you always have a consistent version to revert to :-)) | |||
''Tip:'' You can declare two classes as ''owl:disjointWith'' one another and set both classes as the ''rdf:type'' of some individual. | |||
'''Task.''' Revert the ontology back to a consistent state. Use the ''Individuals by class'' tab and create the following instances of ''owl:Thing'' (for the purpose of the exercise, do not use more specific types!): | |||
* John L Smith (alias Jack Smith) | * John L Smith (alias Jack Smith) | ||
* Investigation of role in the US Capitol Attack | * Investigation of role in the US Capitol Attack | ||
Line 55: | Line 66: | ||
'''Task''' With the reasoner still running, use ''File -> Export inferred axioms as ontology...'' to save the reasoning results to a new file. Chose a base URI and file name for the new ontology. | '''Task''' With the reasoner still running, use ''File -> Export inferred axioms as ontology...'' to save the reasoning results to a new file. Chose a base URI and file name for the new ontology. | ||
(Note that everything from the old ontology is not exported by default. If something is missing, you can try to export again or use ''Tools -> Merge'' to combine the old (handmade) and new (inferred by HermiT) ontologies.) | (Note that everything from the old ontology is not exported by default. You will have to check off boxes to select what to export. If something is missing, you can try to export again or use ''Tools -> Merge'' to combine the old (handmade) and new (inferred by HermiT) ontologies.) | ||
Add an axiom to the investigation leader class to make sure that every investigator that is leading | '''Task.''' (We assume you have still not added John L Smith as an investigation leader.) Add an axiom to the investigation leader class to make sure that every investigator that is leading an investigation is an investigation leader. Re-run the HermiT reasoner, and check that John L Smith is now an investigation leader, | ||
'''Task.''' | '''Task.''' Use Manchester-OWL syntax to define the class: | ||
Use Manchester-OWL syntax to define the class: | |||
* InvestigationTeam, which is a ''foaf:Group'' with at least one members, so that all its members are ''Investigators''. | * InvestigationTeam, which is a ''foaf:Group'' with at least one members, so that all its members are ''Investigators''. | ||
Revision as of 14:31, 11 April 2023
Topics
- OWL ontology editing in Protégé.
- Manchester-OWL syntax
- HermiT reasoning.
Useful materials
Readings:
- Protégé 5 Documentation
- OWL2 Primer (from S08): Show Manchester Syntax
Protégé:
Vocabularies and terms (from S09 and same as previous week) - this is for reference: you will not need them all :-):
- Friend of a Friend (FOAF) (if necessary follow the link to the 2004 version)
- Event Ontology (event)
- Time ontology in OWL (time, OWL-time)
- geo: World Geodetic Standard (WGS) 84
- Dublin Core (DC)
- SKOS - Simple Knowledge Organization System Home Page
- Semantic Interlinked Online Communities (SIOC)
Classes and methods
RDF:
- type
RDFS:
- subClassOf, subPropertyOf, domain, range
Basic OWL:
- sameAs, equivalentClass, equivalentProperty, differentFrom, disjointWith, inverseOf
- ReflexiveProperty, IrreflexiveProperty, SymmetricProperty, AsymmetricProperty, TransitiveProperty, FunctionalProperty, InverseFunctionalProperty
Complex OWL:
- oneOf, unionOf, intersectionOf. complementOf
- Restriction, onProperty
- someValuesFrom, allValuesFrom, hasValue
- cardinality, minCardinality, maxCardinality
- qualifiedCardinality, minQualifiedCardinality, maxQualifiedCardinality, onClass
Tasks
Continue extending the InvestigationOntology from the previous exercise.
Task. Stop the reasoner if it is running, and add individuals to represent that:
- Robert Mueller lead the Mueller Investigation.
- Paul Manafort was indicted.
- Elizabeth Prelogar was an investigator.
Task. Start the reasoner again. Have any axioms/triples been added to the ontology?
Task. Can you do a change that makes your ontology inconsistent? (Save often, so you always have a consistent version to revert to :-))
Tip: You can declare two classes as owl:disjointWith one another and set both classes as the rdf:type of some individual.
Task. Revert the ontology back to a consistent state. Use the Individuals by class tab and create the following instances of owl:Thing (for the purpose of the exercise, do not use more specific types!):
- John L Smith (alias Jack Smith)
- Investigation of role in the US Capitol Attack
- Investigation of Trump's handling of grade documents
Create Object property assertions to state that:
- John L Smith is investigating (but not leading) the Investigation of role in the US Capitol Attack
- John L Smith is investigating (but not leading) the Investigation of Trump's handling of grade documents
Task. Start the reasoner again. Does it add more axioms/triples (marked in yellow) to the ontology?
Task With the reasoner still running, use File -> Export inferred axioms as ontology... to save the reasoning results to a new file. Chose a base URI and file name for the new ontology.
(Note that everything from the old ontology is not exported by default. You will have to check off boxes to select what to export. If something is missing, you can try to export again or use Tools -> Merge to combine the old (handmade) and new (inferred by HermiT) ontologies.)
Task. (We assume you have still not added John L Smith as an investigation leader.) Add an axiom to the investigation leader class to make sure that every investigator that is leading an investigation is an investigation leader. Re-run the HermiT reasoner, and check that John L Smith is now an investigation leader,
Task. Use Manchester-OWL syntax to define the class:
- InvestigationTeam, which is a foaf:Group with at least one members, so that all its members are Investigators.