pub struct RdfData { /* private fields */ }
Expand description
Generic abstraction that represents RDF Data which can be behind SPARQL endpoints or an in-memory graph or both The triples in RdfData are taken as the union of the triples of the endpoints and the in-memory graph
Implementations§
Source§impl RdfData
impl RdfData
pub fn new() -> RdfData
Sourcepub fn check_store(&mut self) -> Result<(), RdfDataError>
pub fn check_store(&mut self) -> Result<(), RdfDataError>
Checks if the Store has been initialized
By default, the RDF Data Store is not initialized as it is expensive and is only required for SPARQL queries
Sourcepub fn from_graph(graph: SRDFGraph) -> Result<RdfData, RdfDataError>
pub fn from_graph(graph: SRDFGraph) -> Result<RdfData, RdfDataError>
Creates an RdfData from an in-memory RDF Graph
pub fn clean_all(&mut self)
Sourcepub fn clean_graph(&mut self)
pub fn clean_graph(&mut self)
Cleans the in-memory graph
Sourcepub fn merge_from_reader<R>(
&mut self,
read: R,
format: &RDFFormat,
base: Option<&str>,
reader_mode: &ReaderMode,
) -> Result<(), RdfDataError>where
R: Read,
pub fn merge_from_reader<R>(
&mut self,
read: R,
format: &RDFFormat,
base: Option<&str>,
reader_mode: &ReaderMode,
) -> Result<(), RdfDataError>where
R: Read,
Merge the in-memory graph with the graph read from a reader
Sourcepub fn from_endpoint(endpoint: SRDFSparql) -> RdfData
pub fn from_endpoint(endpoint: SRDFSparql) -> RdfData
Creates an RdfData from an endpoint
Sourcepub fn add_endpoint(&mut self, endpoint: SRDFSparql)
pub fn add_endpoint(&mut self, endpoint: SRDFSparql)
Adds a new endpoint to the list of endpoints
Sourcepub fn prefixmap_in_memory(&self) -> PrefixMap
pub fn prefixmap_in_memory(&self) -> PrefixMap
Gets the PrefixMap from the in-memory graph
pub fn show_blanknode(&self, bn: &BlankNode) -> String
pub fn show_literal(&self, lit: &Literal) -> String
pub fn serialize<W>(
&self,
format: &RDFFormat,
writer: &mut W,
) -> Result<(), RdfDataError>where
W: Write,
Trait Implementations§
Source§impl FocusRDF for RdfData
impl FocusRDF for RdfData
Source§fn get_focus_as_term(&self) -> Result<&Self::Term, RDFParseError>
fn get_focus_as_term(&self) -> Result<&Self::Term, RDFParseError>
Get the current focus as a Term
Source§fn get_focus_as_subject(&self) -> Result<Self::Subject, RDFParseError>
fn get_focus_as_subject(&self) -> Result<Self::Subject, RDFParseError>
Get the current focus as a Subject
Source§impl SRDF for RdfData
impl SRDF for RdfData
fn predicates_for_subject( &self, _subject: &<RdfData as SRDFBasic>::Subject, ) -> Result<HashSet<<RdfData as SRDFBasic>::IRI>, <RdfData as SRDFBasic>::Err>
fn objects_for_subject_predicate( &self, subject: &<RdfData as SRDFBasic>::Subject, pred: &<RdfData as SRDFBasic>::IRI, ) -> Result<HashSet<<RdfData as SRDFBasic>::Term>, <RdfData as SRDFBasic>::Err>
fn subjects_with_predicate_object( &self, pred: &<RdfData as SRDFBasic>::IRI, object: &<RdfData as SRDFBasic>::Term, ) -> Result<HashSet<<RdfData as SRDFBasic>::Subject>, <RdfData as SRDFBasic>::Err>
fn triples_with_predicate( &self, pred: &<RdfData as SRDFBasic>::IRI, ) -> Result<Vec<Triple<RdfData>>, <RdfData as SRDFBasic>::Err>
fn outgoing_arcs( &self, subject: &<RdfData as SRDFBasic>::Subject, ) -> Result<HashMap<<RdfData as SRDFBasic>::IRI, HashSet<<RdfData as SRDFBasic>::Term>>, <RdfData as SRDFBasic>::Err>
fn incoming_arcs( &self, _object: &<RdfData as SRDFBasic>::Term, ) -> Result<HashMap<<RdfData as SRDFBasic>::IRI, HashSet<<RdfData as SRDFBasic>::Subject>>, <RdfData as SRDFBasic>::Err>
Source§fn outgoing_arcs_from_list(
&self,
subject: &<RdfData as SRDFBasic>::Subject,
preds: &[<RdfData as SRDFBasic>::IRI],
) -> Result<(HashMap<<RdfData as SRDFBasic>::IRI, HashSet<<RdfData as SRDFBasic>::Term>>, Vec<<RdfData as SRDFBasic>::IRI>), <RdfData as SRDFBasic>::Err>
fn outgoing_arcs_from_list( &self, subject: &<RdfData as SRDFBasic>::Subject, preds: &[<RdfData as SRDFBasic>::IRI], ) -> Result<(HashMap<<RdfData as SRDFBasic>::IRI, HashSet<<RdfData as SRDFBasic>::Term>>, Vec<<RdfData as SRDFBasic>::IRI>), <RdfData as SRDFBasic>::Err>
get outgoing arcs from a
node
taking into account only a controlled list of preds
It returns a HashMap with the outgoing arcs and their values and a list of the predicates that have values and are not in the controlled list.Source§impl SRDFBasic for RdfData
impl SRDFBasic for RdfData
Source§type Err = RdfDataError
type Err = RdfDataError
RDF errors
fn prefixmap(&self) -> Option<PrefixMap>
Source§fn subject_as_iri(
subject: &<RdfData as SRDFBasic>::Subject,
) -> Option<<RdfData as SRDFBasic>::IRI>
fn subject_as_iri( subject: &<RdfData as SRDFBasic>::Subject, ) -> Option<<RdfData as SRDFBasic>::IRI>
Returns the RDF subject as an IRI if it is an IRI, None if it isn’t
Source§fn subject_as_bnode(
subject: &<RdfData as SRDFBasic>::Subject,
) -> Option<<RdfData as SRDFBasic>::BNode>
fn subject_as_bnode( subject: &<RdfData as SRDFBasic>::Subject, ) -> Option<<RdfData as SRDFBasic>::BNode>
Returns the RDF subject as a Blank Node if it is a blank node, None if it isn’t
Source§fn subject_is_iri(subject: &<RdfData as SRDFBasic>::Subject) -> bool
fn subject_is_iri(subject: &<RdfData as SRDFBasic>::Subject) -> bool
Returns
true
if the subject is an IRISource§fn subject_is_bnode(subject: &<RdfData as SRDFBasic>::Subject) -> bool
fn subject_is_bnode(subject: &<RdfData as SRDFBasic>::Subject) -> bool
Returns
true
if the subject is a Blank Nodefn term_as_iri( object: &<RdfData as SRDFBasic>::Term, ) -> Option<&<RdfData as SRDFBasic>::IRI>
fn term_as_bnode( object: &<RdfData as SRDFBasic>::Term, ) -> Option<<RdfData as SRDFBasic>::BNode>
fn term_as_literal( object: &<RdfData as SRDFBasic>::Term, ) -> Option<<RdfData as SRDFBasic>::Literal>
fn term_as_object(term: &<RdfData as SRDFBasic>::Term) -> Object
fn object_as_term(obj: &Object) -> <RdfData as SRDFBasic>::Term
fn term_is_iri(object: &<RdfData as SRDFBasic>::Term) -> bool
fn term_is_bnode(object: &<RdfData as SRDFBasic>::Term) -> bool
fn term_is_literal(object: &<RdfData as SRDFBasic>::Term) -> bool
fn term_as_subject( object: &<RdfData as SRDFBasic>::Term, ) -> Option<<RdfData as SRDFBasic>::Subject>
fn subject_as_term( subject: &<RdfData as SRDFBasic>::Subject, ) -> <RdfData as SRDFBasic>::Term
fn lexical_form(literal: &<RdfData as SRDFBasic>::Literal) -> &str
fn lang(literal: &<RdfData as SRDFBasic>::Literal) -> Option<String>
fn datatype( literal: &<RdfData as SRDFBasic>::Literal, ) -> <RdfData as SRDFBasic>::IRI
fn iri_s2iri(iri_s: &IriS) -> <RdfData as SRDFBasic>::IRI
fn term_s2term(term: &Term) -> <RdfData as SRDFBasic>::Term
fn bnode_id2bnode(id: &str) -> <RdfData as SRDFBasic>::BNode
fn iri_as_term(iri: <RdfData as SRDFBasic>::IRI) -> <RdfData as SRDFBasic>::Term
fn iri_as_subject( iri: <RdfData as SRDFBasic>::IRI, ) -> <RdfData as SRDFBasic>::Subject
fn bnode_as_term( bnode: <RdfData as SRDFBasic>::BNode, ) -> <RdfData as SRDFBasic>::Term
fn bnode_as_subject( bnode: <RdfData as SRDFBasic>::BNode, ) -> <RdfData as SRDFBasic>::Subject
fn iri2iri_s(iri: &<RdfData as SRDFBasic>::IRI) -> IriS
fn qualify_iri(&self, node: &<RdfData as SRDFBasic>::IRI) -> String
fn qualify_subject(&self, subj: &<RdfData as SRDFBasic>::Subject) -> String
fn qualify_term(&self, term: &<RdfData as SRDFBasic>::Term) -> String
Source§fn resolve_prefix_local(
&self,
prefix: &str,
local: &str,
) -> Result<IriS, PrefixMapError>
fn resolve_prefix_local( &self, prefix: &str, local: &str, ) -> Result<IriS, PrefixMapError>
Resolves a a prefix and a local name and obtains the corresponding full
IriS
fn term_as_boolean(object: &Self::Term) -> Option<bool>
fn object_as_subject(obj: &Object) -> Option<Self::Subject>
fn literal_as_boolean(literal: &Self::Literal) -> Option<bool>
fn literal_as_integer(literal: &Self::Literal) -> Option<isize>
fn literal_as_string(literal: &Self::Literal) -> Option<String>
fn term_as_iri_s(term: &Self::Term) -> Option<IriS>
fn term_as_integer(term: &Self::Term) -> Option<isize>
fn term_as_string(term: &Self::Term) -> Option<String>
fn subject_as_object(subject: &Self::Subject) -> Object
fn datatype_str(literal: &Self::Literal) -> String
fn iri_s2subject(iri_s: &IriS) -> Self::Subject
fn iri_s2term(iri_s: &IriS) -> Self::Term
fn bnode_id2term(id: &str) -> Self::Term
fn bnode_id2subject(id: &str) -> Self::Subject
Source§impl SRDFBuilder for RdfData
impl SRDFBuilder for RdfData
Source§fn add_base(
&mut self,
_base: &Option<IriS>,
) -> Result<(), <RdfData as SRDFBasic>::Err>
fn add_base( &mut self, _base: &Option<IriS>, ) -> Result<(), <RdfData as SRDFBasic>::Err>
Adds an optional IRI as base
Source§fn add_prefix(
&mut self,
_alias: &str,
_iri: &IriS,
) -> Result<(), <RdfData as SRDFBasic>::Err>
fn add_prefix( &mut self, _alias: &str, _iri: &IriS, ) -> Result<(), <RdfData as SRDFBasic>::Err>
Adds a prefix declaration to the current RDF graph
Source§fn add_prefix_map(
&mut self,
_prefix_map: PrefixMap,
) -> Result<(), <RdfData as SRDFBasic>::Err>
fn add_prefix_map( &mut self, _prefix_map: PrefixMap, ) -> Result<(), <RdfData as SRDFBasic>::Err>
Adds a prefix map declaration to the current RDF graph
Source§fn add_triple(
&mut self,
_subj: &<RdfData as SRDFBasic>::Subject,
_pred: &<RdfData as SRDFBasic>::IRI,
_obj: &<RdfData as SRDFBasic>::Term,
) -> Result<(), <RdfData as SRDFBasic>::Err>
fn add_triple( &mut self, _subj: &<RdfData as SRDFBasic>::Subject, _pred: &<RdfData as SRDFBasic>::IRI, _obj: &<RdfData as SRDFBasic>::Term, ) -> Result<(), <RdfData as SRDFBasic>::Err>
Adds an RDF triple to the current RDF graph
Source§fn remove_triple(
&mut self,
_subj: &<RdfData as SRDFBasic>::Subject,
_pred: &<RdfData as SRDFBasic>::IRI,
_obj: &<RdfData as SRDFBasic>::Term,
) -> Result<(), <RdfData as SRDFBasic>::Err>
fn remove_triple( &mut self, _subj: &<RdfData as SRDFBasic>::Subject, _pred: &<RdfData as SRDFBasic>::IRI, _obj: &<RdfData as SRDFBasic>::Term, ) -> Result<(), <RdfData as SRDFBasic>::Err>
Removes an RDf triple to the current RDF graph
Auto Trait Implementations§
impl Freeze for RdfData
impl !RefUnwindSafe for RdfData
impl Send for RdfData
impl Sync for RdfData
impl Unpin for RdfData
impl !UnwindSafe for RdfData
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more