/rome

An RDF library in pure Rust

Primary LanguageRustGNU Affero General Public License v3.0AGPL-3.0

Build Status Current Version

Rome is an RDF library written in safe Rust.

Documentation

Features

  • Access any data in a uniform way as RDF by implementing a Graph.
  • Read/write Turtle and N-Triple files.
  • Iterate over triples in graphs.
  • Wrap a graph in code generated from an ontology.
  • Use the type system to distinguish between blank nodes, IRIs and literals at compile time.

Generated code

The ontology code is generated by these commands:

cargo run --example generate_code src/ontology ontologies/*
cargo fmt

Testing

The Turtle parser passes the W3 test suite.

Run the tests like this:

wget https://www.w3.org/2013/TurtleTests/TESTS.tar.gz
tar xf TESTS.tar.gz
cargo run --example w3tests TurtleTests/manifest.ttl

License

Rome is licensed under AGPLv3.0 or any later version.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the AGPLv3.0 license, shall be licensed as above, without any additional terms or conditions.