owlcpp  v0.3.3~
C++ library for working with OWL ontologies
 All Classes Namespaces Files Functions Macros Pages
query_fact.hpp
Go to the documentation of this file.
1 
6 #ifndef QUERY_FACT_HPP_
7 #define QUERY_FACT_HPP_
8 #include <string>
9 #include <vector>
10 #include "owlcpp/logic/config.hpp"
11 #include "owlcpp/node_id.hpp"
12 #include "owlcpp/exception.hpp"
14 
15 class ReasoningKernel;
16 class TDLConceptExpression;
17 class TDLIndividualExpression;
18 class TDLObjectRoleExpression;
19 
20 namespace owlcpp{
21 
22 struct fact_query_err : public base_exception {};
23 
24 class Triple_store;
25 
33 OWLCPP_LOGIC_DECL TDLConceptExpression* concept(
34  const Node_id nid,
35  const Triple_store& store,
36  ReasoningKernel& kernel
37 );
38 
41 OWLCPP_LOGIC_DECL TDLConceptExpression* concept(
42  const std::string& uri,
43  const std::string& class_term,
44  const Triple_store& store,
45  ReasoningKernel& kernel
46 );
47 
51 OWLCPP_LOGIC_DECL TDLConceptExpression* concept(
52  const std::string& iri,
53  const Triple_store& store,
54  ReasoningKernel& kernel
55 );
56 
59 OWLCPP_LOGIC_DECL TDLIndividualExpression* instance(
60  const Node_id nid,
61  const Triple_store& store,
62  ReasoningKernel& kernel
63 );
64 
65 
68 OWLCPP_LOGIC_DECL TDLIndividualExpression* instance(
69  const std::string& uri,
70  const std::string& instance_term,
71  const Triple_store& store,
72  ReasoningKernel& kernel
73 );
74 
75 /*
76 *******************************************************************************/
77 OWLCPP_LOGIC_DECL TDLObjectRoleExpression* property(
78  const Node_id nid,
79  const Triple_store& store,
80  ReasoningKernel& kernel
81 );
82 
83 
86 OWLCPP_LOGIC_DECL TDLObjectRoleExpression* property(
87  const std::string& uri,
88  const std::string& property_term,
89  const Triple_store& store,
90  ReasoningKernel& kernel
91 );
92 
95 OWLCPP_LOGIC_DECL TDLObjectRoleExpression* property(
96  const std::string& iri,
97  const Triple_store& store,
98  ReasoningKernel& kernel
99 );
100 
103 OWLCPP_LOGIC_DECL bool is_subclass(
104  const std::string& sub,
105  const std::string& super,
106  const Triple_store& store,
107  ReasoningKernel& kernel
108 );
109 
114 OWLCPP_LOGIC_DECL bool can_relate(
115  const std::string& c1,
116  const std::string& p,
117  const std::string& c2,
118  const Triple_store& store,
119  ReasoningKernel& kernel
120 );
121 
124 OWLCPP_LOGIC_DECL bool can_relate(
125  const TDLConceptExpression* c1e,
126  const TDLObjectRoleExpression* pe,
127  const TDLConceptExpression* c2e,
128  ReasoningKernel& kernel
129 );
130 
133 OWLCPP_LOGIC_DECL void get_sub_super(
134  const CE_predicate& pred,
135  std::vector<std::string>& cv,
136  const TDLConceptExpression* ce,
137  const bool super,
138  ReasoningKernel& kernel,
139  const bool direct = false
140 );
141 
150 OWLCPP_LOGIC_DECL void get_sub_super(
151  const std::vector<const CE_predicate*>& pred,
152  std::vector<std::string>& cv,
153  const TDLConceptExpression* ce,
154  const bool super,
155  ReasoningKernel& kernel,
156  const bool direct = false
157 );
158 
165 OWLCPP_LOGIC_DECL void set_top_bottom(ReasoningKernel&);
166 
167 
170 }//namespace owlcpp
171 
172 #endif /* QUERY_FACT_HPP_ */