--- /dev/null
+L0 = <http://www.simantics.org/Layer0-1.1>
+DOC = <http://www.simantics.org/Documentation-1.2>
+SWT = <http://www.simantics.org/SWT-1.0>
+DATA = <http://www.simantics.org/Datatypes-1.1>
+PROPERTIES = <http://www.simantics.org/SWT-1.0/Properties>
+LITERALS = <http://www.simantics.org/SWT-1.0/Literals>
+FUNCTIONS = <http://www.simantics.org/SWT-1.0/Functions>
+STR = <http://www.simantics.org/Structural-1.2>
+
+SWT.connect : L0.Template
+ @template %parent %relation %connection %child
+ %parent
+ %relation %connection
+ %child
+ DOC.Relations.parent %connection
+ %connection : STR.Connection
+
+SWT.defAttribute : L0.Template
+ @template %subject %range %valueType
+ %subject <R L0.HasProperty : PROPERTIES.ParameterType : DOC.Document.AttributeRelation : L0.FunctionalRelation
+ L0.HasRange %range
+ L0.RequiresValueType %valueType
+
+attribute = COMPONENTS.attribute : L0.Template
+ @template %subject %relation %default
+ %subject
+ L0.Asserts _ : L0.Assertion
+ L0.HasPredicate %relation
+ L0.HasObject %default
+ L0.default false
+
+COMPONENTS = SWT.Components : L0.Library
+
+COMPONENTS.Component <T DOC.Components.PrimitiveComponent
+
+ >-- COMPONENTS.Component.background
+ @SWT.defAttribute DATA.RGB.Integer "(Integer,Integer,Integer)"
+ >-- COMPONENTS.Component.foreground
+ @SWT.defAttribute DATA.RGB.Integer "(Integer,Integer,Integer)"
+ >-- COMPONENTS.Component.font
+ @SWT.defAttribute DATA.Font "(String,Integer,String)"
+ >-- COMPONENTS.Component.multiLine
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.Component.VScroll
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.Component.HScroll
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.Component.NoScroll
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.Component.alignment
+ @SWT.defAttribute L0.Value "String"
+
+ @attribute COMPONENTS.Component.background
+ (255,255,255) : DATA.RGB.Integer
+ @attribute COMPONENTS.Component.foreground
+ (0,0,0) : DATA.RGB.Integer
+ @attribute COMPONENTS.Component.font
+ ("Arial",10,"Normal") : DATA.Font
+ @attribute COMPONENTS.Component.alignment "left"
+
+COMPONENTS.GridComposite <T COMPONENTS.Component
+
+ >-- COMPONENTS.GridComposite.extendedMargins
+ @SWT.defAttribute LITERALS.Margins "(Integer,Integer,Integer,Integer)"
+ >-- COMPONENTS.GridComposite.numColumns
+ @SWT.defAttribute L0.Value "Integer"
+
+ @attribute COMPONENTS.GridComposite.extendedMargins
+ (0, 0, 0, 0) : LITERALS.Margins
+ @attribute COMPONENTS.GridComposite.numColumns
+ 1 : L0.Integer
+
+SWT.gridComposite : L0.Template
+ @template %instance %numColumns
+ %instance : COMPONENTS.GridComposite
+ COMPONENTS.GridComposite.numColumns %numColumns
+
+COMPONENTS.ScrolledComposite <T COMPONENTS.Component
+
+SWT.scrolledComposite : L0.Template
+ @template %instance
+ %instance : COMPONENTS.ScrolledComposite
+
+COMPONENTS.GridCell <T COMPONENTS.Component
+
+ >-- COMPONENTS.GridCell.grabVertical
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.GridCell.grabHorizontal
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.GridCell.span
+ @SWT.defAttribute L0.Value "Integer"
+
+ @attribute COMPONENTS.GridCell.grabVertical
+ false
+ @attribute COMPONENTS.GridCell.grabHorizontal
+ false
+ @attribute COMPONENTS.GridCell.span
+ 1
+
+SWT.gridCell : L0.Template
+ @template %instance %connection %grabHorizontal %grabVertical %span %child
+ %instance : COMPONENTS.GridCell
+ COMPONENTS.GridCell.grabVertical %grabVertical
+ COMPONENTS.GridCell.grabHorizontal %grabHorizontal
+ COMPONENTS.GridCell.span %span
+ %instance
+ DOC.Relations.part1 %connection
+ %child
+ DOC.Relations.parent %connection
+ %connection : STR.Connection
+
+COMPONENTS.Label <T COMPONENTS.Component
+
+ >-- COMPONENTS.Label.text
+ @SWT.defAttribute L0.Value "String"
+
+ @attribute COMPONENTS.Label.text
+ ""
+
+SWT.label : L0.Template
+ @template %instance %text
+ %instance : COMPONENTS.Label
+ COMPONENTS.Label.text %text
+
+COMPONENTS.Button <T COMPONENTS.Component
+
+ >-- COMPONENTS.Button.text
+ @SWT.defAttribute L0.Value "String"
+ >-- COMPONENTS.Button.onPress
+ @SWT.defAttribute L0.Value "EventHandler"
+
+ @attribute COMPONENTS.Button.text
+ ""
+
+SWT.button : L0.Template
+ @template %instance %caption
+ %instance : COMPONENTS.Button
+ COMPONENTS.Button.text %caption
+
+COMPONENTS.TrackedText <T COMPONENTS.Component
+
+ >-- COMPONENTS.TrackedText.text
+ @SWT.defAttribute L0.Value "String"
+ >-- COMPONENTS.TrackedText.invalidBackground
+ @SWT.defAttribute DATA.RGB.Integer "(Integer,Integer,Integer)"
+ >-- COMPONENTS.TrackedText.inactiveBackground
+ @SWT.defAttribute DATA.RGB.Integer "(Integer,Integer,Integer)"
+ >-- COMPONENTS.TrackedText.hoverBackground
+ @SWT.defAttribute DATA.RGB.Integer "(Integer,Integer,Integer)"
+ >-- COMPONENTS.TrackedText.editingBackground
+ @SWT.defAttribute DATA.RGB.Integer "(Integer,Integer,Integer)"
+ >-- COMPONENTS.TrackedText.onModify
+ @SWT.defAttribute L0.Value "AbstractEventHandler"
+ >-- COMPONENTS.TrackedText.validator
+ @SWT.defAttribute L0.Value "StringInputValidator"
+
+ @attribute COMPONENTS.TrackedText.text
+ ""
+ @attribute COMPONENTS.TrackedText.invalidBackground
+ (255,128,128) : DATA.RGB.Integer
+ @attribute COMPONENTS.TrackedText.inactiveBackground
+ (245,246,190) : DATA.RGB.Integer
+ @attribute COMPONENTS.TrackedText.hoverBackground
+ (254,255,197) : DATA.RGB.Integer
+ @attribute COMPONENTS.TrackedText.editingBackground
+ (255,255,255) : DATA.RGB.Integer
+
+SWT.trackedText : L0.Template
+ @template %instance %text %onModify
+ %instance : COMPONENTS.TrackedText
+ COMPONENTS.TrackedText.text %text
+ COMPONENTS.TrackedText.onModify %onModify
+
+
+COMPONENTS.Explorer <T COMPONENTS.Component
+
+ >-- COMPONENTS.Explorer.browseContext
+ @SWT.defAttribute L0.Value "String"
+ >-- COMPONENTS.Explorer.displayFilter
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.Explorer.displayHeader
+ @SWT.defAttribute L0.Value "Boolean"
+ >-- COMPONENTS.Explorer.contextMenuId
+ @SWT.defAttribute L0.Value "String"
+ >-- COMPONENTS.Explorer.explorerInput
+ @SWT.defAttribute L0.Value "Variable"
+ >-- COMPONENTS.Explorer.columns
+ @SWT.defAttribute LITERALS.Columns "Columns"
+ >-- COMPONENTS.Explorer.editingColumn
+ @SWT.defAttribute L0.Value "String"
+ >-- COMPONENTS.Explorer.dragSourceListenerFactory
+ @SWT.defAttribute L0.Value "DragSourceListenerFactory"
+
+ @attribute COMPONENTS.Explorer.browseContext
+ ""
+ @attribute COMPONENTS.Explorer.displayFilter
+ false
+ @attribute COMPONENTS.Explorer.displayHeader
+ false
+ @attribute COMPONENTS.Explorer.explorerInput
+ FUNCTIONS.explorerInput
+
+SWT.explorer : L0.Template
+ @template %instance %displayFilter %displayHeader %browseContext %contextMenuId %columns
+ %instance : COMPONENTS.Explorer
+ COMPONENTS.Explorer.displayFilter %displayFilter
+ COMPONENTS.Explorer.displayHeader %displayHeader
+ COMPONENTS.Explorer.browseContext %browseContext
+ COMPONENTS.Explorer.contextMenuId %contextMenuId
+ COMPONENTS.Explorer.columns %columns
+
+COMPONENTS.Combo <T COMPONENTS.Component
+ >-- COMPONENTS.Combo.available
+ @SWT.defAttribute L0.Value "[String]"
+ >-- COMPONENTS.Combo.selected
+ @SWT.defAttribute L0.Value "String"
+ >-- COMPONENTS.Combo.onModify
+ @SWT.defAttribute L0.Value "AbstractEventHandler"
+
+SWT.combo : L0.Template
+ @template %instance %available %selected %onModify
+ %instance : COMPONENTS.Combo
+ COMPONENTS.Combo.available %available
+ COMPONENTS.Combo.selected %selected
+ COMPONENTS.Combo.onModify %onModify
+
+COMPONENTS.Browser <T SWT.Components.Component
+ >-- COMPONENTS.Browser.url
+ @SWT.defAttribute L0.Value "String"
+
+COMPONENTS.SCLTextEditor <T SWT.Components.Component
+ >-- COMPONENTS.SCLTextEditor.textAndErrors
+ @SWT.defAttribute L0.Value "TextAndErrors"
+ >-- COMPONENTS.SCLTextEditor.onModify
+ @SWT.defAttribute L0.Value "AbstractEventHandler"
+
+SWT.sclTextEditor : L0.Template
+ @template %instance %textAndErrors %onModify
+ %instance : COMPONENTS.SCLTextEditor
+ COMPONENTS.SCLTextEditor.textAndErrors %textAndErrors
+ COMPONENTS.SCLTextEditor.onModify %onModify
+
+
\ No newline at end of file