knowrob  2.1.0
A Knowledge Base System for Cognition-enabled Robots
owl.h
Go to the documentation of this file.
1 /*
2  * This file is part of KnowRob, please consult
3  * https://github.com/knowrob/knowrob for license details.
4  */
5 
6 #ifndef KNOWROB_SEMWEB_OWL_H
7 #define KNOWROB_SEMWEB_OWL_H
8 
9 #include "string"
10 #include "knowrob/terms/IRIAtom.h"
11 
12 namespace knowrob {
13  namespace owl {
14  constexpr std::string_view prefix = "http://www.w3.org/2002/07/owl#";
15  const IRIAtomPtr imports = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#imports");
16  const IRIAtomPtr versionInfo = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#versionInfo");
17  const IRIAtomPtr inverseOf = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#inverseOf");
18  const IRIAtomPtr Class = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#Class");
19  const IRIAtomPtr Thing = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#Thing");
20  const IRIAtomPtr Restriction = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#Restriction");
21  const IRIAtomPtr ObjectProperty = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#ObjectProperty");
22  const IRIAtomPtr DatatypeProperty = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#DatatypeProperty");
23  const IRIAtomPtr AnnotationProperty = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#AnnotationProperty");
24  const IRIAtomPtr TransitiveProperty = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#TransitiveProperty");
25  const IRIAtomPtr SymmetricProperty = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#SymmetricProperty");
26  const IRIAtomPtr ReflexiveProperty = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#ReflexiveProperty");
27  const IRIAtomPtr NamedIndividual = IRIAtom::Tabled("http://www.w3.org/2002/07/owl#NamedIndividual");
28  }
29 
34  bool isClassIRI(std::string_view iri);
35 
40  bool isInverseOfIRI(std::string_view iri);
41 
46  bool isObjectPropertyIRI(std::string_view iri);
47 
52  bool isDatatypePropertyIRI(std::string_view iri);
53 
58  bool isAnnotationPropertyIRI(std::string_view iri);
59 
64  bool isTransitivePropertyIRI(std::string_view iri);
65 
70  bool isSymmetricPropertyIRI(std::string_view iri);
71 
76  bool isReflexivePropertyIRI(std::string_view iri);
77 } // knowrob::semweb
78 
79 #endif //KNOWROB_SEMWEB_OWL_H
static std::shared_ptr< IRIAtom > Tabled(std::string_view stringForm)
Definition: IRIAtom.cpp:25
const IRIAtomPtr inverseOf
Definition: owl.h:17
const IRIAtomPtr ObjectProperty
Definition: owl.h:21
const IRIAtomPtr TransitiveProperty
Definition: owl.h:24
const IRIAtomPtr NamedIndividual
Definition: owl.h:27
const IRIAtomPtr versionInfo
Definition: owl.h:16
const IRIAtomPtr Restriction
Definition: owl.h:20
constexpr std::string_view prefix
Definition: owl.h:14
const IRIAtomPtr Thing
Definition: owl.h:19
const IRIAtomPtr imports
Definition: owl.h:15
const IRIAtomPtr ReflexiveProperty
Definition: owl.h:26
const IRIAtomPtr AnnotationProperty
Definition: owl.h:23
const IRIAtomPtr Class
Definition: owl.h:18
const IRIAtomPtr DatatypeProperty
Definition: owl.h:22
const IRIAtomPtr SymmetricProperty
Definition: owl.h:25
bool isClassIRI(std::string_view iri)
Definition: owl.cpp:9
bool isSymmetricPropertyIRI(std::string_view iri)
Definition: owl.cpp:27
bool isDatatypePropertyIRI(std::string_view iri)
Definition: owl.cpp:18
IRIAtomPtr iri(std::string_view ns, std::string_view name)
Definition: IRIAtom.cpp:62
std::shared_ptr< IRIAtom > IRIAtomPtr
Definition: IRIAtom.h:57
bool isInverseOfIRI(std::string_view iri)
Definition: owl.cpp:12
bool isTransitivePropertyIRI(std::string_view iri)
Definition: owl.cpp:24
bool isReflexivePropertyIRI(std::string_view iri)
Definition: owl.cpp:30
bool isAnnotationPropertyIRI(std::string_view iri)
Definition: owl.cpp:21
bool isObjectPropertyIRI(std::string_view iri)
Definition: owl.cpp:15