データ・インジェストWebサービスでは、実行中のデータ・ドメインのレコードについて標準属性の名前を変更できます。
属性の名前を変更するには、updateRecordsのreplaceAssignments要素を使用します。
属性の名前を変更する場合、データ・インジェストWebサービスでは、この属性のPDRのmdex-property_Keyにすでに指定されている属性名を削除し、それを新しい名前で置き換えます。この属性の割当てはすべてのレコードで保持され、Oracle Endeca ServerのDgraphプロセスは稼働し続けます。
データ・ドメインのレコードでは、すべての標準属性の名前を変更できます。管理属性の名前は変更できません(関連付けられた標準属性の名前を変更する場合を除く)。また、システム・レコード(PDR、DDRなど)の属性やグループを定義するシステム属性の名前も変更できません。
属性の名前を変更するupdateRecordsリクエストに、他の更新を含めることはできません。また、ingestChangesリクエスト全体で別のupdateRecords要素が含まれている場合、名前が変更される属性に対してそれらを実行することはできません。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.endeca.com/MDEX/ingest/3/0" xmlns:ns1="http://www.endeca.com/MDEX/XQuery/2009/09"> <soapenv:Header/><soapenv:Body> <ns:ingestChanges> <ns:updateRecords> <ns:recordSpecifier>"mdex-property_Key"='oldName'</ns:recordSpecifier> <ns:replaceAssignments> <ns1:attribute name="mdex-property_Key">newName</ns1:attribute> </ns:replaceAssignments> </ns:updateRecords> </ns:ingestChanges> </soapenv:Body> </soapenv:Envelope>変数の意味は次のとおりです。
外部トランザクションを開始するトランザクションWebサービスのリクエストの後に、ingestChangesリクエストを送信する場合、そのリクエストでは外部トランザクションIDを指定する必要があります。外部トランザクションが開始されていない場合、リクエストのID属性は省略する必要があります。
属性の名前を変更するには、次の手順を実行します。
<ingest:ingestChangesResponse xmlns:ingest="http://www.endeca.com/MDEX/ingest/3/0"> <ingest:numPropertiesCreated>0</ingest:numPropertiesCreated> <ingest:numRecordsAffected>1</ingest:numRecordsAffected> <ingest:numRecordsDeleted>0</ingest:numRecordsDeleted> </ingest:ingestChangesResponse>