Comments (11)

  1. timw says:

    Thanks!  I think this needs to be posted in the SDK!

  2. James says:

    Great post but one thing I don't get – how do you know the GUID of each value? I'm integrating through literal SOAP calls only.

  3. Carl says:

    We ended up building a web service using Microsoft.SharePoint.Taxonomy that the client could query.…/microsoft.sharepoint.taxonomy.aspx…/ff521581.aspx

  4. Srinu Tamada says:

    Hi Sridhar, it is a nice article.

    Asking service consumer to provide hidden field name and metadata value in "WSSID;#VAL|GUID" format, is not a good approach; I feel. Is there any alternative way to update metadata field from webservices?

    How far BCS supports to update metadata fields(Taxonomy field)??

    Please respond to me. or email me to

    Thanks in advance.

  5. Marc D Anderson says:

    I've exposed the TaxonomyClientService in my SPServices jQuery library ( which allows you to access the term store client side. It's another piece to this puzzle.


  6. Mike Williams says:

    Hi Sridhar,

    Thanks for the excellent artice.  It got me to a solution which worked in our dev environment.

    However when we went to production with a Managed Metadata service sourced from a different server we encountered a situation where some MMS fields would update.  We could not see any reason why particular fields failed.  The hidden taxonomy list (http://server/site/Lists/TaxonomyHiddenList/AllItems.aspx) was being added to for all new fields.

    We raised the issue with microsoft.

    At microsoft's recomendations we changed the code to update BOTH the fields for an MMS field as shown below :-

    batchElement.InnerXml = "<Method ID='1' Cmd='Update'>"

      + "<Field Name='ID'>3</Field>"

      + "<Field Name='Title'>Modified through lists.asmx web service 1</Field>"

      + "<Field Name='Country'>3;#Germany</Field>"

      + "<Field Name='Continent'>2</Field>"

      + "<Field Name='ContinentTaxHTField0'>0;#Northamerica|d511f3c7-377f-480f-aff6-beebecd3c675</Field>"

      + "</Method>";

    I also found that the pointer "<Field Name='Continent'>2</Field>" could be set to 0 if the term was not already in the hidden list. ie "<Field Name='Continent'>0</Field>"


  7. says:

    Hi there,

    Thanks for the post!

    But how about the taxonomy field with multi-values.

    Thanks in advance.

  8. Mark says:


    There is a 3rd party tool to do bulk metadata editing at, it also can do multiple taxonomy values for multiple items, hope that helps someone else

  9. AP says:

    Its great.. But How to update value for the type of TaxonomyFieldTypeMulti

  10. Tina says:

    Thanks a ton. After searching for 2 days finally found this and it worked. Can you tell me how can we update the item with multiple taxonomies.

  11. Alex Talarico says:

    worth noting the limit of terms per item, i believe it is right under 200.. anyone verify?