<?xml version="1.0" encoding="UTF-8" standalone="no"?> <diagram program="umlet" version="14.3.0"> <help_text/> <zoom_level>6</zoom_level> <element> <id>UMLNote</id> <coordinates> <x>840</x> <y>1140</y> <w>174</w> <h>156</h> </coordinates> <panel_attributes>bg=#FAF8C8 fontsize=12 /@ optional elementAttribute/ /@ optional elementAttribute = default value/ *@ mandatoryElementAttribute* - mandatory element : Subclass (exact one) /- optionalElement : SubClass (zero or one)/ /* optionalElement : SubClass (zero or many)/ "Depends" Relation and Cardinality Subclassing Cardinalities: 0,1 : zero or one 1 : exact one 0..* : zero or many 1..* : at least one or many group=1</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>918</x> <y>1200</y> <w>66</w> <h>24</h> </coordinates> <panel_attributes>lt=<. fontsize=10 m1=0..* group=1</panel_attributes> <additional_attributes>90.0;20.0;10.0;20.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>918</x> <y>1224</y> <w>66</w> <h>18</h> </coordinates> <panel_attributes>lt=<<- fontsize=10 group=1</panel_attributes> <additional_attributes>90.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>924</x> <y>864</y> <w>90</w> <h>132</h> </coordinates> <panel_attributes><<enumeration>> BasicType -- boolean byte integer float string date time datetime blob uri void</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>552</x> <y>912</y> <w>84</w> <h>48</h> </coordinates> <panel_attributes>lt=<<. m1= 0..1 fontsize=12</panel_attributes> <additional_attributes>120.0;50.0;60.0;50.0;60.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>552</x> <y>864</y> <w>84</w> <h>48</h> </coordinates> <panel_attributes>lt=<<. m1=0..1 fontsize=12</panel_attributes> <additional_attributes>120.0;10.0;40.0;10.0;40.0;60.0;10.0;60.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>264</x> <y>864</y> <w>114</w> <h>90</h> </coordinates> <panel_attributes>DataType -- /@ name : Name/ /@ unitOfMeasure : text/ /@ semanticURI : uri/ /- Doc : Doc/ - TypeChoice /- Extend : Extend/ /* Constraints : Constraint/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>372</x> <y>834</y> <w>408</w> <h>72</h> </coordinates> <panel_attributes>lt=<<. m2=1..n fontsize=12</panel_attributes> <additional_attributes>10.0;60.0;40.0;60.0;40.0;10.0;660.0;10.0;660.0;90.0;610.0;90.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>372</x> <y>834</y> <w>408</w> <h>108</h> </coordinates> <panel_attributes>lt=<<. m2=1 fontsize=12</panel_attributes> <additional_attributes>10.0;60.0;40.0;60.0;40.0;10.0;660.0;10.0;660.0;150.0;610.0;150.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>624</x> <y>936</y> <w>114</w> <h>30</h> </coordinates> <panel_attributes>SimpleType -- *@ type : BasicType* fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>732</x> <y>954</y> <w>204</w> <h>24</h> </coordinates> <panel_attributes>lt=<<- m1= 1 fontsize=12</panel_attributes> <additional_attributes>320.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>624</x> <y>1008</y> <w>114</w> <h>66</h> </coordinates> <panel_attributes>Constraint -- *@ name : Name* /@ type : BasicType/ /@ value : text/ /@ semanticURI : uri/ /- Doc : Doc/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>372</x> <y>924</y> <w>264</w> <h>108</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>420.0;150.0;80.0;150.0;80.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>732</x> <y>990</y> <w>252</w> <h>84</h> </coordinates> <panel_attributes>lt=<<- m1=1 fontsize=12</panel_attributes> <additional_attributes>390.0;10.0;390.0;120.0;10.0;120.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>624</x> <y>864</y> <w>114</w> <h>30</h> </coordinates> <panel_attributes>StructType -- - DataType : DataType fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>624</x> <y>900</y> <w>114</w> <h>30</h> </coordinates> <panel_attributes>ArrayType -- - DataType : DataType fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>552</x> <y>894</y> <w>84</w> <h>30</h> </coordinates> <panel_attributes>lt=<<. m1= 0..1 fontsize=12 </panel_attributes> <additional_attributes>120.0;20.0;10.0;20.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>264</x> <y>780</y> <w>750</w> <h>24</h> </coordinates> <panel_attributes>halign=center SDT 4.0 - DataType fontsize=24 bg=gray lw=0.1</panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>48</x> <y>126</y> <w>966</w> <h>24</h> </coordinates> <panel_attributes>SDT 4.0 - Basic Elements halign=center fontsize=24 bg=gray lw=0.1</panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>474</x> <y>204</y> <w>144</w> <h>108</h> </coordinates> <panel_attributes>ModuleClass -- *@ name : Name* /@ optional : boolean = false/ /@ semanticURI : uri/ /- Doc : Doc/ /- Extend : Extend/ /* Properties : Property/ /* Actions : Action/ /* Data : DataPoint/ /* Events : Event/ fg=blue </panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>684</x> <y>204</y> <w>132</w> <h>78</h> </coordinates> <panel_attributes>Action -- *@ name : Name* /@ optional : boolean = false/ /@ semanticURI : uri/ /- Doc : Doc/ /- DataType : DataType/ /* Args : Arg/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>888</x> <y>258</y> <w>126</w> <h>78</h> </coordinates> <panel_attributes>Arg -- *@ name : Name* /@ optional : boolean = false/ /@ default : text/ /@ semanticURI : uri/ /- Doc : Doc/ - DataType : DataType fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>810</x> <y>258</y> <w>90</w> <h>24</h> </coordinates> <panel_attributes>lt=<. m1= 0..n fontsize=12</panel_attributes> <additional_attributes>130.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>60</x> <y>204</y> <w>138</w> <h>96</h> </coordinates> <panel_attributes>Domain -- *@ id : Name* /@ semanticURI : uri/ /- Doc : Doc/ /* Imports/ /* DataTypes : DataType/ /* ModuleClasses : ModuleClass/ /* DeviceClasses : DeviceClass/ /* ProductClasses : ProductClass/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>204</y> <w>102</w> <h>48</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>150.0;10.0;60.0;10.0;60.0;60.0;10.0;60.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>258</x> <y>390</y> <w>132</w> <h>66</h> </coordinates> <panel_attributes>SubDevice -- *@ id : Name* /@ semanticURI : uri/ /- Doc : Doc/ /* Properties : Property/ /* ModuleClasses : ModuleClass/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>276</y> <w>42</w> <h>54</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>10.0;60.0;40.0;60.0;40.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>318</y> <w>102</w> <h>114</h> </coordinates> <panel_attributes>lt=<. m1= 0..n fontsize=12</panel_attributes> <additional_attributes>150.0;10.0;80.0;10.0;80.0;170.0;10.0;170.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>888</x> <y>426</y> <w>126</w> <h>30</h> </coordinates> <panel_attributes>Doc -- fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>612</x> <y>204</y> <w>84</w> <h>42</h> </coordinates> <panel_attributes>lt=<. m1= 0..n fontsize=12</panel_attributes> <additional_attributes>120.0;10.0;40.0;10.0;40.0;50.0;10.0;50.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>852</x> <y>426</y> <w>48</w> <h>24</h> </coordinates> <panel_attributes>lt=<. m1=0..1 fontsize=12</panel_attributes> <additional_attributes>60.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>612</x> <y>240</y> <w>84</w> <h>72</h> </coordinates> <panel_attributes>lt=<. m1= 0..n fontsize=12</panel_attributes> <additional_attributes>120.0;90.0;40.0;90.0;40.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>684</x> <y>288</y> <w>132</w> <h>108</h> </coordinates> <panel_attributes>DataPoint -- *@ name : Name* /@ optional : boolean = false/ /@ writable : boolean = true/ /@ readable : boolean = true/ /@ eventable : boolean = false/ /@ default : text/ /@ semanticURI : uri/ /- Doc : Doc/ - DataType : DataType fg=blue </panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>684</x> <y>402</y> <w>132</w> <h>66</h> </coordinates> <panel_attributes>Event -- *@ name : Name* /@ optional : boolean = false/ /@ semanticURI : uri/ /- Doc : Doc/ /* Data : DataPoint/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>612</x> <y>300</y> <w>84</w> <h>126</h> </coordinates> <panel_attributes>lt=<. m1= 0..n fontsize=12</panel_attributes> <additional_attributes>120.0;180.0;80.0;180.0;80.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>204</y> <w>102</w> <h>252</h> </coordinates> <panel_attributes>lt=<. </panel_attributes> <additional_attributes>150.0;10.0;100.0;10.0;100.0;400.0;10.0;400.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>258</x> <y>306</y> <w>132</w> <h>78</h> </coordinates> <panel_attributes>DeviceClass -- *@ id : Name* /@ semanticURI : uri/ /- Doc : Doc/ /* Properties : Property/ /* ModuleClasses : ModuleClass/ /* SubDevices : SubDevice/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>366</y> <w>48</w> <h>48</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>10.0;50.0;60.0;50.0;60.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>204</y> <w>102</w> <h>168</h> </coordinates> <panel_attributes>lt=<. fontsize=12</panel_attributes> <additional_attributes>150.0;10.0;100.0;10.0;100.0;260.0;10.0;260.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>318</y> <w>102</w> <h>42</h> </coordinates> <panel_attributes>lt=<.</panel_attributes> <additional_attributes>150.0;10.0;80.0;10.0;80.0;50.0;10.0;50.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>474</x> <y>318</y> <w>144</w> <h>78</h> </coordinates> <panel_attributes>Property -- *@ name : Name* /@ optional : boolean = false/ /@ value : text/ /@ semanticURI : uri/ /- Doc : Doc/ - DataType : SimpleType fg=blue transparency=80</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>810</x> <y>204</y> <w>42</w> <h>240</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>10.0;10.0;40.0;10.0;40.0;380.0;10.0;380.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>612</x> <y>300</y> <w>42</w> <h>42</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>10.0;40.0;40.0;40.0;40.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>444</x> <y>870</y> <w>114</w> <h>66</h> </coordinates> <panel_attributes><<enumeration>> TypeChoice -- SimpleType : SimpleType Struct : StructType Array : ArrayType Enum : EnumType </panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>372</x> <y>876</y> <w>84</w> <h>48</h> </coordinates> <panel_attributes>lt=<<- m1= 1 fontsize=12</panel_attributes> <additional_attributes>120.0;10.0;80.0;10.0;80.0;60.0;10.0;60.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>252</y> <w>102</w> <h>84</h> </coordinates> <panel_attributes>lt=<. fontsize=12</panel_attributes> <additional_attributes>150.0;120.0;80.0;120.0;80.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>192</x> <y>180</y> <w>294</w> <h>66</h> </coordinates> <panel_attributes>lt=<. </panel_attributes> <additional_attributes>470.0;50.0;380.0;50.0;380.0;20.0;50.0;20.0;50.0;90.0;10.0;90.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>384</x> <y>264</y> <w>48</w> <h>144</h> </coordinates> <panel_attributes>lt=<. fontsize=12</panel_attributes> <additional_attributes>10.0;220.0;60.0;220.0;60.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>624</x> <y>972</y> <w>114</w> <h>30</h> </coordinates> <panel_attributes>EnumType -- *- enumValue : EnumValue* fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>552</x> <y>918</y> <w>84</w> <h>78</h> </coordinates> <panel_attributes>lt=<<. m1=0..1 fontsize=12</panel_attributes> <additional_attributes>120.0;100.0;40.0;100.0;40.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>774</x> <y>984</y> <w>126</w> <h>66</h> </coordinates> <panel_attributes>EnumValue -- *@ name : Name* *@ value : value* /@ type : BasicType = integer/ /@ semanticURI : uri/ /- Doc : Doc/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>732</x> <y>984</y> <w>54</w> <h>24</h> </coordinates> <panel_attributes>lt=<<. m1=1..n fontsize=12</panel_attributes> <additional_attributes>70.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>894</x> <y>990</y> <w>66</w> <h>48</h> </coordinates> <panel_attributes>lt=<<- m1=0..1 fontsize=12</panel_attributes> <additional_attributes>70.0;10.0;70.0;60.0;10.0;60.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>300</x> <y>594</y> <w>132</w> <h>48</h> </coordinates> <panel_attributes>Extend -- *@domain : Name* *@entity : Name* /- ExtendChoice/ fg=blue </panel_attributes> <additional_attributes/> </element> <element> <id>UMLClass</id> <coordinates> <x>672</x> <y>594</y> <w>144</w> <h>42</h> </coordinates> <panel_attributes>Exclude -- *@name : Name* /@type : ExtendType = datapoint/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>618</x> <y>594</y> <w>66</w> <h>42</h> </coordinates> <panel_attributes>lt=<. m1= 1..n fontsize=12 </panel_attributes> <additional_attributes>90.0;10.0;30.0;10.0;30.0;50.0;10.0;50.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>264</x> <y>594</y> <w>48</w> <h>24</h> </coordinates> <panel_attributes>lt=<. m1=0..1 fontsize=12</panel_attributes> <additional_attributes>60.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>882</x> <y>594</y> <w>132</w> <h>96</h> </coordinates> <panel_attributes><<enumeration>> ExtendType -- action datapoint event moduleclass property device subdevice </panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>810</x> <y>594</y> <w>84</w> <h>42</h> </coordinates> <panel_attributes>lt=<<- m1=0..1 fontsize=12</panel_attributes> <additional_attributes>120.0;10.0;40.0;10.0;40.0;50.0;10.0;50.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>672</x> <y>642</y> <w>144</w> <h>42</h> </coordinates> <panel_attributes>Include -- *@name : Name* /@type : ExtendType = datapoint/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>618</x> <y>630</y> <w>66</w> <h>36</h> </coordinates> <panel_attributes>lt=<. m1= 1..n fontsize=12 </panel_attributes> <additional_attributes>90.0;30.0;30.0;30.0;30.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>810</x> <y>594</y> <w>84</w> <h>90</h> </coordinates> <panel_attributes>lt=- fontsize=12</panel_attributes> <additional_attributes>120.0;10.0;40.0;10.0;40.0;130.0;10.0;130.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>492</x> <y>594</y> <w>132</w> <h>48</h> </coordinates> <panel_attributes><<enumeration>> ExtendChoice -- Excludes : Exclude Includes : Include </panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>426</x> <y>600</y> <w>78</w> <h>42</h> </coordinates> <panel_attributes>lt=<<- m1=0..1 fontsize=12 </panel_attributes> <additional_attributes>110.0;10.0;40.0;10.0;40.0;50.0;10.0;50.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>258</x> <y>204</y> <w>132</w> <h>96</h> </coordinates> <panel_attributes>ProductClass -- *@ id : Name* /@ semanticURI : uri/ /- Doc : Doc/ /* Properties : Property/ /* ModuleClasses : ModuleClass/ /* SubDevices : SubDevice/ /- DeviceClass : Extend/ /- Extend : Extend/ fg=blue</panel_attributes> <additional_attributes/> </element> <element> <id>Relation</id> <coordinates> <x>192</x> <y>288</y> <w>78</w> <h>42</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>110.0;40.0;60.0;40.0;60.0;10.0;10.0;10.0</additional_attributes> </element> <element> <id>Relation</id> <coordinates> <x>192</x> <y>204</y> <w>78</w> <h>78</h> </coordinates> <panel_attributes>lt=<. m1=0..n fontsize=12</panel_attributes> <additional_attributes>110.0;10.0;60.0;10.0;60.0;110.0;10.0;110.0</additional_attributes> </element> <element> <id>UMLClass</id> <coordinates> <x>264</x> <y>528</y> <w>750</w> <h>24</h> </coordinates> <panel_attributes>halign=center SDT 4.0 - Extend fontsize=24 bg=gray lw=0.1</panel_attributes> <additional_attributes/> </element> </diagram>