A Rust toolkit for RDF and Linked Data.
It comprises the following crates:
sophia_api defines a generic API for RDF 1.2 and linked data,
as a set of core traits and types;
more precisely, it provides traits for describing
sophia_bcp47 provides functions and types for validating BCP47 language tags.sophia_iri provides functions, types and traits for validating and resolving IRIs.sophia_term defines various implementations of the Term trait from sophia_api.sophia_inmem defines in-memory implementations of the Graph and Dataset traits from sophia_api.sophia_turtle provides parsers and serializers for the Turtle-family of concrete syntaxes (for RDF 1.2).sophia_jsonld provides parsers and serializers for JSON-LD 1.1.sophia_xml provides parsers and serializers for RDF/XML 1.2.sophia_c14n implements RDF canonicalization.sophia_isomorphism provides functions to determine if two graphs or datasets are isomorphic.sophia_sparql provides a (currently partial) implementation of the SPARQL 1.2 Query Language.sophia_sparql_client provides a client for the SPARQL 1.1 Protocol.sophia_reasoner] provides reasoning over Simple, RDF and RDF-Schema entailment regimessophia_resource provides a resource-centric API.sophia re-exports symbols from all the crates above, with the following provisio:
sophia_jsonld is only available with the jsonld featuresophia_sparql is only available with the sparql featuresophia_sparql_client is only available with the http_client featuresophia_xml is only available with the xml featureIn addition to the API documentation, a high-level user documentation is available (although not quite complete yet).
This project is licensed under either or
at your option.
When using Sophia, please use the following citation:
Champin, P.-A. (2020) ‘Sophia: A Linked Data and Semantic Web toolkit for Rust’, in Wilde, E. and Amundsen, M. (eds). The Web Conference 2020: Developers Track, Taipei, TW. Available at: https://www2020devtrack.github.io/site/schedule.
Bibtex:
@misc{champin_sophia_2020,
title = {{Sophia: A Linked Data and Semantic Web toolkit for Rust},
author = {Champin, Pierre-Antoine},
howpublished = {{The Web Conference 2020: Developers Track}},
address = {Taipei, TW},
editor = {Wilde, Erik and Amundsen, Mike},
month = apr,
year = {2020},
language = {en},
url = {https://www2020devtrack.github.io/site/schedule}
}
The following third-party crates are using or extending Sophia
hdt provides an implementation of Sophia's traits based on the HDT format.manas is a modular framework for implementing Solid compatible serversnanopub is a toolkit for managing nanopublicationsAn outdated comparison of Sophia with other RDF libraries is still available here.
Rust
100.0%
A Rust toolkit for RDF and Linked Data.
It comprises the following crates:
sophia_api defines a generic API for RDF 1.2 and linked data,
as a set of core traits and types;
more precisely, it provides traits for describing
sophia_bcp47 provides functions and types for validating BCP47 language tags.sophia_iri provides functions, types and traits for validating and resolving IRIs.sophia_term defines various implementations of the Term trait from sophia_api.sophia_inmem defines in-memory implementations of the Graph and Dataset traits from sophia_api.sophia_turtle provides parsers and serializers for the Turtle-family of concrete syntaxes (for RDF 1.2).sophia_jsonld provides parsers and serializers for JSON-LD 1.1.sophia_xml provides parsers and serializers for RDF/XML 1.2.sophia_c14n implements RDF canonicalization.sophia_isomorphism provides functions to determine if two graphs or datasets are isomorphic.sophia_sparql provides a (currently partial) implementation of the SPARQL 1.2 Query Language.sophia_sparql_client provides a client for the SPARQL 1.1 Protocol.sophia_reasoner] provides reasoning over Simple, RDF and RDF-Schema entailment regimessophia_resource provides a resource-centric API.sophia re-exports symbols from all the crates above, with the following provisio:
sophia_jsonld is only available with the jsonld featuresophia_sparql is only available with the sparql featuresophia_sparql_client is only available with the http_client featuresophia_xml is only available with the xml featureIn addition to the API documentation, a high-level user documentation is available (although not quite complete yet).
This project is licensed under either or
at your option.
When using Sophia, please use the following citation:
Champin, P.-A. (2020) ‘Sophia: A Linked Data and Semantic Web toolkit for Rust’, in Wilde, E. and Amundsen, M. (eds). The Web Conference 2020: Developers Track, Taipei, TW. Available at: https://www2020devtrack.github.io/site/schedule.
Bibtex:
@misc{champin_sophia_2020,
title = {{Sophia: A Linked Data and Semantic Web toolkit for Rust},
author = {Champin, Pierre-Antoine},
howpublished = {{The Web Conference 2020: Developers Track}},
address = {Taipei, TW},
editor = {Wilde, Erik and Amundsen, Mike},
month = apr,
year = {2020},
language = {en},
url = {https://www2020devtrack.github.io/site/schedule}
}
The following third-party crates are using or extending Sophia
hdt provides an implementation of Sophia's traits based on the HDT format.manas is a modular framework for implementing Solid compatible serversnanopub is a toolkit for managing nanopublicationsAn outdated comparison of Sophia with other RDF libraries is still available here.
Rust
100.0%