https://github.com/arenas-guerrero-julian/pg2rml-star
RML-star Mapping Bootstrapper from Property Graphs
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.3%) to scientific vocabulary
Keywords
Repository
RML-star Mapping Bootstrapper from Property Graphs
Basic Info
Statistics
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
PG2RML-star
PG2RML-star bootstraps RML-star mappings from property graph databases that can then be customized by users with domain vocabularies. The mappings can then be used with an RML system such as Morph-KGC to generate the RDF-star knowledge graph. To facilitate mapping customization by users, PG2RML-star creates the mappings in YARRRML syntax, a user-friendly serialization of RML. PG2RML-star currently supports the following property graph databases: - Neo4j - Kùzu
Getting Started :rocket:
Install
bash
pip install git+https://github.com/arenas-guerrero-julian/pg2rml-star.git
Command line
```commandline usage: python3 -m pg2rmlstar [-h] [-o OUTPUTFILEPATH] [-v] databaseurl_path
positional arguments: databaseurlpath Neo4j url or path to Kuzu database
options: -h, --help show this help message and exit -o OUTPUTFILEPATH, --outputfilepath OUTPUTFILEPATH File path to wire the output mappings (if not provided mappings will be redirected to stdout) ```
Neo4j example (modify the database URL accordingly):
python3 -m pg2rml_star neo4j://localhost:port@my_username:my_password/my_database
Kùzu example:
python3 -m pg2rml_star path/to/my_kuzu_database
Library
```python import pg2rml_star
Neo4j
redirect output mappings to stdout
pg2rmlstar.bootstrapmappings('neo4j://localhost:port@myusername:mypassword/my_database')
redirect output mappings to file
pg2rmlstar.bootstrapmappings('neo4j://localhost:port@myusername:mypassword/my_database', 'mappings.yml')
Kùzu
if the Kùzu database is persisted on disk
pg2rmlstar.bootstrapmappings('path/to/mykuzudatabase')
if the Kùzu database is loaded
import kuzu db = kuzu.Database('./test') pg2rmlstar.bootstrapmappings(db) ```
Citing 💬
Cite the iiWAS paper:
bib
@inproceedings{arenas2024automatic,
title = {{Automatic Extraction of RML-star Mappings from Property Graphs}},
author = {Arenas-Guerrero, Julián and Espinoza-Arias, Paola},
booktitle = {Proceedings of the 26th International Conference on Information Integration and Web Intelligence},
publisher = {Springer Nature Switzerland},
pages = {298-303},
year = {2024},
isbn = {978-3-031-78090-5},
doi = {10.1007/978-3-031-78090-5_25},
}
Owner
- Name: Julián Arenas Guerrero
- Login: arenas-guerrero-julian
- Kind: user
- Location: Madrid, Spain.
- Company: @oeg-upm
- Website: https://orcid.org/0000-0002-3029-6469
- Twitter: ArenasGuerreroJ
- Repositories: 1
- Profile: https://github.com/arenas-guerrero-julian
PhD Student at @oeg-upm
GitHub Events
Total
- Watch event: 3
- Push event: 11
Last Year
- Watch event: 3
- Push event: 11
Dependencies
- kuzu >=0.0.12, <1.0.0
- neo4j >=5.0.0, <6.0.0
- pandas >=2.0.0, <3.0.0
- ruamel.yaml ==0.18.0, <0.19.0