標準属性および管理値割当てを削除して、実行中のデータ・ドメインのレコードを更新できます。
どちらの要素でも、標準属性割当てと管理値割当てを削除できます。標準属性または管理値は、データ・ドメインから削除されないことに注意してください(指定したレコードからのみ削除されます)。
同じupdateRecords操作で両方の要素を使用できます。この場合、wildcardDeleteAssignmentsリクエストは、deleteAssignmentsリクエストの前に処理されます。
どちらの要素も大文字と小文字が区別されます(標準属性および管理値の名前と、その割当て値を含む)。
割当ての削除と、削除対象の割当てを変更する操作を同じリクエストに含めることはできません。
updateRecordsサブ操作のdeleteAssignments要素は、個々の標準属性または管理値割当て(あるいはその両方)をデータ・ドメインのレコードから削除しますが、それ以外ではレコードに影響を与えません。同じリクエストで1つ以上の割当てを削除できます。
<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>?</ns:recordSpecifier> <ns:deleteAssignments> <ns1:attribute name="?">?</ns1:attribute> </ns:deleteAssignments> </ns:updateRecords> </ns:ingestChanges> </soapenv:Body> </soapenv:Envelope>ここで、recordSpecifier要素に追加する文字列は、レコードを識別するEQL式です。
<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>"price" > 45</ns:recordSpecifier> <ns:deleteAssignments> <ns1:attribute name="color">purple</ns1:attribute> </ns:deleteAssignments> </ns:updateRecords> </ns:ingestChanges> </soapenv:Body> </soapenv:Envelope>
この例では、purpleというcolor標準属性割当ての1つの値をprice属性の値が45よりも高いすべてのレコードを対象に削除します。
<ingest:ingestChangesResponse xmlns:ingest="http://www.endeca.com/MDEX/ingest/3/0"> <ingest:numPropertiesCreated>0</ingest:numPropertiesCreated> <ingest:numRecordsAffected>4</ingest:numRecordsAffected> <ingest:numRecordsDeleted>0</ingest:numRecordsDeleted> </ingest:ingestChangesResponse>
レスポンスのnumRecordsAffected要素は、4つのレコードが正常に変更されたことを示しています。
ingestChanges操作のupdateRecords要素のwildcardDeleteAssignments要素は、同じ標準属性または管理値からすべての割当てを一度に削除します。この操作は、割当ての削除と同様に、削除対象の割当てを変更する操作と組み合せることはできません。
<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>?</ns:recordSpecifier> <ns:wildcardDeleteAssignments> <ns1:attribute name="?"/> </ns:wildcardDeleteAssignments> </ns:updateRecords> </ns:ingestChanges> </soapenv:Body> </soapenv:Envelope>
<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>"partID" = 'P4000'</ns:recordSpecifier> <ns:wildcardDeleteAssignments> <ns1:attribute name="color"/> </ns:wildcardDeleteAssignments> </ns:updateRecords> </ns:ingestChanges> </soapenv:Body> </soapenv:Envelope>
この例では、レコードP4000がcolor標準属性の6つの割当てを保持している場合、6つの割当てすべてが削除されます。
<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>