Item:OSWdb485a954a88465287b341d2897a84d6: Difference between revisions

add class diagrams
(add QR code)
Tag: 2017 source edit
(add class diagrams)
Tag: 2017 source edit
Line 41: Line 41:
* ... but it's just a container, the core JSON-based concept is highly portable  
* ... but it's just a container, the core JSON-based concept is highly portable  


== Ontologies ==
== Link to Ontologies ==


* Ontology classes are just specific schemas
* Ontology classes are just specific schemas / schemas represent "icons" of "real objects"
* Automatic import
* Automatic import via python:
* Combination with data schemas
* Combination with data schemas, e. g. to populate autocomplete fields
* Reexport => Pull request
* Planned: Comments => Issues, Edits => Reexport => Pull request


== Usecases ==
== Link to Ontologies: Dual hierarchy ==
 
{{#mermaid:
classDiagram
 
    class Schema_Entity {
        String uuid
    }
    class Schema_Class {
    }
 
    Schema_Class <-- Schema_Entity: type
    Schema_Entity <-- Class_Entity: schema
 
    class Schema_OntologyTerm{
    }
    Schema_Class <|-- Schema_OntologyTerm : allOf
    Schema_OntologyTerm <-- Class_OwlThing : schema
 
 
    Class_OwlThing <|-- Class_Entity: subclassOf
 
    class Schema_Item {
        String type
        subclassOf Class_Item category
    }
 
    class Class_Entity {
        Schema_Entity schema
    }
    Schema_Entity <|-- Schema_Item : allOf
    Schema_Item <-- Class_Item: schema
    Class_Entity <|-- Class_Item: subclassOf
 
    class Schema_Physical {
        String location
    }
    Schema_Item <|-- Schema_Physical : allOf
 
    Class_Item <|-- Class_Device : subclassOf
    Schema_DeviceClass <-- Class_Device : schema
 
    class Schema_DeviceClass {
        String manufacturer
        subclassOf Class_Device category
    }
    Schema_Item <|-- Schema_DeviceClass : allOf
  |
  config.theme = neutral
}}
 
== Link to Ontologies: Example ==
{{#mermaid:
classDiagram
    class Schema_Physical {
        String location
    }
    Schema_Item <|-- Schema_Physical : allOf
 
    Class_Item <|-- Class_Device : subclassOf
    Class_Device <|-- Class_MeasurementDevice : subclassOf
    Schema_DeviceClass <-- Class_Device : schema
 
    class Schema_DeviceClass {
        String manufacturer
        subclassOf Class_Device category
    }
    Schema_Item <|-- Schema_DeviceClass : allOf
 
    class Instance_DeviceType1 {
        manufacturer: CompanyABC
        category: Class_MeasurementDevice
    }
    Schema_Item <|-- Instance_DeviceType1 : type
    Schema_DeviceClass <-- Instance_DeviceType1 : type
 
    class Schema_DeviceInstance {
        Schema_DeviceClass device_type
        String location
    }
    Schema_Physical <|-- Schema_DeviceInstance : allOf
    Schema_DeviceClass o-- Schema_DeviceInstance : device_type
 
    class Instance_MyDevice {
        device_type: Instance_DeviceType1
        location: somewhere
    }
    Schema_DeviceInstance <-- Instance_MyDevice : type
    Instance_DeviceType1 o-- Instance_MyDevice : device_type
  |
  config.theme = neutral
}}
 
== Usecases and Applications ==


* Ontologies Documentation, Visualization, Demonstration
* Ontologies Documentation, Visualization, Demonstration
* Tool and Workflow Registry
* Tool and Workflow Registry
* Dataspace Catelogue
* Dataspace Catelogue
* LIMS, ELN
* ... whatever you want it to be