Difference between revisions of "Simantics Developer Documentation"
(64 intermediate revisions by 8 users not shown) | |||
Line 2: | Line 2: | ||
[[image:Simantics_logo_pile_01.png|right|border|400px]] | [[image:Simantics_logo_pile_01.png|right|border|400px]] | ||
− | '''Simantics''' is a software platform for modelling and simulation. The system has client-server architecture with a semantic ontology-based modelling database and Eclipse framework -based client software with plug-in interface. The Simantics platform and many of its components are open source under Eclipse Public License (EPL). | + | '''Simantics''' is a software platform for modelling and simulation. The system has client-server architecture with a semantic ontology-based modelling database and Eclipse framework -based client software with plug-in interface. The Simantics platform and many of its components are open source under [http://www.eclipse.org/legal/epl-v10.html Eclipse Public License (EPL)]. |
The philosophy of the Simantics platform is to offer an open, high level application platform on which different computational tools can be easily integrated to form a common environment for modelling and simulation. The platform includes several modelling tools, so-called editors, for e.g. 2D graph-like hierarchical model composition and semantic graph browsing. | The philosophy of the Simantics platform is to offer an open, high level application platform on which different computational tools can be easily integrated to form a common environment for modelling and simulation. The platform includes several modelling tools, so-called editors, for e.g. 2D graph-like hierarchical model composition and semantic graph browsing. | ||
Line 11: | Line 11: | ||
This ''Simantics Developer Documentation'' is targeted to programmers and software developers developing either the platform itself or additional plug-ins to be used with or on the platform. The [[userwiki:Main_Page|Simantics End User Documentation]] complements to documentation for the Simantics platform offering overview and detailed information about the platform from the user's point of view. The [https://www.simantics.org/simantics Simantics] website is the source of information for the Simantics project and related subjects[[Tutorials|.]] | This ''Simantics Developer Documentation'' is targeted to programmers and software developers developing either the platform itself or additional plug-ins to be used with or on the platform. The [[userwiki:Main_Page|Simantics End User Documentation]] complements to documentation for the Simantics platform offering overview and detailed information about the platform from the user's point of view. The [https://www.simantics.org/simantics Simantics] website is the source of information for the Simantics project and related subjects[[Tutorials|.]] | ||
− | <div style="color:white;">Disclaimer Warning: This site may cause narcolepsia in some readers. Consult your doctor if | + | <div style="color:white;">Disclaimer Warning: This site may cause narcolepsia in some readers. Consult your doctor if sensitive to boredom.</div> |
Line 17: | Line 17: | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
=== Overview === | === Overview === | ||
+ | |||
+ | * [[Glossary]] | ||
* [[Introduction to Simantics Architecture]] | * [[Introduction to Simantics Architecture]] | ||
* [[Roadmap]] | * [[Roadmap]] | ||
Line 26: | Line 28: | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
+ | |||
=== Miscellaneous Documents === | === Miscellaneous Documents === | ||
− | * [[Development Environment Setup Guide]] | + | |
+ | * [[Quick Development Environment Setup|Quick Development Environment Setup Guide]] | ||
* [[Target Platform]] | * [[Target Platform]] | ||
* [[Development Practices]] | * [[Development Practices]] | ||
− | * [[ | + | * [[Internationalization]] |
* [[Update Site]] | * [[Update Site]] | ||
* [[Coding Convention]] | * [[Coding Convention]] | ||
+ | * [[Tools]] | ||
+ | * [[Testing]] | ||
+ | * [[FAQ]] | ||
+ | * [[Migration To Git]] | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
Line 41: | Line 49: | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
+ | |||
=== Ontology Development === | === Ontology Development === | ||
+ | |||
* [[:Media:Layer0.pdf|Layer0.pdf]] ([[:File:Layer0.pdf|log]]) | * [[:Media:Layer0.pdf|Layer0.pdf]] ([[:File:Layer0.pdf|log]]) | ||
* [[Graph Compiler]] | * [[Graph Compiler]] | ||
* [[Transferable Graph]] | * [[Transferable Graph]] | ||
+ | * [[Binary Container Format]] | ||
* [[Graph File Format]] | * [[Graph File Format]] | ||
* [[Version Migration]] | * [[Version Migration]] | ||
* [[Tutorial: Ontology Development]] | * [[Tutorial: Ontology Development]] | ||
+ | * [[Check list: Model browser contributions]] | ||
+ | * [[XML Schema Conversion]] | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
=== Database Development === | === Database Development === | ||
− | |||
− | |||
− | * [[ | + | * [[Interface summary]] |
+ | * [[Tutorial: Quickstart]] | ||
+ | * [[Tutorial: Database Development]] | ||
* [[Resource Adaptation]] | * [[Resource Adaptation]] | ||
− | * [[ | + | * [[Resource Serialization]] |
* [[Inverse Relations]] | * [[Inverse Relations]] | ||
− | * [[ | + | * [[Virtual Graphs]] |
+ | * [[Functions]] | ||
+ | * [[Procedural Values]] | ||
+ | * [[Variable]] | ||
+ | * [[Undo Mechanism]] | ||
+ | * [[Team Features]] | ||
* [[Subgraph Extents]] | * [[Subgraph Extents]] | ||
+ | * [[Database Testing]] | ||
+ | |||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
=== Data management & Experiment Control === | === Data management & Experiment Control === | ||
+ | |||
* [[Databoard Specification]] | * [[Databoard Specification]] | ||
* [[Databoard Developer Manual|Databoard Java Manual]] | * [[Databoard Developer Manual|Databoard Java Manual]] | ||
− | * [[ | + | * [[Experiment Control]] |
* [[Dataflows]] | * [[Dataflows]] | ||
− | |||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
=== UI Development === | === UI Development === | ||
+ | |||
* [[Org.simantics.browsing.ui_Manual|Browser Manual]] | * [[Org.simantics.browsing.ui_Manual|Browser Manual]] | ||
* [[org.simantics.browsing.ui.feature|Browser Component]] | * [[org.simantics.browsing.ui.feature|Browser Component]] | ||
+ | * [[Org.simantics.scenegraph.loader|Scene Graph Loader]] | ||
* [[Org.simantics.message|Messages]] | * [[Org.simantics.message|Messages]] | ||
+ | * [[Org.simantics.views|Modelled Views]] | ||
+ | * [[Org.simantics.document|Documents]] | ||
+ | * [[Selection View]] | ||
|} | |} | ||
{|width="100%" | {|width="100%" | ||
Line 82: | Line 107: | ||
=== Simantics Constraint Language=== | === Simantics Constraint Language=== | ||
− | * [[SCL_Language|SCL Language]] | + | |
+ | * [http://www.simantics.org/~niemisto/Introduction%20to%20SCL.pptx Introduction to SCL] | ||
+ | * [[SCL Compiler]] | ||
+ | * [[SCL Tutorial]] | ||
+ | * [[SCL Types]] | ||
+ | <!--* [[SCL_Language|SCL Language]] --> | ||
<!--* [https://www.simantics.org/wiki/index.php/Org.simantics.scl_Compiler SCL Compiler]--> | <!--* [https://www.simantics.org/wiki/index.php/Org.simantics.scl_Compiler SCL Compiler]--> | ||
* [[Org.simantics.objmap_Manual|Object Map Manual]] | * [[Org.simantics.objmap_Manual|Object Map Manual]] | ||
+ | * [[SCL Registry]] | ||
+ | * [https://www.simantics.org/download/master/scldoc SCL Reference] | ||
+ | <!-- | ||
+ | * [http://www.simantics.org/~niemisto/Transformations.pdf Transformation language specification] | ||
+ | * [http://www.simantics.org/~niemisto/Transformations_2015_01_23.pdf Transformation language presentation] | ||
+ | * [http://www.simantics.org/~niemisto/CHRGuide.html CHR Guide] | ||
+ | --> | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
=== Model Development === | === Model Development === | ||
+ | |||
* [[Structural Ontology]] | * [[Structural Ontology]] | ||
+ | * [[Users and Roles]] | ||
* [[Models]] | * [[Models]] | ||
− | *[[Tutorial: Model Development]] | + | * [[Concept Versioning]] |
+ | * [[Component Identification]] | ||
+ | * [[Tutorial: Model Development]] | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
+ | |||
=== Project Development === | === Project Development === | ||
+ | |||
* [[Project Management Conceptual Model]] | * [[Project Management Conceptual Model]] | ||
* [[Project Development]] | * [[Project Development]] | ||
Line 100: | Line 143: | ||
|width="25%" valign="top"| | |width="25%" valign="top"| | ||
+ | |||
=== Diagram Development === | === Diagram Development === | ||
− | *[[2D Ontologies]] | + | |
− | *[[org.simantics.diagram|Diagram]] | + | * [[2D Ontologies]] |
− | *[[org.simantics.scenegraph|Scene graph]] | + | * [[org.simantics.diagram|Diagram]] |
− | *[[Diagram connections]] | + | * [[org.simantics.scenegraph|Scene graph]] |
− | *[[Tutorial: Diagram Development]] | + | * [[Diagram connections]] |
+ | * [[Tutorial: Diagram Development]] | ||
+ | |||
+ | |} | ||
+ | {|width="100%" | ||
+ | |width="25%" valign="top"| | ||
+ | |||
+ | === Issue Development === | ||
+ | |||
+ | * [[Issue subsystem general description]] | ||
+ | |||
+ | |width="25%" valign="top"| | ||
+ | |||
+ | === Utilities === | ||
+ | |||
+ | * [[Simantics Generic File Import]] | ||
+ | * [[Logging in Simantics Platform]] | ||
|} | |} | ||
----- | ----- |
Latest revision as of 12:42, 7 May 2019
Simantics is a software platform for modelling and simulation. The system has client-server architecture with a semantic ontology-based modelling database and Eclipse framework -based client software with plug-in interface. The Simantics platform and many of its components are open source under Eclipse Public License (EPL).
The philosophy of the Simantics platform is to offer an open, high level application platform on which different computational tools can be easily integrated to form a common environment for modelling and simulation. The platform includes several modelling tools, so-called editors, for e.g. 2D graph-like hierarchical model composition and semantic graph browsing.
One of the biggest innovations in the Simantics platform is the semantic modelling approach itself and high-level ontology tools. The semantic database, i.e. triplestore, on the server side enables high performance data management and arbitrary mappings of data. This enables e.g. efficient mapping of simulation and measurement data to the model configuration and its visualisation.
The Simantics development and maintenance process is built to be solid and scalable from the very beginning. The objective is to aim far to the future what comes to requirements for scalability, usability, and reliability.
This Simantics Developer Documentation is targeted to programmers and software developers developing either the platform itself or additional plug-ins to be used with or on the platform. The Simantics End User Documentation complements to documentation for the Simantics platform offering overview and detailed information about the platform from the user's point of view. The Simantics website is the source of information for the Simantics project and related subjects.
Overview |
Miscellaneous Documents |
Ontology Development |
Database Development
|
Data management & Experiment Control |
UI Development |
Simantics Constraint Language |
Model Development |
Project Development |
Diagram Development |
Issue Development |
Utilities |