【问题标题】:Query regarding update of eventNotificationCriteria of <subscription> resource<subscription>资源的eventNotificationCriteria更新查询
【发布时间】:2020-02-07 09:37:57
【问题描述】:

如果在 资源上有更新请求以修改 eventNotificationCriteria 属性(enc),那么eventNotificationCriteria属性的现有条件全部被替换还是只是请求中存在的条件被修改?

例如

  1. 资源是使用 enc 属性创建的,如下所示:

    "enc": {
        "crb": "20191130T142810",
        "cra": "20191129T140000",
        "net": [
            1,
            2,
            3,
            4,
            5
        ]
    }
    
  2. 更新enc属性:

    "enc": {
        "ms": "20191129T140000",
        "us": "20191130T142810",
        "net": [
            1,
            2,
            3,
            4,
            5
        ]
    }
    

资源中 enc 更新的可能响应

回应 1:

"enc": {
    "crb": "20191130T142810",
    "cra": "20191129T140000",
    "ms": "20191129T140000",
    "us": "20191130T142810"
    "net": [
        1,
        2,
        3,
        4,
        5
    ]
}

回应 2:

"enc": {
    "ms": "20191129T140000",
    "us": "20191130T142810",
    "net": [
        1,
        2,
        3,
        4,
        5
    ]
}

哪个是正确的,RESPONSE 1 还是 RESPONSE 2?

【问题讨论】:

    标签: onem2m


    【解决方案1】:

    TL;DR
    将下面提到的规范应用于您的示例,Response 2 将是正确的。 资源的 eventNotificationCriteria 属性的更新将用更新后的值替换现有值。

    TS;WM
    有时,要确定更新期间会发生什么并不容易。如果没有另外说明,TS-0001 - 功能架构,第 8.1.2 节:请求 中规定的一般程序适用:

    更新 (U):现有的 To 可寻址资源的内容被替换为 Content 参数中的新内容。如果 Content 参数中的某些属性在目标资源中不存在,则使用分配的值创建此类属性。如果 Content 参数中的某些属性设置为 NULL,则这些属性将从寻址资源中删除。

    对于操作相关的参数:

    更新(U):内容是现有资源中要替换的内容。对于要在资源中更新的属性,Content 包含此类属性的名称及其新值。对于要在资源中创建的属性,内容包括此类属性的名称及其关联值。对于要在资源中删除的属性,Content 包含此类属性的名称,其值设置为 NULL。

    但是,您还应该查看TS-0004 - 服务层核心协议。例如,在 7.4.8.2 部分: CRUD 操作的资源特定和非常详细的过程,您将找到 资源上的 CRUD 操作的细节。

    更新

    我认为有必要进一步讨论以强调 #1 不正确的原因是因为 enc 是一个复杂的属性。由于所有这些值都是单个属性的一部分,因此上述规则适用。如果使用简单属性执行类似的更新操作,则属性的“合并”是正确的,类似于响应 #1。

    【讨论】:

      猜你喜欢
      • 2015-03-16
      • 2021-12-27
      • 1970-01-01
      • 2020-03-31
      • 1970-01-01
      • 1970-01-01
      • 2019-04-17
      • 2022-08-13
      • 2020-01-17
      相关资源
      最近更新 更多