updateCollections操作では、コレクションの構成を更新できます。
この操作では新しいコレクションを作成できないことに注意してください(既存のコレクションのみを更新できます)。
updateCollections操作では、同じリクエストで複数のコレクションを更新できます。そのためには、<updateCollections>構造内で複数のcollectionUpdate要素を使用します。ただし、複数のコレクションを更新するupdateCollections操作はアトミックであるため、操作が成功する(つまり、すべてのコレクションが正常に更新される)か、操作全体が失敗する(つまり、少なくとも1つのコレクションの更新に失敗した結果、どのコレクションも更新されない)かのいずれかになることに注意してください。
<updateCollections>
<outerTransactionId>?</outerTransactionId>
<language>en</language>
<collectionUpdate collectionKey="?" displayName="?" uniquePropertyKey="?">
<description>?</description>
<property key="?">?</property>
</collectionUpdate>
</updateCollections>
outerTransactionId属性とlanguage属性はオプションです。
| collectionUpdateの属性 | 説明 |
|---|---|
| collectionKey | 必須です。更新するコレクションの名前。コレクション・キーの名前は変更できないことに注意してください。 |
| displayName | オプションです。この属性を使用すると、指定した値に表示名が変更されます。省略すると、最後の割当てが維持されます。 |
| uniquePropertyKey | オプションです。コレクションの一意のプロパティ・キーの名前。この属性を省略するか空白のまま残すと、最後の割当てが維持されます。一意のプロパティ・キーの名前は変更できないことに注意してください。 |
| description | オプションです。この属性を使用すると、指定した値にコレクションの説明が変更されます。省略すると、最後の割当てが維持されます。 |
| property key | オプションです。この属性は次のように使用できます。
|
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://www.endeca.com/endeca-server/sconfig/3/0">
<soapenv:Header/>
<soapenv:Body>
<ns:updateCollections>
<ns:language>en</ns:language>
<ns:collectionUpdate collectionKey="SalesRecs" displayName="Sales Order Records">
<ns:description>All sales order records for the company</ns:description>
<ns:property key="Locale">US East Coast</ns:property>
</ns:collectionUpdate>
</ns:updateCollections>
</soapenv:Body>
</soapenv:Envelope>
この例では、コレクションの表示名と説明が更新され、Localeメタデータ・プロパティが追加されます。リクエストでコレクションのuniquePropertyKeyパラメータが使用されていないことに注意してください。
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<ns2:updateCollectionsResponse xmlns:ns2="http://www.endeca.com/endeca-server/sconfig/3/0">
<ns2:numCollectionsUpdated>2</ns2:numCollectionsUpdated>
</ns2:updateCollectionsResponse>
</env:Body>
</env:Envelope>
この例では、2つのコレクションが更新されました。updateCollections操作が失敗した場合は、numCollectionsUpdated要素の値が0(ゼロ)になります。