[−][src]Crate sophia_api
This crate provides a foundation, as a set of traits and core types, for building interoperable implementations of RDF and Linked Data in Rust.
For an all-included crate
(providing actual implementations of the traits defined here),
see sophia.
RDF
RDF is a data model designed to exchange knowledge on the Web in an interoperable way. Each piece of knowledge in RDF (a statement) is represented by a triple, made of three terms. A set of triples forms an RDF graph. Finally, several graphs can be grouped in a collection called a dataset, where each graph is identified by a unique name.
Generalized vs. Strict RDF model
The data model supported by this crate is in fact a superset of the RDF data model as defined by the W3C. When the distinction matters, they will be called, respectively, the generalized RDF model, and the strict RDF model.
Modules
| dataset | An RDF dataset is composed of a default graph, and zero or more named graphs, each associated with a graph name. |
| graph | An RDF graph, the central notion of the RDF data model, is a collection of triples. |
| ns | Standard and custom namespaces. |
| parser | API for parsing RDF syntaxes. |
| quad | A quad expresses a single fact within a context.
Quads are like RDF |
| serializer | API for serializing RDF syntaxes. |
| term | This module defines the API for RDF terms. |
| triple | An RDF triple expresses a single fact. Its formed of three terms called subject, predicate and object. |
Macros
| def_mod_functions_for_bufread_parser | Define convenience module-level functions for a parser implementation supporting BufRead. |
| make_scoped_quad_streaming_mode | Create a streaming mode for lifetime-parameterized Quad types. |
| make_scoped_triple_streaming_mode | Create a streaming mode for lifetime-parameterized Triple types. |
| namespace | Create a "namespace module" defining a set of terms within a given IRI space. |
| ns_iri | Create a term in a "namespace module".
In general, you should use the |