Skip to content

Add support for YARS-PG serialization (export + optional import) #34

@domel

Description

@domel

Summary

Please consider adding YARS-PG as a first-class serialization format in graphfaker (initially as an export target; optionally as an import/loader later). YARS-PG is a concise, text-based format designed specifically for property graphs, with a formal grammar and reference implementations. Supporting it would immediately improve interoperability, reproducibility, and downstream tooling integration for datasets generated by graphfaker.


Why YARS-PG would benefit graphfaker

  1. Interoperability across PG tools and research

    • YARS-PG was designed for publication and exchange of property graphs. Exporting graphfaker outputs to YARS-PG makes it straightforward to share synthetic benchmarks and teaching datasets across tools, languages, and databases that already speak or validate YARS-PG.
  2. Bridging PG and RDF/Linked Data ecosystems*

    • There are existing bridges that parse YARS-PG into RDF* datasets. This unlocks RDF/Linked-Data tooling (validation, transformation, indexing) on top of graphfaker outputs without bespoke converters.
  3. Plain-text, diff-friendly artifacts (great for Git)

    • YARS-PG files are human-readable and line-diff-friendly, which improves code review, dataset versioning, and reproducible experiments—key for academic and industrial workflows.
  4. Feature coverage aligned with property-graph practice

    • The format and grammar capture the core PG concepts (nodes, edges, properties, labels/types, edge properties/annotations), which map naturally from graphfaker’s internal NetworkX graphs.
  5. Ready-to-use grammar and parsers

    • A formal ANTLR4 grammar with Python and Java parsers exists. This lowers implementation risk and provides a built-in way to validate exported files as part of CI.
  6. Licensing compatibility

    • graphfaker is MIT-licensed; YARS-PG grammar/impl. is BSD-3-Clause and/or CC-BY for docs—compatible for optional dependency or dev-time validator.

What is YARS-PG (at a glance)

  • A text-based serialization purpose-built for property graphs.
  • Comes with a formal grammar (ANTLR4 + EBNF) and reference parsers (Python/Java).
  • Designed to be simple, extensible, and platform-independent.
  • Validated in a peer-reviewed venue and used in example datasets/benchmarks.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions