A library for parsing SPARQL queries and updates
Project description
SARI Sparql Parser
A parser for SPARQL queries and updates.
Note: This parser is very experimental and may not function very reliably.
Installation
install using pip
pip install sari-sparql-parser
Usage
Parse a SPARQL query:
from sariSparqlParser import parser
query = """PREFIX crm: <http://www.cidoc-crm.org/cidoc/crm>
SELECT ?subject ?identifier WHERE {
?subject crm:P1_is_identified_by ?identifier .
?identifier a ?type .
VALUES (?type) {
(crm:E41_Appellation)
(crm:E42_Identifier)
}
}
"""
p = parser()
p.parseQuery(query)
This will output:
{
'prefixes': {'crm': 'http://www.cidoc-crm.org/cidoc/crm'},
'select': ['subject', 'identifier'],
'where': [{
's': {'type': rdflib.term.Variable, 'value': 'subject'},
'p': {'type': rdflib.term.URIRef, 'value': 'http://www.cidoc-crm.org/cidoc/crmP1_is_identified_by'},
'o': {'type': rdflib.term.Variable, 'value': 'identifier'}
},
{
's': {'type': rdflib.term.Variable, 'value': 'identifier'},
'p': {'type': rdflib.term.URIRef, 'value': 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type'},
'o': {'type': rdflib.term.Variable, 'value': 'type'}
}],
'values': [{
'type': {'type': rdflib.term.URIRef, 'value': 'http://www.cidoc-crm.org/cidoc/crmE41_Appellation'}
},
{
'type': {'type': rdflib.term.URIRef,'value': 'http://www.cidoc-crm.org/cidoc/crmE42_Identifier'}
}]
}
Project details
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
Close
Hashes for sari_sparql_parser-0.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | be5018136fd809d848adef2e6b341fb53956f83e3e5ed549520ed895d879f4dd |
|
MD5 | 5b7a6342cb345c23eb7ec24e7bf118ba |
|
BLAKE2b-256 | c5a5d9512ef728c38e1c180666bbda744d8e0f0dfe5ffc575b562057f65b33ad |