Hidden Content Types and Hidden Site Columns
From previous “how-to” articles, you may know that several out-of-the-box Content Types belong to the group _Hidden.

This means that when you first start using the site, you can not create child Content Types based on these types. Also, if you want to aggregate Blog Posts with a Content Query Web Part, for instance, you will need to expose the content type to the web part’s drop down configuration menus.
This table lists the OOB Content Types that belong to the _Hidden group.
Name | Ctype |
Administrative Task | 0×010802 |
Comment | 0×0111 |
DomainGroup | 0×010C |
Event | 0×0102 |
Office Data Connection File | 0×010100629D00608F814dd6AC8A86903AEE72AA |
Person | 0×010A |
Post | 0×0110 |
RootOfList | 0×012001 |
SharePointGroup | 0×010B |
Universal Data Connection File | 0×010100B4CBD48E029A4ad8B62CB0E41868F2B0 |
User Workflow Document | 0×010107 |
Wiki Page | 0×010108 |
Workflow History | 0×0109 |
Workflow Task | 0×010801 |
I listed the ctype because you can get to the settings quickly by using this path: http://<server_name>/_layouts/ManageContentType.aspx?ctype=<ctype>

Then click “Name, description, and group” to change the group. Since _Hidden does not appear in the dropdown, this is a one-way change without some sort of hack. I suggest moving these to a new group that you can monitor–you really don’t want someone to change the base Content Types, just creating their own child types.
The same thing can happen to Site Columns. Next time you need an OOB Site Column for another Content Type or a Calculated Column and can’t find it, check to see if it’s actually in a _Hidden group.
For example, if you create a child of Event, the field labeled Start Time is actually “StartDate” which you can use in a formula but End Time (internal name “EndDate”) is hidden.

After changing this group to a visible one, you can use End Time in calculations like =[End Time]-[Start Date].
Paul,
Re: “one-way hack” Uh-oh: Based on a previous post, last week or so I unhid Event and then (thought I) rehid it into _Hidden by simply typing in _Hidden into the “New Group” box. Event disappeared again and I assumed it went “back” into the _Hidden list. At least, I did not get an error and was able to create an event in the default calendar without an issue. Did I create a new (different) _Hidden than the OOB _Hidden, by doing what I did?
Actually, based on my experiments it looks like if you type _Hidden into the custom group field, it places the ct back into _Hidden (the real one).
I can’t verify this 100% because there is no web service or owssvr way to get a list of all content types (that I’ve found yet).
If I were you, I’d copy down that content type’s ctype number for future configuration so you don’t have to track it down.
Ok, will do, thanks!
I have to say thank you yet again Paul. Your posts seem to help me solve issues time and time again.
For the Event content type, I am seeing an End Time column (Field ID=End Date) in the _Hidden group. But in the Site columns, Base group, I also have an End Date column. I am wondering if this is odd and might have something to do with the problem I am having at the List content type level? My list has a child Event content type; I have been able to customize the Start column name but get a system error when I try to customize the End Time column name.
@Catherine
If it has the same internal name (FieldID) then it’s the same field. If you change that in one place (really not recommended for OOB fields) it will change EVERYWHERE if changed at the Site Column level. You should be able to change names or hidden/required at the List level.
I am able to delete the End Date column that appears in the Base Columns group; maybe that would solve the system error? Would deleting it be safe/OK since EndDate also appears in the _Hidden group? If not, is there a different solution?
@Catherine
Again, I advise against customizing the OOB fields. End Date (internal name _EndDate) and End Time (internal name EndDate) are both valid and come OOB. EndDate is used on Event, I’m not sure about the other one.
I’ve successfully “unhidden” several site columns EXCEP for the EnDate column. ShrePoint (2007) returns “unknown error” when I try to take the EndDate out of the _Hidden group. Thoughts?
By the way, any way to get at the Recurrence column, or any of the other ones that don’t have built in links available to them?
I have a strange problem. In a new list content type I hade a “hidden base column” “title”, Before I knew what I was doing I tried to rename it. I got an error message but it still changed. Now when I try to change it back to “Title” It just tells me no it is a reserverd column. But I since It was renamed I no longer have a “Title” column and I can’t figure out how to get it back.
Any suggestions?
@Brad:
I made the mistake of renaming a couple of OOB/_Hidden site columns too (Title, Comment). A little hunting provides some relief/fixes:
– http://support.microsoft.com/kb/923589
– http://social.msdn.microsoft.com/Forums/en/sharepointecm/thread/3da87a70-04e5-4cca-9f03-304c13425a63
– http://www.sharepointforum.com/en-US/Bugday/archive/2007/11/05/content-types-rename-title-column-issue.aspx
Not sure if renaming to the correct/original name and selecting custom group “_Hidden” works for site columns (or content types). Need to test/verify that and the above “solutions” in non-production (when I can get access).
Not being a (decent) coder I would imagine the info on msdn (”http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spfield.group.aspx”) could be used to enumerate what’s in the _Hidden group.
BTW, everywhere I’ve looked emphatically recommends: leave OOB/_Hidden objects alone. Use them as they are or as Paul has done, create your own if the need is there.
AntGut
Hello,
I’m using the Employee Activities Application template (http://www.microsoft.com/downloads/en/details.aspx?FamilyId=1029807F-FD44-4704-936F-BD19A6455351&displaylang=en) and am trying to customize the Activities list to reflect two different content types. There are fields already in the Activities list I would like to include in both my other two content types. These Actitivies fields must be hidden, since I cannot find them in the site column list or select to add them to my two content types. The Activities list is based on what appears to be a hidden content type also named “Event,” with the normal Event site content type as it’s parent. I have already unhidden the parent Event type. When I go to edit the (sub) Event content type, only Name and Description appears in the options to edit under Settings, there is no link for group. I can see the ctype number in the url but when I try to remove the list number from the url to reflect your example above I just get a page that says “Error.” Any assistance or suggestions would be appreciated, thank you!