6 #ifndef TRIPLE_STORE_HPP_
7 #define TRIPLE_STORE_HPP_
8 #include "owlcpp/rdf/detail/map_traits.hpp"
48 typedef detail::Map_traits<Triple_store> traits;
51 typedef traits::map_std_type map_std_type;
52 typedef traits::map_ns_type map_ns_type;
53 typedef traits::map_node_type map_node_type;
54 typedef traits::map_doc_type map_doc_type;
55 typedef traits::map_triple_type map_triple_type;
60 : map_std_(map_std_type::get(
Nodes_owl()))
63 template<
class Nodes_std>
explicit Triple_store(Nodes_std
const& nodes_std)
64 : map_std_(map_std_type::get(nodes_std))
67 map_std_type
const& map_std()
const {
return map_std_;}
68 map_ns_type
const& map_ns()
const {
return map_ns_;}
69 map_node_type
const& map_node()
const {
return map_node_;}
70 map_doc_type
const& map_doc()
const {
return map_doc_;}
71 map_triple_type
const& map_triple()
const {
return map_triple_;}
74 using Map_std_ns_crtpb<Triple_store>::operator[];
75 using Map_std_node_crtpb<Triple_store>::operator[];
76 using Map_doc_crtpb<Triple_store>::operator[];
77 using Map_std_ns_crtpb<Triple_store>::at;
79 using Map_doc_crtpb<Triple_store>::at;
84 using Map_std_node_crtpb<Triple_store>::find_node_iri;
85 using Crtpb_ns_node_iri<Triple_store>::find_node_iri;
87 using Map_std_ns_crtpb<Triple_store>::find;
89 using Map_doc_crtpb<Triple_store>::find;
91 using Map_std_ns_crtpb<Triple_store>::insert;
95 map_std_type
const& map_std_;
97 map_node_type map_node_;
98 map_doc_type map_doc_;
99 map_triple_type map_triple_;
Node_id insert_node_iri(const Ns_id nsid, std::string const &name)
Insert IRI node.
Definition: map_std_node_crtpb.hpp:80
Definition: nodes_std.hpp:21
Definition: triple_store.hpp:57
Node_id insert_node_iri(std::string const &iri)
if not already present, store IRI reference node
Definition: crtpb_ns_node_iri.hpp:24
Definition: map_node_blank_crtpb.hpp:19
Definition: exception.hpp:13
Definition: map_node_literal_crtpb.hpp:19
void insert(Triple const &t)
Insert a new triple void insert( const Node_id subj, const Node_id pred, const Node_id obj...
Definition: map_triple_crtpb.hpp:86
Definition: map_triple_crtpb.hpp:19
Definition: crtpb_ns_node_iri.hpp:16
Definition: map_std_node_crtpb.hpp:20
node_type const * find(const Node_id id) const
Definition: map_std_node_crtpb.hpp:59
Store namespace IRIs, RDF nodes, document infos, and RDF triples.
Definition: triple_store.hpp:32
node_type const & at(const Node_id id) const
Definition: map_std_node_crtpb.hpp:51
Definition: map_doc_crtpb.hpp:20
Definition: map_std_ns_crtpb.hpp:20