Utility for converting an RDF file to SQLite
Project description
rdf-to-sqlite
Load the contents of an RDF file into a set of SQLite database tables.
$ rdf-to-sqlite --help
Usage: rdf-to-sqlite [OPTIONS] DB_PATH RDF_FILE
Convert an RDF file to SQLite
Options:
--version Show the version and exit.
--context TEXT URL or file containing a JSON-LD context
--format [html|n3|nquads|nt|rdfa|rdfa1.0|rdfa1.1|trix|turtle|xml|json-ld]
RDF serialization format [required]
--help Show this message and exit.
Usage
Given an RDF file example.ttl
containing the following:
@prefix ns1: <http://schema.org/> .
<http://www.janedoe.com/> a ns1:Person ;
ns1:jobTitle "Professor" ;
ns1:name "Jane Doe" ;
ns1:telephone "(425) 123-4567" .
Running this command:
$ rdf-to-sqlite example.db example.ttl --format turtle --context https://schema.org/docs/jsonldcontext.jsonld
Will create a database file example.db
with this schema, using a property
table approach to RDF storage on relational databases [1], [2]:
CREATE TABLE [Person] (
[@context] TEXT,
[id] TEXT PRIMARY KEY,
[jobTitle] TEXT,
[name] TEXT,
[telephone] TEXT
);
CREATE TABLE [Person_rdf:type] (
[subject] TEXT,
[predicate] TEXT,
[object] TEXT,
PRIMARY KEY ([subject], [object])
);
Acknowledgements
Thanks to Simon Willison for the inspiration from his work on Datasette and more specifically yaml-to-sql, which was a very useful example for how to package this up properly.
References
[1] Sakr, S. and Al-Naymat, G., 2010. Relational processing of RDF queries: a survey. ACM SIGMOD Record, 38(4), pp.23-28.
[2] Ali, W., Saleem, M., Yao, B., Hogan, A. and Ngomo, A.C.N., 2020. Storage, indexing, query processing, and benchmarking in centralized and distributed rdf engines: A survey. arXiv preprint arXiv:2009.10331.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file rdf-to-sqlite-0.2.tar.gz
.
File metadata
- Download URL: rdf-to-sqlite-0.2.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.7.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f3a5021d3a42165d4317771c1b7256ab6ac9398cd2f2312c00548724876f0fe |
|
MD5 | f852cb0b82b0d080ea085ef5320d87b2 |
|
BLAKE2b-256 | 4968444682ea8a66a9fc233c758e76e77ed5030c5da9712825c083c35366cd21 |
File details
Details for the file rdf_to_sqlite-0.2-py3-none-any.whl
.
File metadata
- Download URL: rdf_to_sqlite-0.2-py3-none-any.whl
- Upload date:
- Size: 8.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.7.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f9f8ccd9f33a2830f9b9187dbca58be4e7ae1ae3db068d5fa780225e8166237 |
|
MD5 | 9eec572c42ed5707c189f1735997bbdc |
|
BLAKE2b-256 | 97ca1825673b41cfd5e444008e06ce4988052549574e82a03ff4fe52169d4e1c |