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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions