Last updated:
0 purchases
prov2neo 1.2.2
Welcome to prov2neo! 👋
prov2neo is a Python library and command line tool that imports W3C PROV documents into Neo4j.
prov2neo enables faster imports than comparable libs such as prov-db-connector with the limitation of being specialized for neo4j.
🏗️ Installation
Clone the project and use the provided setup.py to install prov2neo locally:
python setup.py install --user
Or install the latest release from PyPi:
pip install prov2neo
🚀 Usage
prov2neo can be used as a command line script or as a Python lib.
As a Command Line Script
usage: prov2neo [-h] [-f {provn,json,rdf,xml}] [-i INPUT [INPUT ...]] [-a ADDRESS]
[-u USERNAME] [-p PASSWORD] [-n NAME]
[-s {bolt,bolt+s,bolt+ssc,http,https,http+s,http+ssc}]
Import W3C PROV documents to Neo4j.
optional arguments:
-h, --help show this help message and exit
-f {provn,json,rdf,xml}, --format {provn,json,rdf,xml}
input PROV format
-i INPUT [INPUT ...], --input INPUT [INPUT ...]
input files, use '.' for stdin
-a ADDRESS, --address ADDRESS
Neo4j address
-u USERNAME, --username USERNAME
Neo4j username
-p PASSWORD, --password PASSWORD
Neo4j password
-n NAME, --name NAME Neo4j target database name
-s {bolt,bolt+s,bolt+ssc,http,https,http+s,http+ssc}, --scheme {bolt,bolt+s,bolt+ssc,http,https,http+s,http+ssc}
connection scheme to use when connecting to Neo4j
As a Python Lib
from prov.model import ProvDocument
from prov2neo.client import Client
# read graph from JSON serialization
graph = ProvDocument.deserialize(source="examples/horsemeat.json", format="json")
# create a prov2neo client
client = Client()
# connect to the neo4j instance
client.connect(
address="localhost:7687",
user="jane doe",
password="**redacted**",
name="database name",
scheme="bolt"
)
# import the PROV graph
client.import_graph(graph)
prov2neo supports formats that the prov library provides:
PROV-N
PROV-O (RDF)
PROV-XML
PROV-JSON
🤝 Contributing
Contributions and pull requests are welcome!
For major changes, please open an issue first to discuss what you would like to change.
✨ Citable Software
This project contains a CITATION.cff file!
CITATION.cff files are plain text files with human- and machine-readable citation information for software (and datasets).
GitHub will link the correct citation automatically.
To find out more about GitHubs support for CITATION.cff files visit here
📝 License
Copyright © 2020-2022 German Aerospace Center (DLR) and individual contributors.
This project is MIT licensed.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.