I found myself working with the Lists.GetListItems method fairly often. Unfortunately, I have never understood what the IncludeMandatoryColumns query option actually does. The documentation seems to imply that when set to FALSE it should only return columns specified in your viewFields parameter.


Further reading:

2 Answers 2


Regardless of this value, you will always get a couple of core fields returned with your dataset that are not in your ViewFields. IncludeMandatoryField expands it to include things like fields flagged as required, dependent fields for calculated and computed columns, and some additional metadata fields that are normally hidden from the UI.

  • Ok, so no matter what the value some "core fields" will always be returned. What determines if a field is a "core field"?
    – Kit Menke
    Commented Jun 20, 2011 at 0:53
  • It coded somewhere in the depths... you can't change it. In the past when writing some custom web services I filtered it out of the result returned to the client manually. Commented Jun 20, 2011 at 4:16
  • @KitMenke can it be defined in core content-type? I found only 2 fields in Item content-type, but when you create a new View from SP admin page, there is 15 available. Where did they get it?
    – surlac
    Commented Dec 20, 2012 at 6:51
  • Content types are templates for content and have to be associated with a list or library to use. Those extra fields such as created by and modified by are not on the content types, they system fields that are part of lists and libraries. No, you can't add those columns to the core content type. Commented Jan 18, 2013 at 3:59

I believe it's a bug. It does however bring in the fields you specify in ViewFields first. So you could potentially do a workaround that only returns the first X columns, where X is the number of ViewFields specified.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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