Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions shacl12-core/images/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
all: SHACL-UML.svg path-EBNF.svg

%.svg: %.puml
plantuml -Tsvg $^
53 changes: 53 additions & 0 deletions shacl12-core/images/SHACL-UML.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
@startuml
hide circles
hide empty members
skinparam pathHoverColor red ' on cover, highlight blue links as red
' skinparam topurl https://raw.githack.com/w3c/data-shapes/master/shacl12-core/index.html ' links resolve to anchors in current HTML page, when the SVG is embedded

class "<color:blue><u>sh:Shape" as Shape [[#shapes]] {
[[#targetClass sh:targetClass]] : rdfs:Class
[[#targetNode sh:targetNode]] : any
[[#targetSubjectsOf sh:targetSubjectsOf]] : rdf:Property
[[#targetObjectsOf sh:targetObjectsOf]] : rdf:Property
....
[[#deactivated sh:deactivated]] : xsd:boolean
[[#message sh:message]] : xsd:string or rdf:langString
[[#severity sh:severity]] : sh:Severity
}

class "<color:blue><u>sh:NodeShape" as NodeShape [[#node-shapes]] {
[[#constraints Constraint parameters]], for example:
[[#NodeKindConstraintComponent sh:nodeKind]] a sh:NodeKind
[[#ClosedConstraintComponent sh:closed]] : xsd:boolean or [[#syntax-rule-closed-datatype sh:ByTypes]]
[[#ClosedConstraintComponent sh:ignoredProperties]] : list
[[#OrConstraintComponent sh:or]], [[#AndConstraintComponent sh:and]], [[#XoneConstraintComponent sh:xone]] : list of Shape
[[#NotConstraintComponent sh:not]] : [[#shapes sh:Shape]]
...
}

class "<color:blue><u>sh:PropertyShape" as PropertyShape [[#property-shapes]] {
[[#constraints Constraint parameters]], for example:
[[#MinCountConstraintComponent sh:minCount]], [[#MaxCountConstraintComponent sh:maxCount]] : xsd:integer
[[#MinLengthConstraintComponent sh:minLength]], [[#MaxLengthConstraintComponent sh:maxLength]] : xsd:integer
[[#ClassConstraintComponent sh:class]] or [[#DatatypeConstraintComponent sh:datatype]] : IRI or list of IRIs
[[#NodeConstraintComponent sh:node]] : [[#node-shapes sh:NodeShape]]
...
....
[[#name sh:name]] : xsd:string or rdf:langString
[[#description sh:description]] : xsd:string or rdf:langString
[[#syntax-rule-path-defaultValue sh:defaultValue]] : any
[[#syntax-rule-path-defaultValue sh:values]] : any
[[#order sh:order]] : xsd:integer or xsd:decimal
[[#property-paths sh:path]] : predicate or list or blank node
}

class "<color:blue><u>sh:PropertyGroup" as PropertyGroup [[#group sh:group]] {
[[#group sh:order]] : xsd:integer or xsd:decimal
... eg rdfs:label
}

Shape <|-- NodeShape
Shape <|-- PropertyShape
NodeShape -> PropertyShape : [[#property-shapes sh:property]] *
PropertyShape --> PropertyGroup : [[#group sh:group]]
@enduml
1 change: 1 addition & 0 deletions shacl12-core/images/SHACL-UML.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
123 changes: 123 additions & 0 deletions shacl12-core/images/path-EBNF-rr.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions shacl12-core/images/path-EBNF-rr.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/* https://www.bottlecaps.de/rr/ui : check SVG, uncheck Embedded */

path ::= predicate |
'(' path* ')' |
'[' ('sh:inversePath'|'sh:alternativePath'|'sh:zeroOrMorePath'|'sh:oneOrMorePath') path ']'

3 changes: 3 additions & 0 deletions shacl12-core/images/path-EBNF.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
@startEbnf
path = predicate | "(", {path}-, ")" | "[", ("sh:inversePath"|"sh:alternativePath"|"sh:zeroOrMorePath"|"sh:oneOrMorePath"), path, "]" ;
@endEbnf
1 change: 1 addition & 0 deletions shacl12-core/images/path-EBNF.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions shacl12-vocabularies/shacl-shacl.ttl
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this doesn't necessarily has anything todo with #482 but as it's just fixing typos I guess that's fine

Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@ shsh:
shsh:ListShape
a sh:NodeShape ;
rdfs:label "List shape"@en ;
rdfs:comment "A shape describing well-formed RDF lists. Currently does not check for non-recursion. This could be expressed using SHACL-SPARQL."@en ;
rdfs:comment "A shape describing well-formed RDF lists. Currently does not check for non-recursion (this could be expressed using SHACL-SPARQL)."@en ;
rdfs:seeAlso <https://www.w3.org/TR/shacl/#syntax-rule-SHACL-list> ;
sh:property [
sh:path [ sh:zeroOrMorePath rdf:rest ] ;
rdfs:comment "Each list member (including this node) must be have the shape shsh:ListNodeShape."@en ;
rdfs:comment "Each list member (including this node) must have the shape shsh:ListNodeShape."@en ;
sh:hasValue rdf:nil ;
sh:node shsh:ListNodeShape ;
] .
Expand Down