|
|
@@ -0,0 +1,147 @@
|
|
|
+vocabulary <http://flandersmake.be/cdf/vocabulary/xournalpp#> as xournalpp {
|
|
|
+
|
|
|
+ extends <http://flandersmake.be/cdf/vocabulary/object_diagram#> as object_diagram
|
|
|
+ extends <http://www.w3.org/2001/XMLSchema#> as xsd
|
|
|
+
|
|
|
+ aspect element :> object_diagram:Object []
|
|
|
+
|
|
|
+ aspect LayerElement :> element [
|
|
|
+ restricts relation inLayer to exactly 1
|
|
|
+ restricts scalar property hasText to exactly 1
|
|
|
+ ]
|
|
|
+ scalar property hasText [
|
|
|
+ domain LayerElement
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+
|
|
|
+ relation entity HasXMLAttribute [
|
|
|
+ from LayerElement
|
|
|
+ to XMLAttribute
|
|
|
+ forward hasAttribute
|
|
|
+ reverse ofLayerElement
|
|
|
+ inverse functional
|
|
|
+ ]
|
|
|
+
|
|
|
+ concept XMLAttribute :> element [
|
|
|
+ restricts scalar property hasKey to exactly 1
|
|
|
+ restricts scalar property hasValue to exactly 1
|
|
|
+ restricts relation ofLayerElement to exactly 1
|
|
|
+ ]
|
|
|
+ scalar property hasKey [
|
|
|
+ domain XMLAttribute
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasValue [
|
|
|
+ domain XMLAttribute
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+
|
|
|
+ concept Text :> LayerElement []
|
|
|
+ concept Stroke :> LayerElement []
|
|
|
+
|
|
|
+ concept Layer :> element [
|
|
|
+ restricts relation inPage to exactly 1
|
|
|
+ ]
|
|
|
+
|
|
|
+ relation entity HasLayerElement [
|
|
|
+ from Layer
|
|
|
+ to LayerElement
|
|
|
+ forward hasElement
|
|
|
+ reverse inLayer
|
|
|
+ inverse functional
|
|
|
+ asymmetric
|
|
|
+ irreflexive
|
|
|
+ ]
|
|
|
+
|
|
|
+ concept Page :> element [
|
|
|
+ restricts relation inFile to exactly 1
|
|
|
+ restricts scalar property hasWidth to exactly 1
|
|
|
+ restricts scalar property hasHeight to exactly 1
|
|
|
+ restricts scalar property hasBackgroundType to exactly 1
|
|
|
+ restricts scalar property hasBackgroundColor to exactly 1
|
|
|
+ restricts scalar property hasBackgroundStyle to exactly 1
|
|
|
+ ]
|
|
|
+
|
|
|
+ scalar property hasWidth [
|
|
|
+ domain Page
|
|
|
+ range xsd:decimal
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasHeight [
|
|
|
+ domain Page
|
|
|
+ range xsd:decimal
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasBackgroundType [
|
|
|
+ domain Page
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasBackgroundColor [
|
|
|
+ domain Page
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasBackgroundStyle [
|
|
|
+ domain Page
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ relation entity HasLayer [
|
|
|
+ from Page
|
|
|
+ to Layer
|
|
|
+ forward hasLayer
|
|
|
+ reverse inPage
|
|
|
+ inverse functional
|
|
|
+ asymmetric
|
|
|
+ irreflexive
|
|
|
+ ]
|
|
|
+
|
|
|
+ concept File :> element [
|
|
|
+ restricts relation hasPage to min 1
|
|
|
+
|
|
|
+ restricts scalar property hasCreator to exactly 1
|
|
|
+ restricts scalar property hasFileVersion to exactly 1
|
|
|
+ restricts scalar property hasTitle to exactly 1
|
|
|
+// restricts scalar property hasPreview to exactly 1 // not mandatory
|
|
|
+ ]
|
|
|
+
|
|
|
+ scalar property hasCreator [
|
|
|
+ domain File
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasFileVersion [
|
|
|
+ domain File
|
|
|
+ range xsd:integer
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasTitle [
|
|
|
+ domain File
|
|
|
+ range xsd:string
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+ scalar property hasPreview [
|
|
|
+ domain File
|
|
|
+// range xsd:base64Binary // PNG-encoded // Doesn't seem to be working, workaround below
|
|
|
+ range xsd:string // Workaround
|
|
|
+ functional
|
|
|
+ ]
|
|
|
+
|
|
|
+ relation entity HasPage [
|
|
|
+ from File
|
|
|
+ to Page
|
|
|
+ forward hasPage
|
|
|
+ reverse inFile
|
|
|
+ asymmetric
|
|
|
+ irreflexive
|
|
|
+ inverse functional
|
|
|
+ ]
|
|
|
+
|
|
|
+ concept Model :> object_diagram:Model [
|
|
|
+ restricts all relation object_diagram:hasObject to element
|
|
|
+ ]
|
|
|
+}
|