Converter from ShEx/SHACL to UML-like diagrams

umlShaclex

Convert SHACL and ShEx to UML-like class diagrams

Build Status codecov Codacy Badge

Author & contributors

Adopters

  • RDFShape: An online demo powered by this library.

Installation and compilation

The project uses sbt for compilation.

Once you have installed sbt, you can generate an executable, running:

sbt universal:packageBin

It will generate an executable zip file in folder:

target/universal/umlShaclex-x.y.z.zip

Once you have obtained the binary, you can uncompress in a folder and run it.

Usage

If you created a binary as described in previous section, you can invoke it as umlShaclex

It is also possible to run it using sbt as: sbt run <args>.

The library can be used programmmatically or from the command line. Examples:

-Convert a ShEx schema file to SVG

umlShaclex --schema examples/shex/simple.shex --schemaFormat ShExC -o simple.svg -f svg

-Convert a ShEx schema file to UML (using PlantUML format)

umlShaclex --schema examples/shex/simple.shex --schemaFormat ShExC -o simple.uml -f uml

Publishing to OSS-Sonatype

This project uses the sbt ci release plugin for publishing to OSS Sonatype.

SNAPSHOT Releases

Open a PR and merge it to watch the CI release a -SNAPSHOT version

Full Library Releases
  1. Push a tag and watch the CI do a regular release
  2. git tag -a v0.1.0 -m "v0.1.0"
  3. git push origin v0.1.0 Note that the tag version MUST start with v.

Contribution

Contributions are greatly appreciated. Please fork this repository and open a pull request to add more features or submit issues