Joeri Exelmans 2 лет назад
Родитель
Сommit
c33e8ae126
1 измененных файлов с 57 добавлено и 0 удалено
  1. 57 0
      examples/oml/CDF/src/oml/flandersmake.be/cdf/vocabulary/drawio.oml

+ 57 - 0
examples/oml/CDF/src/oml/flandersmake.be/cdf/vocabulary/drawio.oml

@@ -0,0 +1,57 @@
+// Vocabulary for the Draw.io file format
+vocabulary <http://flandersmake.be/cdf/vocabulary/drawio#> as drawio {
+
+	extends <http://flandersmake.be/cdf/vocabulary/object_diagram#> as object_diagram
+	extends <http://flandersmake.be/cdf/vocabulary/dict#> as dict
+	extends <http://www.w3.org/2001/XMLSchema#> as xsd
+
+	aspect element :> object_diagram:Object
+	
+	concept Page :> element [
+		restricts relation ofModel to exactly 1
+		restricts scalar property hasName to exactly 1
+		restricts scalar property hasDrawioId to exactly 1
+	]
+	
+	relation entity HasPageAttribute [
+		from Page
+		to PageAttribute
+		
+	]
+	
+	concept PageAttribute :> dict:DictEntry []
+	
+	scalar property hasName [
+		domain Page
+		range xsd:string
+		functional
+	]
+	
+	scalar property hasDrawioId [
+		domain Page
+		range xsd:string
+		functional
+	]
+	
+	// A Drawio file:
+	concept Model :> object_diagram:Model [
+		restricts all relation object_diagram:hasObject to element
+		restricts scalar property isCompressed to exactly 1
+	]
+	
+	relation entity HasPage [
+		from Model
+		to Page
+		forward hasPage
+		reverse ofModel
+		inverse functional
+		asymmetric
+		irreflexive
+	]
+
+	scalar property isCompressed [
+		domain Model
+		range xsd:boolean
+		functional
+	]
+}