Procházet zdrojové kódy

Add file constructs

Arkadiusz Ryś před 2 roky
rodič
revize
112be5c83e

+ 45 - 0
models/ontology/oml/code.oml

@@ -0,0 +1,45 @@
+vocabulary <http://ontology.rys.one/drivetrain/vocabulary/code#> as code {
+    extends <http://www.w3.org/2001/XMLSchema#> as xsd
+    extends <http://purl.org/dc/elements/1.1/> as dc
+    extends <http://www.w3.org/2000/01/rdf-schema#> as rdfs
+
+    extends <http://ontology.rys.one/drivetrain/vocabulary/text#> as text
+
+
+    concept CodeData :> text:TextData
+    concept CodeLanguage
+
+    enumerated scalar CodeLanguageOption [
+        "C",
+        "C++",
+        "Python",
+        "MATLAB"
+    ]
+
+    scalar property hasCodeLanguageOption [
+        domain CodeLanguage
+        range CodeLanguageOption
+    ]
+
+    relation entity UsesCodeLanguage [
+        from CodeData
+        to CodeLanguage
+        forward usesCodeLanguage
+    ]
+
+    concept CCode :> CodeLanguage [
+        restricts scalar property hasCodeLanguageOption to "C"
+    ]
+
+    concept CppCode :> CodeLanguage [
+        restricts scalar property hasCodeLanguageOption to "C++"
+    ]
+
+    concept PythonCode :> CodeLanguage [
+        restricts scalar property hasCodeLanguageOption to "Python"
+    ]
+
+    concept MATLABCode :> CodeLanguage [
+        restricts scalar property hasCodeLanguageOption to "MATLAB"
+    ]
+}

+ 14 - 0
models/ontology/oml/file.oml

@@ -0,0 +1,14 @@
+vocabulary <http://ontology.rys.one/drivetrain/vocabulary/file#> as file {
+    extends <http://www.w3.org/2001/XMLSchema#> as xsd
+    extends <http://purl.org/dc/elements/1.1/> as dc
+    extends <http://www.w3.org/2000/01/rdf-schema#> as rdfs
+
+    aspect Data
+    aspect File [key isLocatedAt]
+
+    scalar property isLocatedAt [
+        domain File
+        range xsd:string
+        functional
+    ]
+}

+ 53 - 0
models/ontology/oml/richtext.oml

@@ -0,0 +1,53 @@
+vocabulary <http://ontology.rys.one/drivetrain/vocabulary/richtext#> as richtext {
+    extends <http://www.w3.org/2001/XMLSchema#> as xsd
+    extends <http://purl.org/dc/elements/1.1/> as dc
+    extends <http://www.w3.org/2000/01/rdf-schema#> as rdfs
+
+    extends <http://ontology.rys.one/drivetrain/vocabulary/text#> as text
+
+
+    concept RichTextData :> text:TextData
+    concept RichTextModifer
+    concept TextPosition
+
+    scalar property onLine [
+        domain TextPosition
+        range xsd:int
+    ]
+
+    scalar property atPosition [
+        domain TextPosition
+        range xsd:int
+    ]
+
+    enumerated scalar RichTextModifierOption [
+        "italic",
+        "bold"
+    ]
+
+    scalar property hasRichTextModifierOption [
+        domain RichTextModifer
+        range RichTextModifierOption
+        functional
+    ]
+
+    relation entity StartsAt [
+        from RichTextModifer
+        to TextPosition
+        forward modifierStartsAt
+    ]
+
+    relation entity StopsAt [
+        from RichTextModifer
+        to TextPosition
+        forward modifierStopsAt
+    ]
+
+    concept ItalicRichTextModifier :> RichTextModifer [
+        restricts scalar property hasRichTextModifierOption to "italic"
+    ]
+
+    concept BoldRichTextModifier :> RichTextModifer [
+        restricts scalar property hasRichTextModifierOption to "bold"
+    ]
+}

+ 34 - 0
models/ontology/oml/script.oml

