10 UMLClass 270 70 150 130 ModuleDef -- *@ name : text* /- extends: Extends/ /- Doc : Doc/ /- Actions : Actions/ /- Data : Data/ /- Events : Events/ UMLClass 520 160 140 100 Action -- *@ name : text* /@ type : DataType/ /- Doc : Doc/ /- Arg : Arg/ fg=blue Relation 410 70 130 70 lt=<- m1=0,1 110.0;10.0;40.0;10.0;40.0;50.0;10.0;50.0 UMLClass 740 230 160 80 Arg -- *@ name ; text* *@ type : DataType* /- Doc : Doc/ Relation 650 230 110 40 lt=<- m1=0..* 90.0;10.0;10.0;10.0 UMLClass 0 200 200 100 Domain -- *@ id : ID* /- imports/ /- Modules : ModuleClass/ /- RootDevices : RootDevice/ fg=blue Relation 190 250 100 50 lt=<- m1=0..* 80.0;20.0;10.0;20.0 UMLClass 270 570 190 100 Device -- *@ id : Name* /- Doc : Doc/ /- Modules : Module/ /- DeviceInfo : DeviceInfo/ fg=blue Relation 180 270 50 250 lt=<- m1=0..* 10.0;230.0;10.0;180.0;30.0;180.0;30.0;10.0;20.0;10.0 UMLClass 530 580 180 130 DeviceInfo -- *- name : text* *- vendor : text* /- serialNumber : text/ /- vendorURL : URL/ /- firmwareVersion : text/ /- Doc : Doc/ fg=blue Relation 450 580 100 90 lt=<- m1= 0,1 80.0;10.0;40.0;10.0;40.0;70.0;10.0;70.0 UMLClass 740 0 160 210 <<Enumeration>> DataType -- boolean byte integer float string enum date time datetime blob UMLClass 790 620 110 50 Doc -- - ... UMLClass 520 60 130 80 <<Attributes>> Extends -- @domain : IDRF @class : text Relation 410 140 130 60 lt=<- m1=0..* 110.0;30.0;80.0;30.0;80.0;10.0;10.0;10.0 Relation 650 10 110 220 lt=<- m1=0,1 90.0;10.0;40.0;10.0;40.0;200.0;10.0;200.0 Relation 720 610 90 50 lt=<.. m1=0..* 70.0;20.0;10.0;20.0 Relation 890 80 50 220 lt=<- m1= 1 10.0;10.0;30.0;10.0;30.0;200.0;10.0;200.0 UMLClass 520 310 170 50 Data -- /- dataPoint : DataPoint/ fg=blue Relation 410 160 130 190 lt=<- m1=0..* 110.0;160.0;50.0;160.0;50.0;10.0;10.0;10.0 Relation 680 320 80 50 lt=<- m1=0..* 60.0;20.0;10.0;20.0 UMLClass 740 330 160 130 DataPoint -- *@ name : text* /@ type : DataType/ /@ writable : boolean/ /@ readable : boolean/ /@ eventable : boolean/ /- Doc : Doc/ UMLClass 530 490 160 80 Event -- *@ name : text* /- data : Data/ - Doc : Doc fg=blue Relation 410 170 140 360 lt=<- m1=0..* 120.0;330.0;30.0;330.0;30.0;10.0;10.0;10.0 UMLClass 270 520 120 30 Module fg=blue UMLClass 270 260 120 30 ModuleClass fg=blue Relation 320 190 100 90 lt=<<<. <<extends>> 10.0;10.0;10.0;70.0 Relation 380 520 110 130 lt=<- m1=0..* 10.0;10.0;90.0;10.0;90.0;110.0;80.0;110.0 Relation 320 280 100 260 lt=<<<. <<extends>> 10.0;10.0;10.0;240.0 Relation 590 350 130 210 lt=<- m1=0..* 10.0;10.0;10.0;120.0;110.0;120.0;110.0;190.0;100.0;190.0 Relation 890 10 70 390 lt=<- m1=1 10.0;10.0;50.0;10.0;50.0;370.0;10.0;370.0 UMLClass 10 500 190 110 RootDevice -- *@ id : Name* /- Doc : Doc/ /- Modules : Module/ /- Devices : Device/ /- DeviceInfo : DeviceInfo/ fg=blue Relation 190 560 100 50 lt=<- m1=0..* 80.0;20.0;10.0;20.0 UMLNote 0 0 200 130 bg=#FAF8C8 fontsize=10 @elementAttribute *@mandatoryElementAttribute* - element - element : Subclass /- optionalElement/ "Contains" Relation Subclassing Relation 100 60 100 40 lt=<- fontsize=10 m1=0..* 80.0;20.0;10.0;20.0 Relation 100 90 110 40 lt=<<<. <<extends>> fontsize=10 90.0;20.0;10.0;20.0 Relation 190 520 100 60 lt=<- m1=0..* 80.0;10.0;30.0;10.0;30.0;40.0;10.0;40.0 Relation 190 580 360 130 lt=<- 340.0;10.0;300.0;10.0;300.0;110.0;30.0;110.0;30.0;20.0;10.0;20.0