Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
PG-Schema_PC
This repository contains a prototype implementation for the PG-Schema with Property Constraints extension.
Overview
PG-Schema_PC is a formal extension of the PG-Schema language, designed to support constraints over property sets in property graphs. It introduces structural, cardinality, and range constraints that enhance the precision and expressiveness of schema definitions. This implementation serves as a reference interpreter for the abstract grammar and semantics presented in the associated publication.
Installation and building
Binary releases in Windows, Mac and Linux are published in relases.
If you prefer to build the code, you should install cargo and the following command compiles and generates an executable called pgschemapc in the target/release folder:
which will create a binary in target/release/pgschemapc.
Once you have the pgschemapc binary, you can add it to your executable path.
The command pgschemapc --help gives information about the available commands.
)
)
Running a simple validation
The following command shows how the tool can be used to validate a simple property graph with a PG-Schema_PC schema according to some type maps:
Running examples from paper
The different examples from the submitted paper can be run using the following commands:
where [EXAMPLE_NAME] can be any of simple, course, person, product, user, etc.
Of course, you can play with the tool by creating your own property graph, property graph schema and association maps.
Running the tests
To run a test suite use the command:
At this stage, the tool is a prototype for PGSchema with property constraints validation. Further integration with graph databases or external datasets will require extending the parsing and validation layers.
Related Resources
- Railroad diagrams: https://domel.github.io/pg-schema-pc/rr-diagrams.html
- Citation metadata: see
CITATION.cff - GitHub repository for grammar: https://github.com/domel/pg-schema-pc
Citing
If you use this software or refer to its underlying formalism in academic work, please cite it using the metadata in the CITATION.cff file.
Licensed under the MIT License.