https://dev.simantics.org/index.php?title=Structural_Ontology&feed=atom&action=history
Structural Ontology - Revision history
2024-03-29T04:45:55Z
Revision history for this page on the wiki
MediaWiki 1.34.0
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=2707&oldid=prev
Tuukka Lehtonen: /* Connection */
2012-03-22T13:19:30Z
<p><span dir="auto"><span class="autocomment">Connection</span></span></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 13:19, 22 March 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l73" >Line 73:</td>
<td colspan="2" class="diff-lineno">Line 73:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>if a leg of the chair is connected to the seat, the connection points do not</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>if a leg of the chair is connected to the seat, the connection points do not</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>just happen to share the same position, there is glue between the components</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>just happen to share the same position, there is glue between the components</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>keep the connection points together <del class="diffchange diffchange-inline">event </del>if force is applied to one of the</div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">to </ins>keep the connection points together <ins class="diffchange diffchange-inline">even </ins>if force is applied to one of the</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>components. Connection may also conduct, for example, electricity or signals.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>components. Connection may also conduct, for example, electricity or signals.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>More than two connection points can be connected with the same connection.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>More than two connection points can be connected with the same connection.</div></td></tr>
</table>
Tuukka Lehtonen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=1753&oldid=prev
Juha Kortelainen at 16:00, 28 January 2011
2011-01-28T16:00:03Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 16:00, 28 January 2011</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l191" >Line 191:</td>
<td colspan="2" class="diff-lineno">Line 191:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Type C() can be written as C.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Type C() can be written as C.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">[[Category: Model Development]]</ins></div></td></tr>
</table>
Juha Kortelainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=1277&oldid=prev
Toni Kalajainen at 08:18, 4 November 2010
2010-11-04T08:18:44Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 08:18, 4 November 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l173" >Line 173:</td>
<td colspan="2" class="diff-lineno">Line 173:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> )</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> )</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> )</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> )</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"> </del></div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline"> </ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> flatten(Component(type, properties), bindings) = {</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> flatten(Component(type, properties), bindings) = {</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> transformedProperties = map(</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> transformedProperties = map(</div></td></tr>
</table>
Toni Kalajainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=416&oldid=prev
Toni Kalajainen at 11:41, 30 September 2010
2010-09-30T11:41:35Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 11:41, 30 September 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l110" >Line 110:</td>
<td colspan="2" class="diff-lineno">Line 110:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Component type declares the properties its instances may have using Property Definitions. </div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Component type declares the properties its instances may have using Property Definitions. </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>This mechanism comes directly from [[Layer0 <del class="diffchange diffchange-inline">ontology#Simple constraints|Layer0 ontology</del>]].</div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>This mechanism comes directly from <ins class="diffchange diffchange-inline">Layer0 ontology (</ins>[[<ins class="diffchange diffchange-inline">File:</ins>Layer0<ins class="diffchange diffchange-inline">.pdf</ins>]]<ins class="diffchange diffchange-inline">)</ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[image:Structural7.png]]</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[image:Structural7.png]]</div></td></tr>
</table>
Toni Kalajainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=415&oldid=prev
Toni Kalajainen at 11:40, 30 September 2010
2010-09-30T11:40:47Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 11:40, 30 September 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l9" >Line 9:</td>
<td colspan="2" class="diff-lineno">Line 9:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>in domain specific ontologies.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>in domain specific ontologies.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The diagrams in this page follow Graphical ontology notation in [[File:<del class="diffchange diffchange-inline">Layer0.pdf|</del>Layer0.pdf]].</div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The diagrams in this page follow Graphical ontology notation in [[File:Layer0.pdf]].</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Basic concepts ==</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Basic concepts ==</div></td></tr>
</table>
Toni Kalajainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=414&oldid=prev
Toni Kalajainen at 11:40, 30 September 2010
2010-09-30T11:40:37Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 11:40, 30 September 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l9" >Line 9:</td>
<td colspan="2" class="diff-lineno">Line 9:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>in domain specific ontologies.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>in domain specific ontologies.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The diagrams in this page follow <del class="diffchange diffchange-inline">[[</del>Graphical ontology notation]].</div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The diagrams in this page follow Graphical ontology notation <ins class="diffchange diffchange-inline">in [[File:Layer0.pdf|Layer0.pdf</ins>]].</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Basic concepts ==</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Basic concepts ==</div></td></tr>
</table>
Toni Kalajainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=266&oldid=prev
Toni Kalajainen at 13:41, 29 September 2010
2010-09-29T13:41:00Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 13:41, 29 September 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l191" >Line 191:</td>
<td colspan="2" class="diff-lineno">Line 191:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Type C() can be written as C.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Type C() can be written as C.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;"></del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">== User interface ==</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;"></del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Simantics platform contains standard user interface components that understand structural ontology:</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[Structural model browser]]</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[Structural model manipulation]]</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[Structural property view]]</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">* [[Structural modeling with diagrams]]</del></div></td><td colspan="2"> </td></tr>
</table>
Toni Kalajainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=254&oldid=prev
Toni Kalajainen at 13:35, 29 September 2010
2010-09-29T13:35:44Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 13:35, 29 September 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l191" >Line 191:</td>
<td colspan="2" class="diff-lineno">Line 191:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Type C() can be written as C.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Type C() can be written as C.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;"></del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">TODO...</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== User interface ==</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== User interface ==</div></td></tr>
</table>
Toni Kalajainen
https://dev.simantics.org/index.php?title=Structural_Ontology&diff=253&oldid=prev
Toni Kalajainen: Created page with 'Category:Ontologies Structural ontology contains basic concepts for describing the structure of [http://en.wikipedia.org/wiki/System systems]. These concepts are described se...'
2010-09-29T13:35:30Z
<p>Created page with '<a href="/index.php?title=Category:Ontologies" title="Category:Ontologies">Category:Ontologies</a> Structural ontology contains basic concepts for describing the structure of [http://en.wikipedia.org/wiki/System systems]. These concepts are described se...'</p>
<p><b>New page</b></p><div>[[Category:Ontologies]]<br />
Structural ontology contains basic concepts for describing the structure<br />
of [http://en.wikipedia.org/wiki/System systems]. These concepts are<br />
described separately from domain specific ontologies in order to make<br />
their reuse possible. The benefit of the reuse is increased <br />
possibilities for reusing also code visualizing and manipulating<br />
structural models. The structural ontology does not specify<br />
the behavior of the structural models, but this is defined<br />
in domain specific ontologies.<br />
<br />
The diagrams in this page follow [[Graphical ontology notation]].<br />
<br />
== Basic concepts ==<br />
<br />
=== Component ===<br />
<br />
A component is the basic building block of a structural model.<br />
The configuration of the model itself is usually a component. <br />
A component may have substructure that contains other components.<br />
<br />
Example:<br />
<blockquote><br />
An apartment "JMT 10 104" is a component. It has substructure that<br />
contains a component "Kitchen in JMT 10 104". This component contains<br />
a component "A chair in the kitchen in JMT 10 104". The chair is <br />
composed of four legs and other components and they are composed of<br />
smaller components such as screws and wooden pieces.<br />
</blockquote><br />
<br />
[[image:Structural1.png]]<br />
<br />
=== Composite ===<br />
<br />
A composite is a component that is defined as a set of components<br />
connected to each other.<br />
<br />
Example:<br />
<blockquote><br />
In the example above, the chair is a composite that consists of<br />
four legs, a seat and a back. <br />
</blockquote><br />
<br />
Composite may have subtypes that allow only certain kind of compositions.<br />
For example, an automation composite would allow only automation components<br />
in its substructure.<br />
<br />
[[image:Structural2.png]]<br />
<br />
=== Property ===<br />
<br />
Components have usually properties that describe them. <br />
<br />
Example<br />
<blockquote><br />
The size of "JMT 10 104" is 38m<sup>2</sup>. The length of the leg of the chair<br />
is 60cm. <br />
</blockquote><br />
<br />
There are no special concepts for describing that a certain<br />
component has some properties: properties are written as any<br />
other attribute of the resource.<br />
<br />
This is an example drawn in graph notation (not in ontology notation):<br />
<br />
[[image:Structural3.png]]<br />
<br />
=== Connection ===<br />
<br />
Components may have ''connection points'' that can be connected to each other.<br />
The meaning of the connection varies by context and also by connection type.<br />
In many cases, the connection between connection points means that the connection<br />
points share the same spatial position and some other properties. For example,<br />
if a leg of the chair is connected to the seat, the connection points do not<br />
just happen to share the same position, there is glue between the components<br />
keep the connection points together event if force is applied to one of the<br />
components. Connection may also conduct, for example, electricity or signals.<br />
More than two connection points can be connected with the same connection.<br />
<br />
In structural ontology, the connection points are modelled as relations. For each<br />
connection point, there is a specific relation and two or more connection points<br />
of different components are connected by giving as a shared ''connection entity'' <br />
as a value to the connections using the connection points as relations.<br />
<br />
Connections may have properties and the Connection type may be inherited.<br />
In the domains where this is not necessary, the pure Connection-type can<br />
be used directly.<br />
<br />
[[image:Structural4.png]]<br />
<br />
=== Connection Joins ===<br />
<br />
The components that are connected with a connection entity must share the<br />
the same parent composite. In order to connect components in different<br />
composites ConnectionJoins are used:<br />
<br />
[[File:Structural5.png|center|frame|[[File:Structural5.graphml]] ]]<br />
<br />
Example:<br />
<br />
[[File:Structural6.png|center|frame|[[File:Structural6.graphml]] ]]<br />
<br />
=== Component type ===<br />
<br />
Each component has a component type. Some component types, such as Composite, are defined<br />
in Structural ontology, and have predefined semantics. Other component types belong to<br />
domain specific ontologies and their meaning is defined in applications using the ontology. <br />
In addition, new component types can be defined from already existing component types.<br />
<br />
The component type of the component is denoted by InstanceOf-relation.<br />
<br />
Component type declares the properties its instances may have using Property Definitions. <br />
This mechanism comes directly from [[Layer0 ontology#Simple constraints|Layer0 ontology]].<br />
<br />
[[image:Structural7.png]]<br />
<br />
For defining connection points, there is a type ConnectionPointDefinition that inherits<br />
PropertyDefinition.<br />
<br />
=== Defined component types ===<br />
<br />
Component types can be defined by giving a parametrized template component that defines<br />
the behavior of the instances of the type. <br />
<br />
[[image:Structural8.png]]<br />
<br />
Structural ontology defines the following ways to refer the parameters in the component:<br />
<br />
[[image:Structural9.png]]<br />
<br />
The variable is used to refer to the parameter when a property value is expected:<br />
<br />
[[image:Structural10.png]]<br />
<br />
In order to connect defined connection points to internal connection, the Binds-relation is directly used on Connections:<br />
<br />
[[image:Structural11.png]]<br />
<br />
In complex defined component types, new values must be calculated from parameters using expressions. Structural ontology<br />
does not define an expression syntax but this is done in other ontologies. In these ontologies, other ways to refer<br />
parameters can also be defined.<br />
<br />
=== Component name ===<br />
<br />
Every component must have a name that attached the component with HasName-relation. <br />
Two different components reachable from the same composite<br />
with ConsistsOf-relation must also have different names. <br />
Different component types may contain components with the same names even<br />
if they are instantiated to the same structural model.<br />
<br />
== Flattening ==<br />
<br />
The most of the semantics defined in structural ontology concerns flattening of the structural model. <br />
Flattening is rewriting of the structural model such that all components with defined component types<br />
are replaced by their definitions. The components remaining are the primitive components<br />
defined in domain specific ontologies, composites or other combining components.<br />
<br />
type Expression<br />
type Component =<br />
Composite((String, Component)[])<br />
| Component(ComponentType, Property[])<br />
type Property = (Resource, Expression)<br />
type ComponentType = {<br />
definition : Optional(Component)<br />
}<br />
type Bindings = (Resource, Expression)[]<br />
<br />
bind : (Expression, Bindings) -> Expression<br />
<br />
flatten(Composite(children), bindings) = Composite(<br />
map(<br />
(name, component) -> (name, flatten(component, bindings)), <br />
children<br />
)<br />
)<br />
<br />
flatten(Component(type, properties), bindings) = {<br />
transformedProperties = map(<br />
(property, value) -> (property, bind(value, bindings)), <br />
properties<br />
) ;<br />
match type.definition {<br />
null -> Component(type, transformedProperties)<br />
| definition -> flatten(definition, transformedProperties)<br />
}<br />
}<br />
<br />
== Typing connections and properties ==<br />
<br />
Connection types are terms with the following structure:<br />
* ?a, ?b, ... are types.<br />
* If t1,...,tn are types, so is C(t1,...,fn) where C is a type constructor.<br />
* Type C() can be written as C.<br />
<br />
TODO...<br />
<br />
== User interface ==<br />
<br />
Simantics platform contains standard user interface components that understand structural ontology:<br />
* [[Structural model browser]]<br />
* [[Structural model manipulation]]<br />
* [[Structural property view]]<br />
* [[Structural modeling with diagrams]]</div>
Toni Kalajainen