Skip to content

Instantly share code, notes, and snippets.

@Richard-Degenne
Created June 15, 2019 11:48
Show Gist options
  • Save Richard-Degenne/e9f2d0949ad0aa10b5bd60dff19ee283 to your computer and use it in GitHub Desktop.
Save Richard-Degenne/e9f2d0949ad0aa10b5bd60dff19ee283 to your computer and use it in GitHub Desktop.
@prefix : <http://www.richarddegenne.com/ontology/family#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <http://www.richarddegenne.com/ontology/family> .
<http://www.richarddegenne.com/ontology/family> rdf:type owl:Ontology .
#################################################################
# Annotation properties
#################################################################
### http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled
<http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> rdf:type owl:AnnotationProperty .
#################################################################
# Object Properties
#################################################################
### http://www.richarddegenne.com/ontology/family#isFatherOf
:isFatherOf rdf:type owl:ObjectProperty ;
rdfs:subPropertyOf owl:topObjectProperty ;
rdf:type owl:FunctionalProperty ;
rdfs:domain :Father ;
rdfs:range :Child .
### http://www.richarddegenne.com/ontology/family#playsMonopolyWith
:playsMonopolyWith rdf:type owl:ObjectProperty ;
rdfs:subPropertyOf owl:topObjectProperty ;
rdfs:domain :Adult ;
rdfs:range :Child .
#################################################################
# Data properties
#################################################################
### http://www.richarddegenne.com/ontology/family#name
:name rdf:type owl:DatatypeProperty ;
rdfs:subPropertyOf owl:topDataProperty ;
rdf:type owl:FunctionalProperty ;
rdfs:range xsd:string .
### http://www.richarddegenne.com/ontology/family#temperature
:temperature rdf:type owl:DatatypeProperty ;
rdfs:subPropertyOf owl:topDataProperty ;
rdf:type owl:FunctionalProperty ;
rdfs:range xsd:float .
#################################################################
# Classes
#################################################################
### http://www.richarddegenne.com/ontology/family#Adult
:Adult rdf:type owl:Class .
### http://www.richarddegenne.com/ontology/family#Child
:Child rdf:type owl:Class .
### http://www.richarddegenne.com/ontology/family#Father
:Father rdf:type owl:Class ;
rdfs:subClassOf :Adult .
### http://www.richarddegenne.com/ontology/family#NiceFather
:NiceFather rdf:type owl:Class ;
rdfs:subClassOf :Father .
#################################################################
# Individuals
#################################################################
### http://www.richarddegenne.com/ontology/family#Albert
:Albert rdf:type owl:NamedIndividual ,
:Adult ;
:isFatherOf :AlbertJr ;
:playsMonopolyWith :AlbertJr .
### http://www.richarddegenne.com/ontology/family#AlbertJr
:AlbertJr rdf:type owl:NamedIndividual ,
:Child .
### http://www.richarddegenne.com/ontology/family#Bob
:Bob rdf:type owl:NamedIndividual ,
:Adult ;
:isFatherOf :BobJr ;
:playsMonopolyWith :AlbertJr .
### http://www.richarddegenne.com/ontology/family#BobJr
:BobJr rdf:type owl:NamedIndividual ,
:Child .
#################################################################
# Rules
#################################################################
<father> rdf:type <http://www.w3.org/2003/11/swrl#Variable> .
<child> rdf:type <http://www.w3.org/2003/11/swrl#Variable> .
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment ""^^xsd:string ;
rdfs:label "Nice father definition"^^xsd:string ;
rdf:type <http://www.w3.org/2003/11/swrl#Imp> ;
<http://www.w3.org/2003/11/swrl#body> [ rdf:type <http://www.w3.org/2003/11/swrl#AtomList> ;
rdf:first [ rdf:type <http://www.w3.org/2003/11/swrl#IndividualPropertyAtom> ;
<http://www.w3.org/2003/11/swrl#propertyPredicate> :isFatherOf ;
<http://www.w3.org/2003/11/swrl#argument1> <father> ;
<http://www.w3.org/2003/11/swrl#argument2> <child>
] ;
rdf:rest [ rdf:type <http://www.w3.org/2003/11/swrl#AtomList> ;
rdf:first [ rdf:type <http://www.w3.org/2003/11/swrl#IndividualPropertyAtom> ;
<http://www.w3.org/2003/11/swrl#propertyPredicate> :playsMonopolyWith ;
<http://www.w3.org/2003/11/swrl#argument1> <father> ;
<http://www.w3.org/2003/11/swrl#argument2> <child>
] ;
rdf:rest rdf:nil
]
] ;
<http://www.w3.org/2003/11/swrl#head> [ rdf:type <http://www.w3.org/2003/11/swrl#AtomList> ;
rdf:first [ rdf:type <http://www.w3.org/2003/11/swrl#ClassAtom> ;
<http://www.w3.org/2003/11/swrl#classPredicate> :NiceFather ;
<http://www.w3.org/2003/11/swrl#argument1> <father>
] ;
rdf:rest rdf:nil
]
] .
### Generated by the OWL API (version 4.5.9.2019-02-01T07:24:44Z) https://github.com/owlcs/owlapi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment