Transaction 请求 |
Transaction 操作通过 POST 请求实现插入元数据、更新元数据、删除元数据三个功能,请求体采用 XML 格式,主要节点要素介绍如下:
表1 Transaction 操作请求体节点元素
请求参数 | 是否必需 | 描述 |
<Transaction> | 是 |
一个 Transaction 要素包括0个或多个用于插入、更新、删除元数据的<Insert>、<Update> 或 <Delete> 元素。 允许<Transaction>元素为空,即不包含其他元素,这时 Transaction 操作没有意义。 |
<Insert> | 否 | 进行插入元数据操作时必选。 待插入的目录元数据需要符合 ISO19139标准或国家测绘元数据标准(SMMD2007)定义的编码规则进行描述。 一个<Insert>元素中只能插入一个元数据。 |
<Update> | 否 | 进行更新元数据操作时必选。其中,typeName 参数来指定需要更新的信息模型对象类型。 一个<Update>元素中可包含一个或多个<RecordProperty>元素,用于指定需要更新的元数据的属性(<Name>元素)和属性值(<Value>元素),没有<Value>元素时该属性将被赋予空值。 <Update>元素中还包含<Constraint>元素,用于限定待更新元数据的范围,可以是一个或多个,详见请求示例。 |
<Delete> | 否 | 进行删除元数据操作时必选。其中,typeName 参数来指定需要删除的信息模型对象类型,例如 csw ogc 的 Record 模型。 通过<Constraint>元素指定待删除的元数据,可以是一个或多个。 |
本示例中对 CSW 服务进行了3次 Transaction 操作,先插入一条新的元数据,然后对此元数据进行更新,最后把这条元数据删除。即对 http://localhost:8090/iserver/services.csw?SERVICE=CSW&request=Transaction&version=2.0.2,执行 POST 请求,分别传输以下请求体:
执行 POST 请求,请求体为:
执行 POST 请求,请求体为:
执行 POST 请求,请求体为: