An ontology is created in a similar way as a d3web knowledge base using the ontology markup.
%%Ontology @uses: myPackageName %For the name myPackageName please use the name of the package that you used for the ontology definitions.
Ontologies in KnowWE are based on the RDF standard (http://www.w3.org/TR/REC-rdf-syntax/). In RDF every resource is identified by a full qualified URI name. For brevity, KnowWE uses shortened identifier such as rdf for http://www.w3.org/1999/02/22-rdf-syntax-ns#. The resource http://www.w3.org/1999/02/22-rdf-syntax-ns#type therefore is called rdf:type in KnowWE. Ontology entities newly created within the wiki are created in the ontology repository under the so-called local namespace, that is the URL referring to the wiki installation URL. On the wiki pages, the local namespace (lns) is ommitted.
The following example defines the package name myPackageName and creates a new ontology using this package.
%%Ontology @uses: myPackageName % %%Package myPackageName %%Turtle :System rdf:type owl:Class . :KnowWE rdf:type :System ; rdfs:label "KnowWE Wiki" . %
On the same page, the Turtle markup is used to define an owl:Class System (in the local namespace) and an instance of System with the name KnowWE. Additionally, the label "KnowWE Wiki" is defined.
By attaching an ontology-file to this page (containing the ontology in any standard ontology format) an ontology can be imported into the KnowWE repository as follows:
%%Ontology @import: movie-ontology.owl %
Note: For this example a file named movie-ontology.owl needs to be attached to this page!
The following markups can be used to create ontology entities (under local namespace if the namespace prefix is omitted):
Beside the local namespace, also other namespaces may freely be defined using the Namespace markup. For sparql queries in the SPARQL markup, always a namespace needs to be defined (including lns: for the local namespace) for triple patterns of a query.