diff --git a/TS-0023-SDT_based_Information_Model_and_Mapping_for_Vertical_Industries.md b/TS-0023-SDT_based_Information_Model_and_Mapping_for_Vertical_Industries.md index 05807774371664c2f3ea875ba89b308ea0ccd83b..1cff6a876e92017cd6ff4dd374c9e225e54c7fd5 100644 --- a/TS-0023-SDT_based_Information_Model_and_Mapping_for_Vertical_Industries.md +++ b/TS-0023-SDT_based_Information_Model_and_Mapping_for_Vertical_Industries.md @@ -4903,12 +4903,9 @@ In the case of a NoDN, it is the IPE in charge of exposing the device to oneM2M The architecture of IPE-based Device Management is presented in oneM2M TS-0001 <a href="#_ref_3">[3]</a> clause 6.2.4.1, and the details of CRUD operations on the resources defined here are defined in oneM2M TS-0033 <a href="#_ref_21">[21]</a> clause 8. A developer's guide on Device Management can be found in oneM2M TR-0035 <a href="#_ref_i.13">[i.13]</a>. -<mark>Editor note: Some attributes are missing from the short name tables in 6.3</mark> - - - ### 5.8.1 flexNode + This flexContainer specialization is the root for SDT-based Device Management modules. The containerDefinition attribute of this specialization shall be "org.onem2m.management.device.flexNode". @@ -4921,14 +4918,14 @@ This resource is a <flexContainer> child of the <node> resource targeted b |-|-|-|-| |dmAreaNwkInfo_<i> |[[dmAreaNwkInfo]](#589-dmareanwkinfo)] |0..n |See clause [5.8.9](#589-dmareanwkinfo). | |dmAgent |[[dmAgent]](#582-dmagent) |0..1 |See clause [5.8.2](#582-dmagent). | -|dmDeviceInfo |[[dmDeviceInfo]](#583-dmdeviceinfo) |1 |See clause [5.8.3](#583-dmdeviceinfo). | +|dmDeviceInfo |[[dmDeviceInfo]](#583-dmdeviceinfo) |1 |See clause [5.8.3](#583-dmdeviceinfo). | |dmDataModelIO_<i> |[[dmDataModelIO]](#584-dmdatamodelio) |0..N |See clause [5.8.4](#584-dmdatamodelio). | |dmFirmware_<i> |[[dmFirmware]](#585-dmfirmware) |1..N |See clause [5.8.5](#585-dmfirmware). | |dmSoftware_<i> |[[dmSoftware]](#586-dmsoftware) |0..N |See clause [5.8.6](#586-dmsoftware). | |dmEventLog_<i> |[[dmEventLog]](#587-dmeventlog) |0..N |See clause [5.8.7](#587-dmeventlog). | |dmPackage_<i> |[[dmPackage]](#588-dmpackage)] |0..N |See clause [5.8.8](#588-dmpackage), | |battery_<i> |[[battery]](#5310-battery) |0..N |See clause [5.3.1.10](#53110-battery). | -|dmCapability_<i> |[[dmCapability]](#5811-dmcapability)] |0..N |See clause [5.8.11](#5811-dmcapability). | +|dmCapability_<i> |[[dmCapability]](#5811-dmcapability)] |0..N |See clause [5.8.11](#5811-dmcapability). | |dmStorage_<i> |[[dmStorage]](#5812-dmstorage)] |0..N |See clause [5.8.12](#5812-dmstorage). | NOTE 1: The notation '<i>' for child resources indicates that the resource name is the name of the child ModuleClass or SubDevice flexContainer, appended with an underscore '_' and an incrementing index so that it is unique in the [flexNode] children (e.g. "dmFirmware_0", "dmFirmware_1", etc.). The index shall not have leading 0's. @@ -4936,8 +4933,6 @@ NOTE 1: The notation '<i>' for child resources indicates that the resource na NOTE 2: The current list of modules for Device Management is not fixed and can evolve with new optional features. - - ### 5.8.2 dmAgent This ModuleClass is the entry point module of *[flexNode]*; it provides capabilities to control and monitor the Device Management of the device. @@ -4969,7 +4964,6 @@ The DataPoints of dmAgent Module Class are as follows: |systemTime |m2m:timestamp |RW |true | |Reference time for the device. | - ### 5.8.3 dmDeviceInfo This ModuleClass is used to share static information regarding the device. @@ -4984,7 +4978,7 @@ This ModuleClass is used to share static information regarding the device. |model |xs:string |R |true | |The name/identifier of the device model assigned by the manufacturer. | |subModel |xs:string |R |true | |Device sub-model name. | |hwVersion |xs:string |R |true | |The hardware version / revision of the device. | -|osVersion |xs:string |R |true | |Version of the operating system (defined by manufacturer). | +|osVersion |xs:string |R |true | |Version of the operating system (defined by manufacturer). | |country |m2m:countryCode |R |true | |Country code of the device. It could be manufacturing country, deployment country or procurement country. | |supportURL |xs:anyURI |RW |true | |URL that points to product support information of the device. | |presentationURL |xs:anyURI |RW |true | |To quote UpnP: "the control point can retrieve a page from this URL, load the page into a web browser, and depending on the capabilities of the page, allow a user to control the device and/or view device status. The degree to which each of these can be accomplished depends on the specific capabilities of the presentation page and device". | @@ -4994,7 +4988,6 @@ This ModuleClass is used to share static information regarding the device. NOTE: Although all data points are optional, depending on the underlying DM technology, some data points should be filled, for instance *serialNumber*, *manufacturer* and *model* when this information is available. - ### 5.8.4 dmDataModelIO This ModuleClass provides capabilities to handle the device's Data Model for cases where the underlying Device Management technology supports APIs that are not directly reflected in the *flexNode* modules. @@ -5007,16 +5000,13 @@ This ModuleClass provides capabilities to handle the device's Data Model for cas |xs:string |writeIO |address: xs:string<br />payload: xs:string |true |Update the current values of parameters. Arguments: <br />'address': the list of the parameter names, <br />'payload': the list of the parameter values. <br />Returns the list of the modified parameter names. | - **Table 5.8.4-2 DataPoints of dmDataModelIO ModuleClass** |Name |Type |R/W |Optional |Unit |Description | |-|-|-|-|-|-| |dataModelType |[hd:enumDataModelType](#5642-hdenumdatamodeltype) |R |false | |The type of the data model (OMA DM, OMA LwM2M, BBF TR-181, etc.). | - - -The *readIO* and *writeIO* actions are defined for handling parameters of the underlying Device Management protocol using the APIs defined by those technologies. The values used in the *address* argument are dependent on the value of the *dataModelType* data point of the [dmAgent](#582-dmagent) ModuleClass. +The *readIO* and *writeIO* actions are defined for handling parameters of the underlying Device Management protocol using the APIs defined by those technologies. The values used in the *address* argument are dependent on the value of the *dataModelType* data point of the [\[dmAgent\]](#582-dmagent) ModuleClass. Example of *address* values could be ```'Device.WiFi.SSID.1' if dataModelType=6``` (BBF TR-181 USP) or ```'/9/1/1' if dataModelType=4``` (OMA LwM2M). @@ -5024,7 +5014,6 @@ These *address* and *payload* argument can contain several values separated by a EXAMPLES: - ``` readIO(address="Device.WiFi.SSID.SSID") -> {"Device.WiFi.SSID.SSID": "SSIDName"} @@ -5039,8 +5028,7 @@ writeIO(address="/3/0/15", payload="[Europe/Paris](Europe/Paris)") -> {"/3/0/15"} ``` -NOTE: Some data points of the [dmAgent](#582-dmagent) and [dmDeviceInfo](#583-dmdeviceinfo) ModuleClasses correspond to fixed parameters in OMA & BBF data models. The corresponding concepts in OMA DM / LwM2M data models (resp. BBF TR-181 <a href="#_ref_i.12">[i.12]</a>) are specified in oneM2M TS-0005 (resp. TS-0006 <a href="#_ref_i.1">[i.15]</a>). For instance the data point *memAvailable* corresponds to `'Device.DeviceInfo.MemoryStatus.Free'` in BBF TR-181 <a href="#_ref_i.12">[i.12]</a> (see oneM2M TS-0006 <a href="#_ref_i.15">[i.15]</a> clause 7.3) and to `'/3/0/10'` in LwM2M (oneM2M TS-0005 clause 6.3.4). - +NOTE: Some data points of the [\[dmAgent\]](#582-dmagent) and [\[dmDeviceInfo\]](#583-dmdeviceinfo) ModuleClasses correspond to fixed parameters in OMA & BBF data models. The corresponding concepts in OMA DM / LwM2M data models (resp. BBF TR-181 <a href="#_ref_i.12">[i.12]</a>) are specified in oneM2M TS-0005 (resp. TS-0006 <a href="#_ref_i.1">[i.15]</a>). For instance the data point *memAvailable* corresponds to `'Device.DeviceInfo.MemoryStatus.Free'` in BBF TR-181 <a href="#_ref_i.12">[i.12]</a> (see oneM2M TS-0006 <a href="#_ref_i.15">[i.15]</a> clause 7.3) and to `'/3/0/10'` in LwM2M (oneM2M TS-0005 clause 6.3.4). ### 5.8.5 dmFirmware @@ -5059,54 +5047,43 @@ Individual firmwares are managed using the [dmFirmware] actions presented in Tab |xs:string |toggle |none |true |Toggles between the firmware versions installed on a device/sub-component. In case of devices that do not support such toggling, it triggers the firmware flashing/installation process.<br />The toggle action as it results returns an AE/IPE message indicating if the action was successful or not. | - The abstraction model used for [dmFirmware] manages the firmware through two images: a *primary* firmware image and a *secondary* one. Despite the naming both images are equivalent and a secondary image can be actively used by a device just like the primary one. Using an abstraction model based on two firmware images it is possible to effectively manage firmware on devices with different firmware capabilities. The state machine for firmware management using two images is shown in Figure 5.8.5-1 for devices that do support toggling between multiple pre-installed firmware versions and in Figure 5.8.5-2 for devices that can have only one firmware version installed. **Table 5.8.5-2 DataPoints of dmFirmware ModuleClass** - |Name |Type |R/W |Optional |Unit |Description | |-|-|-|-|-|-| |multiFirmware |xs:boolean |R |false | |Indicates if the device/sub-component supports toggling between multiple pre-installed firmware versions. | |primaryState |[hd:enumFirmwareState](#5644-hdenumfirmwarestate) |R |false | |The current state of the primary firmware image (active, downloading, etc.). | -|primaryName |xs:string |R |false | |The name of the primary firmware image. | -|primaryVersion |xs:string |R |false | |The version of the primary firmware image. | +|primaryName |xs:string |R |false | |The name of the primary firmware image. | +|primaryVersion |xs:string |R |false | |The version of the primary firmware image. | |primaryUrl |xs:url |R |true | |The URL from which the primary firmware image was downloaded. | |secondaryState |[hd:enumFirmwareState](#5644-hdenumfirmwarestate) |R |true | |The current state of the secondary firmware image (active, downloading, etc.). Mandatory when *updateFirmware* is available. | -|secondaryName |xs:string |R |true | |The name of the secondary firmware image. | -|secondaryVersion |xs:string |R |true | |The version of the secondary firmware image. | +|secondaryName |xs:string |R |true | |The name of the secondary firmware image. | +|secondaryVersion |xs:string |R |true | |The version of the secondary firmware image. | |secondaryUrl |xs:url |R |true | |The URL from which the secondary firmware image was downloaded. | |component |xs:string |R |true | |Allows to identify the sub-component that uses this firmware. <br />This data point is mandatory if this is a sub-component firmware. | - - NOTE 1: Both primary and secondary firmware image related dataPoints are mandatory when *updateFirmware* is available, however depending on the device capabilities one of the two state machines - the one presented in Figure 5.8.5-1 or the one shown in Figure 5.8.5-2 should be used. - - - + **Figure 5.8.5-1: Lifecycle of a dmFirmware for devices that support toggling between pre-installed firmware images** - For devices that support toggling between multiple pre-installed firmware images the following rules apply: - - There is always one firmware image that is in "Active" state. - Toggling between firmware images is only possible if one image is in "Ready" state and the other image is in "Active" state. - *updateFirmware* action is always performed on the image that is in "Ready" or "Failure" state. NOTE 2: It is the AE/IPE responsibility to provide the appropriate action result pointing if the action was triggered on the device or not (e.g. if the current firmware state did not allow it). - - - + **Figure 5.8.5-2: Lifecycle of a dmFirmware for devices that can have only one firmware version installed** - In case of a device that can have only one firmware version installed the additional firmware image is used differently. First of all it is treated as a temporary storage for the *updateFirmware* action that triggers the download process. When the download process is finished the status of the firmware image is changed to "Ready". It is important to note that in this case the installation/flashing process is started after the *toggle* action is issued, making it a "long toggle". At the very same moment the toggle is issued, the previously active firmware image is moved to "Archival" state, making it a historical record that cannot be restored. The reason why it cannot be restored is trivial - it was just overwritten by the flashing process. For devices that can have only one firmware version installed the following rules apply: @@ -5121,17 +5098,18 @@ If one image is in "Archival" state and the other is in "Failure" state the *upd NOTE 3: It is the AE/IPE responsibility to provide the appropriate action result pointing if the action was triggered on the device or not (e.g. if the current firmware state did not allow it). + ### 5.8.6 dmSoftware This ModuleClass provides DM capabilities to control and monitor software modules of the device. An instance of this ModuleClass represents a software module hosted by the device. -A [dmSoftware] module is created on a Hosting CSE by the IPE in charge of the device, either at the initialization if it represents a software module that is pre-installed on the device, or after installation of one or more [[5.8.8 dmPackage]](#588-dmpackage) modules (see clause [5.8.8](#588-dmpackage)) that have been dynamically created (for instance a software image with associated configuration files and libraries). +A [dmSoftware] module is created on a Hosting CSE by the IPE in charge of the device, either at the initialization if it represents a software module that is pre-installed on the device, or after installation of one or more [\[dmPackage\]](#588-dmpackage) modules (see clause [5.8.8](#588-dmpackage)) that have been dynamically created (for instance a software image with associated configuration files and libraries). -The association between one or more [dmPackage](#588-dmpackage) modules and a dmSoftware module are under the responsibility of the IPE: dmSoftware modules are created, deleted or updated only by the IPE (for instance updating a [dmPackage](#588-dmpackage) can trigger the modification of the version data point of an associated dmSoftware). +The association between one or more [\[dmPackage\]](#588-dmpackage) modules and a dmSoftware module are under the responsibility of the IPE: dmSoftware modules are created, deleted or updated only by the IPE (for instance updating a [\[dmPackage\]](#588-dmpackage) can trigger the modification of the version data point of an associated dmSoftware). -From external applications, [dmSoftware] modules can only be discovered from the parent [flexNode], not created, and afterwards they can only be activated / deactivated. They can be seen as 'high level' information ("there is such software that is running on the device"), whereas [dmPackage](#588-dmpackage) are 'low level' information ("there is such executable file that is deployed on the device"). +From external applications, [dmSoftware] modules can only be discovered from the parent [flexNode], not created, and afterwards they can only be activated / deactivated. They can be seen as 'high level' information ("there is such software that is running on the device"), whereas [\[dmPackage\]](#588-dmpackage) are 'low level' information ("there is such executable file that is deployed on the device"). **Table 5.8.6-1 Actions of dmSoftware ModuleClass** @@ -5144,12 +5122,11 @@ From external applications, [dmSoftware] modules can only be discovered from the |Name |Type |R/W |Optional |Unit |Description | |-|-|-|-|-|-| -|state<br /> |[hd:enumSoftwareState](#5647-hdenumsoftwarestate) |R |false | |The current state of the software module (see clause [5.6.47](#5647-hdenumsoftwarestate)). | +|state |[hd:enumSoftwareState](#5647-hdenumsoftwarestate) |R |false | |The current state of the software module (see clause [5.6.47](#5647-hdenumsoftwarestate)). | |name |xs:string |R |true | |The name of the software module. | |version |xs:string |R |true | |The version of the software module. | - ### 5.8.7 dmEventLog This ModuleClass provides DM capabilities to control and monitor event logs of the device. @@ -5160,19 +5137,17 @@ This ModuleClass provides DM capabilities to control and monitor event logs of t |-|-|-|-|-| |none |retrieveLog |start: xs:datetime<br />end: xs:datetime |true |Upload from the device the logging data between 'start' and 'end'.<br />'start' shall be a date before 'end', and is optional. The default is beginning of time.<br />'end' shall be a date after 'start' and is optional. The default is the timestamp of the last available log entry. | - This action, if provided, requests the IPE to read logging data on the device. This log is then stored in the 'data' data point. It is only valid when the 'enabled' data point is true. The *start* *and* end arguments are only indications of the time frame for the log retrieval. If a target device can deliver only partial logs for a given time frame, for example when the *start* argument is too far in the past and logs are not available for that time anymore, then the device shall deliver logs from the earliest available point in time on. **Table 5.8.7-2 DataPoints of dmEventLog ModuleClass** |Name |Type |R/W |Optional |Unit |Description | |-|-|-|-|-|-| -|type |m2m:logTypeId |R |false | |The type of the log (e.g. security log, system log, etc). | +|type |m2m:logTypeId |R |false | |The type of the log (e.g. security log, system log, etc). | |data |xs:string |R |false | |Raw data of *last* event. No format specified. | |status |m2m:logStatus |R |false | |The current status of the logging process (Started, Stopped, Error, etc.) | |enabled |xs:boolean |RW |false | |Start / stop logging. | - For devices using the dmEventLog ModuleClass, the following rules apply: - The actual logging process on the device (if any), and the retrieval of device logging data by the IPE, are out of scope of the present document. @@ -5184,41 +5159,35 @@ For devices using the dmEventLog ModuleClass, the following rules apply: When the *enabled* data point is set to *false*, the IPE shall set the *status* data point to 'Stopped' and shall not modify the *data* data point of the module, and therefore shall not create any *<flexContainerInstance>* child resource. - - ### 5.8.8 dmPackage This ModuleClass provides DM capabilities to deploy, control and monitor packages of the device. - These packages can be simple resource files such as software libraries, configuration files, etc. In this case the *softwares* data point will be empty. -- They also can correspond to software images, in which case their installation will trigger the creation by the IPE of one or more [[dmSoftware]](#586-dmsoftware) SDT modules classes that can be activated / deactivated (see clause [5.8.6](#586-dmsoftware)). In this case the *softwares* data point will contain the list of IDs of this(these) [dmSoftware](#586-dmsoftware) module(s). -- Instances of the dmPackage module class can be dynamically created by the "[deployPackage](#582-dmagent)" action of the [dmAgent](#582-dmagent) module class (see clause [5.8.2](#582-dmagent)). +- They also can correspond to software images, in which case their installation will trigger the creation by the IPE of one or more [\[dmSoftware\]](#586-dmsoftware) SDT modules classes that can be activated / deactivated (see clause [5.8.6](#586-dmsoftware)). In this case the *softwares* data point will contain the list of IDs of this(these) [\[dmSoftware\]](#586-dmsoftware) module(s). +- Instances of the dmPackage module class can be dynamically created by the "[deployPackage](#582-dmagent)" action of the [\[dmAgent\]](#582-dmagent) module class (see clause [5.8.2](#582-dmagent)). **Table 5.8.8-1 Actions of dmPackage ModuleClass** |Return Type |Name |Argument |Optional |Description | |-|-|-|-|-| -|none |install |none |false |Download if needed and install the package. | +|none |install |none |false |Download if needed and install the package. | |none |uninstall |none |false |Uninstall the package. | |none |update |version: xs:string<br />url: xs:string |false |Update the package. | -<mark>Editor's note: *update* is missing in Table 6.3.2-4</mark> - NOTE: - The package can be pre-downloaded when the [dmPackage] resource is created. - In the *update* action, the arguments version and url can be empty strings (case for instance of updating a package on a Linux-type system). - When the [dmPackage] resource is deleted, the package shall be removed from the device. - - **Table 5.8.8-2 DataPoints of dmPackage ModuleClass** |Name |Type |R/W |Optional |Unit |Description | |-|-|-|-|-|-| |type |[hd:enumPackageType](#5649-hdenumpackagetype) |R |false | |The type of the package (software, library, config file, web content, etc. See clause [5.6.49](#5649-hdenumpackagetype)) | |state |[hd:enumPackageState](#5648-hdenumpackagestate) |R |false | |The current state of the package (see clause [5.6.48](#5648-hdenumpackagestate)) | -|name |xs:string |R |true | |The name of the package. | -|version |xs:string |R |true | |The version of the package. | +|name |xs:string |R |true | |The name of the package. | +|version |xs:string |R |true | |The version of the package. | |url |xs:url |R |true | |The URL from which the package can be downloaded | |softwares |m2m:listOfM2MID |R |true | |The list of [dmSoftware](#586-dmsoftware) modules, if any, that are associated with this [dmPackage] module | @@ -5227,12 +5196,11 @@ NOTE: - The [dmPackage] *name* and *version* data points are optional because they can be deduced from the downloaded resource. The *url* data point is optional because the package can be pre-installed or downloaded from a default repository (for instance a package on a Linux-type system). - The possible dependencies between [dmPackage] modules (for instance the [dmPackage] of an executable software image depends on the deployment of other dmPackage that correspond to libraries needed by this software) is out of scope of the present document. -The control of the association between a dmPackage and an associated [dmSoftware](#586-dmsoftware) module, for instance updating a [dmPackage] when the [dmSoftware](#586-dmsoftware) is active, is out of scope of the present document. - - +The control of the association between a dmPackage and an associated [\[dmSoftware\]](#586-dmsoftware) module, for instance updating a [dmPackage] when the [\[dmSoftware\]](#586-dmsoftware) is active, is out of scope of the present document. ### 5.8.9 dmAreaNwkInfo + A dmAreaNwkInfo is a SDT SubDevice entity, mapped as a <flexContainer> resource that expresses the information about the devices in a M2M Area Network managed by the parent flexNode. **Table 5.8.9-1: Properties of dmAreaNwkInfo model** @@ -5241,8 +5209,6 @@ A dmAreaNwkInfo is a SDT SubDevice entity, mapped as a <flexContainer> resour |-|-|-|-| |propAreaNwkType |xs :string |1 |Indicates the type of M2M Area Network | - - **Table 5.8.9-2: Modules of dmAreaNwkInfo model** |Module Instance Name |Module Class Name |Multiplicity |Description | @@ -5250,7 +5216,6 @@ A dmAreaNwkInfo is a SDT SubDevice entity, mapped as a <flexContainer> resour |dmAreaNwkDeviceInfo |[dmAreaNwkDeviceInfo](#5810-dmareanwkdeviceinfo) |0..N |See clause [5.8.10](#5810-dmareanwkdeviceinfo). | - ### 5.8.10 dmAreaNwkDeviceInfo This ModuleClass is used to share information regarding the devices in the M2M Area Network. @@ -5259,14 +5224,13 @@ This ModuleClass is used to share information regarding the devices in the M2M A |Name |Type |R/W |Optional |Unit |Description | |-|-|-|-|-|-| -|devId |xs:string |R |false | |Indicates the id of the device. It could be the id of the hardware or nodeId. | +|devId |xs:string |R |false | |Indicates the id of the device. It could be the id of the hardware or nodeId. | |devType |xs:string |R |false | |Indicates the type of the device. The attribute also indicates the functions or services that are provided by the device. Examples include temperature sensor, actuator, IEEE 802.15.4 (tm) coordinator or router. | |sleepInterval |xs:integer |R |true |seconds |The interval between two sleeps. | |sleepDuration |xs:integer |R |true |seconds |The time duration of each sleep. | |status |xs:string |R |true | |The status of the device (sleeping or waked up). | - ### 5.8.11 dmCapability This ModuleClass is used to model the service capabilities of a managed device. @@ -5278,8 +5242,6 @@ This ModuleClass is used to model the service capabilities of a managed device. |m2m:status |enable |none |true |The action that allows enabling the device capability.<br />Returns the status of the action. | |m2m:status |disable |none |true |The action that allows disabling the device capability.<br />Returns the status of the action. | - - **Table 5.8.11-2 DataPoints of dmCapability ModuleClass** |Name |Type |R/W |Optional |Unit |Description | @@ -5289,7 +5251,6 @@ This ModuleClass is used to model the service capabilities of a managed device. |currentState |xs:boolean |R |false | |Indicates the current state of the capability (e.g. enabled or disabled). | - ### 5.8.12 dmStorage This ModuleClass is used to model the storage on a managed device. @@ -5301,8 +5262,6 @@ This ModuleClass is used to model the storage on a managed device. |none |format |none |true |The action that allows to format the mounted storage. | |none |unmount |none |true |The action that allows to safety eject storage device. | - - **Table 5.8.12-2 DataPoints of dmStorage ModuleClass** |Name |Type |R/W |Optional |Unit |Description | @@ -5324,8 +5283,6 @@ This ModuleClass is used to model the storage on a managed device. |writeable |xs:boolean |R |false | |Indicates whether the storage volume is mounted as read/write ("TRUE") or read-only ("FALSE"). | - - # 6 The Principle of Resource Mapping for Harmonized Information Model ## 6.1 Introduction @@ -5574,7 +5531,7 @@ In protocol bindings resource type names for module classes shall be translated |[airConOperationMode](#53157-operationmode) |aCOMe | |[airFlow](#5314-airflow) |airFw | |[airPurifierJobMode](#5315-airpurifierjobmode) |aPJMe | -| [airPurifierOperationMode](#53157-operationmode) |aPOMe | +|[airPurifierOperationMode](#53157-operationmode) |aPOMe | |[airQualitySensor](#5316-airqualitysensor) |aiQSr | |[alarmSpeaker](#5317-alarmspeaker) |alaSr | |[audioVolume](#5318-audiovolume) |audVe | @@ -5728,12 +5685,14 @@ In protocol bindings resource type names for actions shall be translated into sh |[resetGauge](#531102-raingauge)|resGe | |[resetNumberValue](#53155-numbervalue) |reNVe | |[resetTextMessage](#53189-textmessage) |reTMe | +|[retrieveLog](#587-dmeventlog)|reLog | |[start3Dprint](#5311-threedprinter) |staDt | |[stop3Dprint](#5311-threedprinter) |stoDt | |[toggle](#585-dmfirmware) |togge | |[uninstall](#588-dmpackage) |uninl | |[unmount](#5812-dmstorage) |unmot | |[upChannel](#53186-televisionchannel) |uphCl | +|[update](#588-dmpackage) |updae | |[updateFirmware](#585-dmfirmware) |updFe | |[upVolume](#5318-audiovolume) |upoVe | |[writeIO](#584-dmdatamodelio) |wriIO | @@ -5780,8 +5739,10 @@ In protocol bindings resource attributes names for data points of module classes |aroh |[waterQualityMonitor](#53198-waterqualitymonitor) |aroh | |as |[waterQualityMonitor](#53198-waterqualitymonitor) |as | |atmosphericPressure |[barometer](#531101-barometer) |atmPe | +|attached |[dmCapability](#5811-dmcapability) |attad | |automode |[airFlow](#5314-airflow) |autoe | |availableChannels |[televisionChannel](#53186-televisionchannel) |avaCs | +|availStorage |[dmStorage](#5812-dmstorage) |avaSe | |backoffTime |[periodicalReportConfig](#53163-periodicalreportconfig) |bacTe | |balance |[billDeposit](#531108-billdeposit), [billWithdrawal](#531109-billwithdrawal), [cashDispenser](#531111-cashdispenser), [coinDeposit](#531110-coindeposit), [prePaidCardReader](#531107-prepaidcardreader) |balae | |baliseSystemId |[baliseTransmissionModule](#5381-balisetransmissionmodule) |baSId | @@ -5853,13 +5814,14 @@ In protocol bindings resource attributes names for data points of module classes |currentPlayerMode |[playerControl](#53165-playercontrol) |cuPMe | |currentPlayerModeName |[playerControl](#53165-playercontrol) |cPMNe | |currentSecurityMode |[securityMode](#53176-securitymode) |cuSMe | +|currentState |[dmCapability](#5811-dmcapability) |curSe | |currentTemperature |[temperature](#53187-temperature) |curT0 | |currentTime |[clock](#53118-clock) |curTe | |currentTimeZone |[clock](#53118-clock) |cuTZe | |currentValue |[smokeSensor](#53182-smokesensor) |crv | |dailyActivityTime |[connectivity](#53125-connectivity) |daATe | |dailyNumberOfConnections |[connectivity](#53125-connectivity) |dNOCs | -|data |[dmEventLog](#587-dmeventlog) |data | +|data |[dmEventLog](#587-dmeventlog) |data | |dataModelType |[dmDataModelIO](#584-dmdatamodelio) |daMTe | |dataSourceID |[origin](#5394-origin) |daSID | |dataType |[origin](#5394-origin) |datTe | @@ -5873,6 +5835,8 @@ In protocol bindings resource attributes names for data points of module classes |detectedTime |[infraredSensor](#531103-infraredsensor), [overcurrentSensor](#53158-overcurrentsensor), [smokeSensor](#53182-smokesensor) |detTe | |detectedValue |[infraredSensor](#531103-infraredsensor) |detVe | |detectionInterval |[magneticSensorParameters](#53161-magneticsensorparameters)|detIl | +|devId|[dmAreaNwkDeviceInfo](#5810-dmareanwkdeviceinfo) | devId | +|devType|[dmAreaNwkDeviceInfo](#5810-dmareanwkdeviceinfo) | devTe | |diastolicPressure |[sphygmomanometer](#53183-sphygmomanometer) |diaPe | |discharging |[battery](#53110-battery) |discg | |dischargingCapacity |[electricVehicleConnector](#53131-electricvehicleconnector) |disCy | @@ -5900,8 +5864,10 @@ In protocol bindings resource attributes names for data points of module classes |fe |[waterQualityMonitor](#53198-waterqualitymonitor) |fe | |filterLifetime |[filterInfo](#53135-filterinfo) |filLe | |filterType |[waterFilterType](#531105-waterfiltertype) |filTe | +|fileSystem |[dmStorage](#5812-dmstorage) |filSm | |flowInterval |[waterMeterSetting](#53196-watermetersetting) |floIl | |foamingStrength |[foaming](#53136-foaming) |foaSh | +|forcedUnmounts |[dmStorage](#5812-dmstorage) |forUs | |frequency |[energyConsumption](#53132-energyconsumption) |freqy | |friendlyName |[dmDeviceInfo](#583-dmdeviceinfo), [localization](#5393-localization) |friNe | |friendlyLocation |[location](#5392-location), [localization](#5393-localization) |friLn | @@ -6025,13 +5991,16 @@ In protocol bindings resource attributes names for data points of module classes |modality |[pulsemeter](#53168-pulsemeter) |moday | |model |[dmDeviceInfo](#583-dmdeviceinfo) |model | |monitoringEnabled |[airQualitySensor](#5316-airqualitysensor) |monEd | +|mountingPoint |[dmStorage](#5812-dmstorage) |mouPt | +|mountOptions |[dmStorage](#5812-dmstorage) |mouOs | +|mounts |[dmStorage](#5812-dmstorage) |mouns | |msgType |[disseminator](#53101-disseminator), [emergencyHandler](#53102-emergencyhandler) |msgTe | |multiFirmware |[dmFirmware](#585-dmfirmware) |mulFe | |multiplyingFactors |[energyConsumption](#53132-energyconsumption), [energyGeneration](#53133-energygeneration) |mulFs | |muscle |[bioElectricalImpedanceAnalysis](#53113-bioelectricalimpedanceanalysis) |musce | |muscleMass |[bodyCompositionAnalyser](#53114-bodycompositionanalyser) |musMs | |muteEnabled |[audioVolume](#5318-audiovolume) |mutEd | -|name |[dmPackage](#588-dmpackage), [dmSoftware](#586-dmsoftware) |name | +|name |[dmCapability](#5811-dmcapability), [dmPackage](#588-dmpackage), [dmSoftware](#586-dmsoftware), [dmStorage](#5812-dmstorage) |name | |network |[threeDprinter](#5311-threedprinter) |netwk | |negativeCumulativeFlow |[waterMeterReportInfo](#53195-watermeterreportinfo) |neCFw | |nh3nh4 |[waterQualityMonitor](#53198-waterqualitymonitor) |nh3n4 | @@ -6086,6 +6055,7 @@ In protocol bindings resource attributes names for data points of module classes |powerSaveEnabled |[powerSave](#53166-powersave) |poSEd | |powerStatus |[dmAgent](#582-dmagent) |powSs | |precision |[features](#5391-features) |precn | +|presence |[dmStorage](#5812-dmstorage) |prese | |presentationURL |[dmDeviceInfo](#583-dmdeviceinfo) |prURL | |pressureSensorFault |[waterMeterAlarm](#53194-watermeteralarm)|prSFt | |previousChannel |[televisionChannel](#53186-televisionchannel) |preCl | @@ -6106,6 +6076,7 @@ In protocol bindings resource attributes names for data points of module classes |ramTotal |[dmAgent](#582-dmagent) |ramTl | |rapidCool |[refrigeration](#53171-refrigeration) |rapCl | |rapidFreeze |[refrigeration](#53171-refrigeration) |rapFe | +|readSpeed |[dmStorage](#5812-dmstorage) |reaSd | |readStatus |[prePaidCardReader](#531107-prepaidcardreader) |reaSs | |rechargeCredit |[gasChargingControl](#53138-gaschargingcontrol) |recCt | |rechargeGas |[gasChargingControl](#53138-gaschargingcontrol) |recGs | @@ -6154,9 +6125,12 @@ In protocol bindings resource attributes names for data points of module classes |singleCountAlarm |[gasMeterAlarm](#53139-gasmeteralarm) |siCAm | |sinr |[connectivity](#53125-connectivity) |sinr | |size |[binaryObject](#53111-binaryobject), [features](#5391-features) |size | +|sleepDuration |[dmAreaNwkDeviceInfo](#5810-dmareanwkdeviceinfo) | sleDn | +|sleepInterval |[dmAreaNwkDeviceInfo](#5810-dmareanwkdeviceinfo) | sleIl | |smokeThreshold |[smokeSensor](#53182-smokesensor) |smoTd | |so2 |[airQualitySensor](#5316-airqualitysensor) |so2 | |softLeanMass |[bodyCompositionAnalyser](#53114-bodycompositionanalyser) |soLMs | +|softwares | [dmPackage](#588-dmpackage) | softe | |soilLevel |[clothesWasherJobModeOption](#53122-clotheswasherjobmodeoption) |soiLl | |speed |[airFlow](#5314-airflow) |speed | |speedFactor |[playerControl](#53165-playercontrol) |speFr | @@ -6166,7 +6140,7 @@ In protocol bindings resource attributes names for data points of module classes |standardreferenceVoltage |[slcAlarm](#53179-slcalarm) |staVe | |startPause |[operationMode](#53157-operationmode) |staPe | |state |[dmAgent](#582-dmagent), [dmPackage](#588-dmpackage), [dmFirmware](#585-dmfirmware), [binarySwitch](#53112-binaryswitch) |state | -|status |[boiler](#53115-boiler), [disseminator](#53101-disseminator), [dmEventLog](#587-dmeventlog), [electricVehicleConnector](#53131-electricvehicleconnector), [emergencyHandler](#53102-emergencyhandler), [faultDetection](#53134-faultdetection), filterInf <mark>editor note: correct reference</mark>, [mediaSelect](#53153-mediaselect) |sus | +|status |[boiler](#53115-boiler), [disseminator](#53101-disseminator), [dmAreaNwkDeviceInfo](#5810-dmareanwkdeviceinfo), [dmEventLog](#587-dmeventlog), [dmStorage](#5812-dmstorage), [electricVehicleConnector](#53131-electricvehicleconnector), [emergencyHandler](#53102-emergencyhandler), [faultDetection](#53134-faultdetection), filterInf <mark>editor note: correct reference</mark>, [mediaSelect](#53153-mediaselect) |sus | |steamTreat |[clothesWasherJobModeOption](#53122-clotheswasherjobmodeoption) |steTt | |step |[numberValue](#53155-numbervalue) |step | |stepsPerPeriod |[cowActivityMonitor](#5371-cowactivitymonitor) |stPPd | @@ -6217,11 +6191,12 @@ In protocol bindings resource attributes names for data points of module classes |tn |[waterQualityMonitor](#53198-waterqualitymonitor) |tn | |token |[credentials](#53127-credentials) |tk | |tone |[alarmSpeaker](#5317-alarmspeaker) |tone | +|totalStorage |[dmStorage](#5812-dmstorage) |totSe | |totalUseValue |[gasMeterReportInfo](#53140-gasmeterreportinfo) |toUVe | |tp |[waterQualityMonitor](#53198-waterqualitymonitor) |tp | |tsp |[airQualitySensor](#5316-airqualitysensor) |tsp | |turboEnabled |[turbo](#53191-turbo) |turEd | -|type |[dmEventLog](#587-dmeventlog) |type | +|type |[dmEventLog](#587-dmeventlog), [dmPackage](#588-dmpackage), [dmStorage](#5812-dmstorage)|type | |underCurrentAlarm |[slcAlarm](#53179-slcalarm) |unCAm | |underCurrentDuration |[slcAlarm](#53179-slcalarm) |unCDn | |underCurrentThreshold |[slcAlarm](#53179-slcalarm) |unCTd | @@ -6237,6 +6212,7 @@ In protocol bindings resource attributes names for data points of module classes |url |[sessionDescription](#53177-sessiondescription), [dmPackage](#588-dmpackage), [dmSoftware](#586-dmsoftware) |url | |useBlender |[blender](#531118-blender)|useBr | |useGrinder |[grinder](#53143-grinder) |useGr | +|UUID |[dmStorage](#5812-dmstorage) |UUID | |uvStatus |[uvSensor](#53192-uvsensor) |uvtSs | |uvValue |[uvSensor](#53192-uvsensor) |uvaVe | |valveStatus |[gasMeterReportInfo](#53140-gasmeterreportinfo) |valSs | @@ -6262,6 +6238,8 @@ In protocol bindings resource attributes names for data points of module classes |windDirection |[airQualitySensor](#5316-airqualitysensor) |winDn | |windSpeed |[airQualitySensor](#5316-airqualitysensor), [anemometer](#531100-anemometer) |winSd | |withdrawalStatus |[billWithdrawal](#531109-billwithdrawal) |witSs | +|writeable |[dmStorage](#5812-dmstorage) |write | +|writeSpeed |[dmStorage](#5812-dmstorage) |wriSd | |zn |[waterQualityMonitor](#53198-waterqualitymonitor) |zn | @@ -6286,9 +6264,11 @@ In protocol bindings resource attributes names for arguments of actions shall be |Argument Name |Occurs in |Short Name | |-|-|-| |address |[readIO](#584-dmdatamodelio), [writeIO](#584-dmdatamodelio) |addrs | +|end |[dmEventLog](#587-dmeventlog) |end | |name |[deployPackage](#582-dmagent) |name | |payload |[writeIO](#584-dmdatamodelio) |payld | |rebootType |[reboot](#582-dmagent) |rebTe | +|start |[dmEventLog](#587-dmeventlog) |start | |url |[deployPackage](#582-dmagent), [updateFirmware](#585-dmfirmware), [update](#588-dmpackage) |url | |warningIdentifier | [disseminator](#53101-disseminator) |warIr | |version |[deployPackage](#582-dmagent), [updateFirmware](#585-dmfirmware), [update](#588-dmpackage) |versn |