This diagram generation utility displays an application profile specified in SHACL in the form of one or more diagrams, using PlantUML. It supports a subset of SHACL constraints. The diagrams generated can be embedded in the documentation generation utility. Detailed documentation is available below.
The diagram generation utility will generate a link between 2 boxes if it finds:
sh:node
reference to another NodeShapesh:class
reference that is the sh:targetClass
of another NodeShapesh:class
reference that is not the sh:targetClass
of another NodeShape (in that case a box will be generated corresponding to the sh:class)sh:or
containing sh:node or sh:class resolved using the same algorithm as aboveIf a property shape refer to a node shape that does not have any property, and only one reference is made to that node shape, then the arrow will not be printed and will be replaced by a property inside the node shape box.
In addition to SHACL constraints, the following properties can be used to customise the output of NodeShapes
Property | Type | Description |
---|---|---|
foaf:depiction + dcterms:title + dcterms:description + sh:order |
IRI or blank node |
Indicates the IRI of a diagram in which the NodeShape will appear. This allows to split the visual representation in multiple diagrams. If Each diagram can be described with Depending on the output format option, you will get a ZIP file containing all PNGs or SVGs, or an HTML page containing all generated diagrams. |
rdfs:subClassOf |
IRI |
rdfs:subClassOf links are displayed in bold grey. It implies the NodeShapes are also classes, and it of course implies that the submitted
file contains the rdfs:subClassOf links.
|
https://shacl-play.sparna.fr/ontology#background-color |
xsd:string | Color of the box itself. Values can be a color name, like "Green" or an hex code, like "4456BB"
|
https://shacl-play.sparna.fr/ontology#color |
xsd:string | Color of the text inside the box. Values can be a color name, like "Green" or an hex code, like "4456BB"
|
In addition to SHACL constraints, the following properties can be used to customize the appearance of Property Shapes
Property | Type | Description |
---|---|---|
sh:order |
xsd:integer | Properties are sorted according to sh:order |
https://shacl-play.sparna.fr/ontology#color |
xsd:string | Color of the property name (inside the box) or arrow link. Values can be a color name, like "Green"
or an hex code, like "4456BB"
|
owl:inverseOf on the IRI indicated on sh:path |
IRI | If the property indicated in sh:path is known to have an inverse, then a single arrow
will be printed instead of 2. |
sh:group + rdfs:label |
IRI | Groups the property inside a section in the box in the diagram, labelled with its rdfs:label .
This also has the effect of turning "arrows" into "class attributes", in other words displaying object properties as data properties.
This is useful to make the diagram more compact for references to e.g. controlled vocabularies / skos:Concept. |
ScoloMFR Application profile, SKOS based