#linked-data #rdf #semantic-web

sophia_indexed

A Rust toolkit for RDF and Linked Data - Utility traits and functions for index-based implementations of graphs and datasets

3 releases

0.7.2 Feb 1, 2022
0.7.1 Dec 21, 2021
0.7.0 Jul 22, 2021

#1343 in Rust patterns

Download history 85/week @ 2023-12-18 48/week @ 2023-12-25 282/week @ 2024-01-01 126/week @ 2024-01-08 186/week @ 2024-01-15 104/week @ 2024-01-22 48/week @ 2024-01-29 16/week @ 2024-02-05 62/week @ 2024-02-12 61/week @ 2024-02-19 36/week @ 2024-02-26 15/week @ 2024-03-04 24/week @ 2024-03-11 55/week @ 2024-03-18 52/week @ 2024-03-25 420/week @ 2024-04-01

554 downloads per month

CECILL-B

435KB
9K SLoC

Sophia

A Rust toolkit for RDF and Linked Data.

Actions Status Latest Version Documentation

It comprises the following crates:

  • sophia_api defines a generic API for RDF and linked data, as a set of core traits and types; more precisely, it provides traits for describing
    • terms, triples and quads,
    • graphs and datasets,
    • parsers and serializers
  • sophia_iri provides functions, types and traits for validating and resolving IRIs.
  • sophia_term defines implementations of the TTerm 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.
  • sophia_xml provides parsers and serializers for RDF/XML.
  • sophia_jsonld provides preliminary support for JSON-LD.
  • sophia_indexed and sophia_rio are lower-level crates, used by the ones above.

and finally:

  • sophia is the “all-inclusive” crate, re-exporting symbols from all the crates above.

Licence

CECILL-B (compatible with BSD)

Testing

The test suite depends on the [the JSON-LD test-suite which is included as a git submodule. In order to run all the tests, you need to execute the following commands:

$ git submodule init
$ git submodule update

Citation

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}
}

History

An outdated comparison of Sophia with other RDF libraries is still available here.

Dependencies

~2.8–4.5MB
~79K SLoC