Skip to content

Instantly share code, notes, and snippets.

@balhoff
Created February 24, 2022 17:21
Show Gist options
  • Save balhoff/c81cf76102f5e541620cdcc14ffb214d to your computer and use it in GitHub Desktop.
Save balhoff/c81cf76102f5e541620cdcc14ffb214d to your computer and use it in GitHub Desktop.
An example OWL ontology (functional syntax) using RDF lists (against the spec)
Prefix(:=<http://example.org/>)
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#>)
Ontology(<http://example.org/>
Declaration(Class(:Book))
Declaration(Class(:Library))
Declaration(ObjectProperty(:contains))
Declaration(ObjectProperty(:has_book))
Declaration(ObjectProperty(:has_books))
Declaration(ObjectProperty(rdf:first))
Declaration(ObjectProperty(rdf:rest))
Declaration(NamedIndividual(:moby_dick))
Declaration(NamedIndividual(:the_library))
Declaration(NamedIndividual(:the_republic))
Declaration(NamedIndividual(rdf:nil))
############################
# Object Properties
############################
# Object Property: rdf:first (rdf:first)
SubObjectPropertyOf(rdf:first :contains)
############################
# Classes
############################
# Class: :Library (:Library)
SubClassOf(:Library ObjectAllValuesFrom(:has_books ObjectAllValuesFrom(:contains :Book)))
############################
# Named Individuals
############################
# Individual: :the_library (:the_library)
ClassAssertion(:Library :the_library)
ObjectPropertyAssertion(:has_books :the_library _:genid2148473052)
ObjectPropertyAssertion(rdf:first _:genid2148473052 :the_republic)
ObjectPropertyAssertion(rdf:rest _:genid2148473052 _:genid2148473053)
ObjectPropertyAssertion(rdf:first _:genid2148473053 :moby_dick)
ObjectPropertyAssertion(rdf:rest _:genid2148473053 rdf:nil)
SubObjectPropertyOf(ObjectPropertyChain(:has_books :contains) :has_book)
SubObjectPropertyOf(ObjectPropertyChain(rdf:rest :contains) :contains)
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment