diff --git a/SDT/schema4.0/docs/images/Domain.png b/SDT/schema4.0/docs/images/Domain.png index afcbcde446a7b70da3efa2928ac7644b3b3a3f23..b91f91268c0924e622941514c68b3bcef2a528ad 100644 Binary files a/SDT/schema4.0/docs/images/Domain.png and b/SDT/schema4.0/docs/images/Domain.png differ diff --git a/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png b/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png index 38fae6a92cde0f2c321e94963313494eb24dfd54..7309c2dfbbf0410d77759353279510caf6cd5614 100644 Binary files a/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png and b/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png differ diff --git a/SDT/schema4.0/docs/images/SDT_simplified.png b/SDT/schema4.0/docs/images/SDT_simplified.png index f3ff40db0d91f40696e54e5a7e03d980b153214e..cbea37fe4f5083ea7b7dc50b1c75bdcca010a4a7 100644 Binary files a/SDT/schema4.0/docs/images/SDT_simplified.png and b/SDT/schema4.0/docs/images/SDT_simplified.png differ diff --git a/SDT/schema4.0/docs/images/SubDevice.png b/SDT/schema4.0/docs/images/SubDevice.png index 50e497d33523029e67129c5138ef93f932d75e0e..4f01a1d618169e27956c1fd2028c55ee690b9e5d 100644 Binary files a/SDT/schema4.0/docs/images/SubDevice.png and b/SDT/schema4.0/docs/images/SubDevice.png differ diff --git a/SDT/schema4.0/etc/domain.rnc b/SDT/schema4.0/etc/domain.rnc index 0b1a4d113ffbf52a2dc817fea14bc32e69961ffc..384a5e3f93ad0b28b52af0448fbe4d6b71bc8fb3 100644 --- a/SDT/schema4.0/etc/domain.rnc +++ b/SDT/schema4.0/etc/domain.rnc @@ -17,6 +17,7 @@ Domain = element Imports { Domain+ }?, element DataTypes { DataTypeDef+ }?, ModuleClassesDef?, + SubDevicesRef?, DeviceClassesDef?, ProductClassesDef? } @@ -112,6 +113,7 @@ SubDevicesRef = attribute minOccurs { text }?, attribute maxOccurs { text }?, DocDef, + ExtendDef?, PropertiesDef?, ModuleClassesDef? }+ diff --git a/SDT/schema4.0/src/domain.rng b/SDT/schema4.0/src/domain.rng index 267bc6d6841f8e1182c04f848f29416bfe4a8438..676c591519ff7052ab6c11b06db23b0c3523a732 100644 --- a/SDT/schema4.0/src/domain.rng +++ b/SDT/schema4.0/src/domain.rng @@ -51,6 +51,9 @@ <optional> <ref name="ModuleClassesDef"/> </optional> + <optional> + <ref name="SubDevicesRef" /> + </optional> <optional> <ref name="DeviceClassesDef" /> </optional> @@ -325,6 +328,9 @@ </attribute> </optional> <ref name="DocDef"/> + <optional> + <ref name="ExtendDef" /> + </optional> <optional> <ref name="PropertiesDef"/> </optional> diff --git a/SDT/schema4.0/src/domain.xsd b/SDT/schema4.0/src/domain.xsd index ff074e985bddda70c8f84e8e3fc2acf13ba00f9e..4b2901e494c8902cee909333dc54ee1fb24c12b8 100644 --- a/SDT/schema4.0/src/domain.xsd +++ b/SDT/schema4.0/src/domain.xsd @@ -23,6 +23,7 @@ <xs:element minOccurs="0" ref="Imports"/> <xs:element minOccurs="0" ref="DataTypes"/> <xs:element minOccurs="0" ref="ModuleClasses"/> + <xs:element minOccurs="0" ref="SubDevices"/> <xs:element minOccurs="0" ref="DeviceClasses"/> <xs:element minOccurs="0" ref="ProductClasses"/> </xs:sequence> @@ -242,6 +243,7 @@ <xs:complexContent> <xs:extension base="DocDef"> <xs:sequence> + <xs:element minOccurs="0" ref="Extend"/> <xs:element minOccurs="0" ref="Properties"/> <xs:element minOccurs="0" ref="ModuleClasses"/> </xs:sequence> diff --git a/SDT/schema4.0/test/subdevices-test.xml b/SDT/schema4.0/test/subdevices-test.xml new file mode 100644 index 0000000000000000000000000000000000000000..1cf88dcae083a1108b56dadd67138f796384dce1 --- /dev/null +++ b/SDT/schema4.0/test/subdevices-test.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<!-- Test the data types references --> + +<Domain id="subdevices-test" xmlns="http://www.onem2m.org/xml/sdt/4.0" xmlns:xi="http://www.w3.org/2001/XInclude"> + <SubDevices> + <SubDevice id="aSubDevice"> + <ModuleClasses> + <ModuleClass name="aModuleClass"> + <Data> + <DataPoint name="aDataPoint"> + <DataType> + <SimpleType type="boolean" /> + </DataType> + </DataPoint> + </Data> + </ModuleClass> + </ModuleClasses> + </SubDevice> + </SubDevices> + + <DeviceClasses> + <DeviceClass id="aDeviceClass"> + <SubDevices> + <SubDevice id="subDevice"> + <Extend domain="subdevices-test" entity="aSubDevice" /> + </SubDevice> + </SubDevices> + </DeviceClass> + </DeviceClasses> +</Domain> \ No newline at end of file