@@ -0,0 +1,34 @@
+vocabulary <http://ontology.rys.one/drivetrain/vocabulary/script#> as script {
+    extends <http://www.w3.org/2001/XMLSchema#> as xsd
+    extends <http://purl.org/dc/elements/1.1/> as dc
+    extends <http://www.w3.org/2000/01/rdf-schema#> as rdfs
+
+    extends <http://ontology.rys.one/drivetrain/vocabulary/code#> as code
+    extends <http://ontology.rys.one/drivetrain/vocabulary/file#> as file
+
+    concept ScriptData :> code:CodeData
+    concept ScriptParameter :> file:Data
+
+    scalar property hasParameterName [
+        domain ScriptParameter
+        range xsd:string
+        functional
+    ]
+
+    scalar property hasParameterValue [
+        domain ScriptParameter
+        // Proabably need to change to some bottom value concept
+        range xsd:string
+    ]
+
+    relation entity UsesScriptParameter [
+        from ScriptData
+        to ScriptParameter
+        forward usesScriptParameter
+    ]
+
+    concept CScript :> code:CCode
+    concept CppScript :> code:CppCode
+    concept PythonScript :> code:PythonCode
+    concept MATLABScript :> code:MATLABCode
+}

+ 87 - 0
models/ontology/oml/tabular.oml

@@ -0,0 +1,87 @@
+vocabulary <http://ontology.rys.one/drivetrain/vocabulary/tabular#> as tabular {
+    extends <http://www.w3.org/2001/XMLSchema#> as xsd
+    extends <http://purl.org/dc/elements/1.1/> as dc
+    extends <http://www.w3.org/2000/01/rdf-schema#> as rdfs
+
+    extends <http://ontology.rys.one/drivetrain/vocabulary/file#> as file
+
+
+    aspect Collection
+    concept TabularData :> file:Data, file:File
+    concept Cell        :> file:Data
+    concept Row         :> Collection
+    concept Column      :> Collection
+
+    scalar property holdsContent [
+        domain Cell
+        range xsd:string
+        functional
+    ]
+
+    scalar property hasRowPosition [
+        domain Cell
+        // Maybe limit to positive integers here already, no need for shacl that way
+        range xsd:int
+    ]
+
+    scalar property hasColumnPosition [
+        domain Cell
+        // Maybe limit to positive integers here already, no need for shacl that way
+        range xsd:int
+    ]
+
+    scalar property hasRowId [
+        domain Row
+        // Maybe limit to positive integers here already, no need for shacl that way
+        range xsd:int
+    ]
+
+    scalar property hasColumnId [
+        domain Row
+        // Maybe limit to positive integers here already, no need for shacl that way
+        range xsd:int
+    ]
+
+    enumerated scalar HeadingModifier [
+        "yes",
+        "no"
+    ]
+
+    scalar property hasHeadingModifier [
+        domain Row
+        range HeadingModifier
+        functional
+    ]
+
+    concept HeaderRow :> Row [
+        restricts scalar property hasHeadingModifier to "yes"
+    ]
+
+    relation entity HasCell [
+        from Collection
+        to Cell
+        forward hasCell
+        reverse isInCollection
+    ]
+
+    relation entity HasCells [
+        from TabularData
+        to Cell
+        forward hasCells
+        reverse isCellOfTabularData
+    ]
+
+    relation entity HasRows [
+        from TabularData
+        to Row
+        forward hasRow
+        reverse isRowOfTabularData
+    ]
+
+    relation entity HasColumns [
+        from TabularData
+        to Column
+        forward hasColumn
+        reverse isColumnOfTabularData
+    ]
+}

+ 29 - 0
models/ontology/oml/text.oml

@@ -0,0 +1,29 @@
+vocabulary <http://ontology.rys.one/drivetrain/vocabulary/text#> as text {
+    extends <http://www.w3.org/2001/XMLSchema#> as xsd
+    extends <http://purl.org/dc/elements/1.1/> as dc
+    extends <http://www.w3.org/2000/01/rdf-schema#> as rdfs
+
+    extends <http://ontology.rys.one/drivetrain/vocabulary/file#> as file
+
+
+    concept TextData :> file:Data, file:File
+    concept TextLine :> file:Data
+
+    scalar property isOnLine [
+        domain TextLine
+        range xsd:int
+        functional
+    ]
+
+    scalar property holdsTextData [
+        domain TextLine
+        range xsd:string
+    ]
+
+    relation entity HasTextLine [
+        from TextData
+        to TextLine
+        forward hasTextLine
+        reverse isInTextFile
+    ]
+}