Design Pattern "Add a statement"

From SMW CindyKate - Main
Component 482640
Jump to: navigation, search

Content

There are 2 fundamental types of statements you add to a semantic web:

  • abstract terminology
  • concrete assertions, which instantiate terminology

Adding terminology

Adding assertions

About (non-) reification

Component 571934.png

The statement we want to add is Component 123456 assumes the role of a painter..

Legend: Formalizes the statement
        Characterizes the statement
        Semanticizes the statement
        Semanticizes the reified statement's characteristics
Non-reified statement, implementation 1 Non-reified statement, implementation 2 Reified statement
Static property Object-dynamic property Fully dynamic property
Full terminology impact: requires a statement-specific template Partial terminology impact: requires a predicate-specific template No terminology impact: requires no statement-related template
Page Component 123456
{{Component}}
[[Assumes role::Painter]]
Page Component 123456
{{Component}}
Page Component 123456
{{Component}}
{{Role Painter
  
  
  |Name=Value
Properties={{Property Name= Value=
  }}
}}
Page Component 123456
{{Component}}
{{Role
  
  |Object=Painter
  |Name=Value
Properties={{Property Name= Value=
  }}
}}
Page Component 123456
{{Component}}
{{Relation
  |Predicate=Assumes role
Object=Painter
  |Name=Value
Properties={{Property Name= Value=
  }}
}}
Page Template:Component Page Template:Component
[[Assumes role::Painter]]
Page Template:Component Page Template:Component Page Template:Component
Page Template:Role Painter
[[Assumes role::Painter]]
More static properties
Object-dynamic properties
Fully dynamic properties
Page Template:Role
[[Assumes role::{{{Object}}}]]
Static properties
More object-dynamic properties
Fully dynamic properties
Page Template:Relation
[[{{{Predicate}}}::{{{Object}}}]]
Static properties
Object-dynamic properties
More fully dynamic properties
This states that Component 123456 assumes the role of a painter in the context of it being Component 123456.

As intended, but bad design as it cannot be reified.

This states that Component 123456 assumes the role of a painter in the context of it being a component.

Not as intended.

This states that Component 123456 assumes the role of a painter in the context of it being Component 123456.

As intended, and good design.