SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

The PowerPivot team just posted a white paper on Using SharePoint List Data in PowerPivot, which is awesome. Now I can slice, dice, and analyze the contents of a document library I manage.

Except… PowerPivot doesn’t pull every column from the library. The instructions basically involve connecting to the listdata service (which works fine) for a particular list (via a URL like http://sharepoint/sites/mysite/_vti_bin/listdata.svc/IPLibrary). Looking at the raw XML that is returned, not all columns are provided by SharePoint that are really present in the list (I’ll put a snapshot of the returned XML at the end of this post). The missing columns seem to be either multivalue columns or contain managed metadata.

Is there any way to make the list data service return such columns?

Sample entry in the output XML:

<entry m:etag="W/&quot;4&quot;">
    <title type="text">Introduction to System Center Configuration Manager 2007</title>
      <name />
    <link m:etag="&quot;{5D7F8D04-7350-4FCD-9953-11432E94D28C},4&quot;" rel="edit-media" title="IPLibraryItem" href="IPLibrary(309)/$value" />
    <link rel="edit" title="IPLibraryItem" href="IPLibrary(309)" />
    <link rel="" type="application/atom+xml;type=entry" title="IPType" href="IPLibrary(309)/IPType" />
    <link rel="" type="application/atom+xml;type=entry" title="DocumentStatus" href="IPLibrary(309)/DocumentStatus" />
    <link rel="" type="application/atom+xml;type=entry" title="IPConfidentiality" href="IPLibrary(309)/IPConfidentiality" />
    <link rel="" type="application/atom+xml;type=entry" title="Language" href="IPLibrary(309)/Language" />
    <link rel="" type="application/atom+xml;type=entry" title="CreatedBy" href="IPLibrary(309)/CreatedBy" />
    <link rel="" type="application/atom+xml;type=entry" title="ModifiedBy" href="IPLibrary(309)/ModifiedBy" />
    <link rel="" type="application/atom+xml;type=entry" title="CheckedOutTo" href="IPLibrary(309)/CheckedOutTo" />
    <category term="Microsoft.SharePoint.DataService.IPLibraryItem" scheme="" />
    <content type="application/octetstream" src="http://sharepoint/sites/mysite/Library/Introduction%20to%20System%20Center%20Configuration%20Manager%202007.PPT" />
    <m:properties xmlns:m="" xmlns:d="">
      <d:Name>Introduction to System Center Configuration Manager 2007.PPT</d:Name>
      <d:Title>Introduction to System Center Configuration Manager 2007</d:Title>
      <d:DocumentID>http://sharepoint/sites/mysite/_layouts/DocIdRedir.aspx?ID=GPSDOCID-51-108, GPSDOCID-51-108</d:DocumentID>
      <d:IPDescription>This presentation discusses the new features of System Center Configurationion Manager 2007</d:IPDescription>
      <d:IPTypeValue>Community IP</d:IPTypeValue>
      <d:IPConfidentialityValue>Partner Ready</d:IPConfidentialityValue>
      <d:URL m:null="true"></d:URL>
      <d:Description m:null="true"></d:Description>
      <d:BillableHours m:type="Edm.Double" m:null="true"></d:BillableHours>
      <d:Id m:type="Edm.Int32">309</d:Id>
      <d:ContentType>GPS IP Document</d:ContentType>
      <d:Created m:type="Edm.DateTime">2010-06-21T09:53:27</d:Created>
      <d:CreatedById m:type="Edm.Int32">1068</d:CreatedById>
      <d:Modified m:type="Edm.DateTime">2011-03-14T17:34:31</d:Modified>
      <d:ModifiedById m:type="Edm.Int32">1</d:ModifiedById>
      <d:CopySource m:null="true"></d:CopySource>
      <d:CheckedOutToId m:type="Edm.Int32" m:null="true"></d:CheckedOutToId>
      <d:IsCurrentVersion m:type="Edm.Boolean">true</d:IsCurrentVersion>
      <d:Owshiddenversion m:type="Edm.Int32">4</d:Owshiddenversion>
share|improve this question
That is a cool feature. Too bad it doesn't work for those item types, but it is nice for the others, isn't it? – Tom Resing Jul 7 '11 at 16:52

Nope. Managed Metadata columns are derived from Lookup columns, but the target list is hidden. There is no configuration available to customize the behavior of the service - if it doesn't work, it doesn't work.

share|improve this answer

You can use "$expand=IPType,DocumentStatus", for example, to pull in those values, but it's not cleanly in the XML like the values stored directly in the list.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.