<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Chris's SharePoint Reflections</title>
	<atom:link href="http://spreflections.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://spreflections.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Sun, 26 Jun 2011 21:47:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='spreflections.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Chris's SharePoint Reflections</title>
		<link>http://spreflections.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://spreflections.wordpress.com/osd.xml" title="Chris&#039;s SharePoint Reflections" />
	<atom:link rel='hub' href='http://spreflections.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Tips for SharePoint 2010 developers</title>
		<link>http://spreflections.wordpress.com/2011/06/25/tips-for-sharepoint-2010-developers/</link>
		<comments>http://spreflections.wordpress.com/2011/06/25/tips-for-sharepoint-2010-developers/#comments</comments>
		<pubDate>Sat, 25 Jun 2011 12:42:07 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[SharePoint 2010]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=142</guid>
		<description><![CDATA[Have you been developing SharePoint 2010 solutions? Here are a couple of tips I would like to share with you. 1. Integrate SPDisposal Checker into your Visual Studio development project If you have been following my previous blog on disposing SPSite and SPWeb, you should already been familiar with the SPDisposal checker tool. To increase [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=142&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Have you been developing SharePoint 2010 solutions? Here are a couple of tips I would like to share with you.</p>
<p>1. Integrate SPDisposal Checker into your Visual Studio development project</p>
<p>If you have been following my previous blog on <a href="http://spreflections.wordpress.com/2010/01/16/dispose-spwebspsite-in-mosswss/">disposing SPSite and SPWeb</a>, you should already been familiar with the <a href="http://archive.msdn.microsoft.com/SPDisposeCheck">SPDisposal checker tool</a>. To increase the development efficiency and team collaboration, I normally integrate the output into VS project so I can see the results everytime I build the assembilies. This is very useful on the team project to increase the code quality. The latest version has a Visual Stuido AddIn Option, which integrate the tool into your Visual Studio automatically and output the findings as Error/Warning. Highly recommend!</p>
<div>
<dl>
<dt><a href="http://spreflections.files.wordpress.com/2011/06/addin.png"><img title="AddIn" src="http://spreflections.files.wordpress.com/2011/06/addin.png?w=390&#038;h=290" alt="" width="390" height="290" /></a></dt>
<dd>SPDisposal Checker for Visual Studio</dd>
</dl>
</div>
<p>2. SharePoint 2010 Developer Dashbroad</p>
<p>This tool is really good with troubleshooting. It gives us metrics and allows us to trace page load activities. I usually set it ondemand using stsadm command. Of course you can use Powershell as well. I know I am a bit old fashioned. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://spreflections.files.wordpress.com/2011/06/stsadm.png"><img class="aligncenter size-full wp-image-144" title="stsadm" src="http://spreflections.files.wordpress.com/2011/06/stsadm.png?w=639&#038;h=56" alt="" width="639" height="56" /></a></p>
<p>After then you should see a nice toggle button on the top right corner of the page. If  not, make sure you have the right permission to the site.</p>
<p><a href="http://spreflections.files.wordpress.com/2011/06/toobar.png"><img class="aligncenter size-medium wp-image-145" title="Toobar" src="http://spreflections.files.wordpress.com/2011/06/toobar.png?w=300&#038;h=288" alt="" width="300" height="288" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/142/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=142&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2011/06/25/tips-for-sharepoint-2010-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2011/06/addin.png" medium="image">
			<media:title type="html">AddIn</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2011/06/stsadm.png" medium="image">
			<media:title type="html">stsadm</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2011/06/toobar.png?w=300" medium="image">
			<media:title type="html">Toobar</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint 2010 Document Management features</title>
		<link>http://spreflections.wordpress.com/2011/02/17/sharepoint-2010-document-management-features/</link>
		<comments>http://spreflections.wordpress.com/2011/02/17/sharepoint-2010-document-management-features/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 01:38:48 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Document Management]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=133</guid>
		<description><![CDATA[Today I would like to talk about a couple of lovely new features in SharePoint 2010 Document Management. Before my ranting starts, I think probably clarify some terminologies first as they can be confusing sometimes (but necessarily have to ). SharePoint Document management is a subsite Enterprise content management (ECM) workload (remember the classic six wheel?) ECM refers to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=133&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today I would like to talk about a couple of lovely new features in SharePoint 2010 Document Management. Before my ranting starts, I think probably clarify some terminologies first as they can be confusing sometimes (but necessarily have to <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ). SharePoint Document management is a subsite Enterprise content management (ECM) workload (remember the classic six wheel?) ECM refers to technologies, methods and tools used to capture, manage, store, preserve and deliver content and documents related to an organization and its processes.</p>
<p>A similar but often confused term is web content management. This technology addresses the content creation, review, approval and publishing processes of web-based content. Key features include creation and authoring of tools or integrations, input and presentation template design and a subset of ECM.</p>
<p>And what about document management?  DM helps organization better manage the creation, revision, approval and consumption of electronic documents. It provides key features such sass document profiling, checking/check out, version control, security etc.</p>
<p>DM is similar to ECM, but the same. Both of them facilitate information life cycle management, encourage collaboration and help manage information. But the key differences are: ECM can manage more than just documents. It brings a large science of record management and manage rich media and even hard copies. DM is purely the management of the documents, with or without any records management</p>
<p>This brings us another term: Record management. Record management is the practice of maintaining the records of an organization from the time they are created up to their eventual disposal. Duties may include classifying, storing, securing and destroying the records.</p>
<p>OK. Now we are all clear. In this post I will cover some DM features that I personally think is very useful. A bit of history, SharePoint 2007 was the first release where SharePoint really broke out of its collaboration role and enabled customers to apply structure and management to their document libraries. A lot of the key DM infrastructure was established in that release: Check in/Check Out, Major/Minor Versioning, Per-Item Permissions, Content Types, Workflows, and the Recycle Bin are just a few examples. In  the SharePoint 2010 version, the team keep up the good work and bring to us some freshness into this space.</p>
<ul style="text-align:left;">
<li><strong>Document ID</strong></li>
</ul>
<p><strong>﻿</strong>In a heavily used and adopted collaboration environment, one challenge people face is when content is reorganised or moved in the typical course of business. Hyperlinks emailed between team members that point to a document are no longer relevant which causes frustration and loss of efficiency. SharePoint 2010 offers a new capability to assign documents a unique identification number. This unique ID, embedded within a special URL, can then be used to retrieve the document regardless of where it is moved to within the site collection. No more broken links!</p>
<p><a href="http://spreflections.files.wordpress.com/2011/02/documentid.png"><img title="documentID" src="http://spreflections.files.wordpress.com/2011/02/documentid.png?w=761&#038;h=501" alt="" width="761" height="501" /></a></p>
<ul>
<li><a href="http://spreflections.files.wordpress.com/2011/02/documentid.png"></a><strong>Document Set     </strong></li>
</ul>
<p style="text-align:left;">People often create multiple documents that support a single project or task. SharePoint 2010 includes a feature that enables people to group all of these documents together into a single entity. All documents in a Document Set share the same metadata and the entire Document Set can be versioned as a whole and downloaded as a compressed ZIP file with all contents included. People can also initiate a workflow on the entire Document Set instead of individual workflows for each document.</p>
<p style="text-align:left;"><a href="http://spreflections.files.wordpress.com/2011/02/documentset.png"><img class="size-full wp-image-137" title="documentset" src="http://spreflections.files.wordpress.com/2011/02/documentset.png?w=389&#038;h=233" alt="" width="389" height="233" /></a></p>
<ul>
<li style="text-align:left;"><strong>SharePoint Workspace </strong></li>
</ul>
<p>Two highlights regarding SharePoint Workspace. The first one is offline capability. Whether you are travelling on an airplane or just have spotty network access, SharePoint workspace allows you to take your content offline. The other one is its rich experience. From drag-and-drop functionality to better performance, SharePoint workspace provides all the benefits to a rich client. And since it is a rich client, it also provides quick and easy navigation among list and libraries. You can simply click from one to another without waiting for webpages to load. The caveat when you are using SharePoint workspaces is you cannot download all content types with it. For example, you cannot download from a calendar, wiki and survey</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/133/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=133&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2011/02/17/sharepoint-2010-document-management-features/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2011/02/documentid.png" medium="image">
			<media:title type="html">documentID</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2011/02/documentset.png" medium="image">
			<media:title type="html">documentset</media:title>
		</media:content>
	</item>
		<item>
		<title>Leverage Search Crawl rules and Content Class property to refine SharePoint Search result</title>
		<link>http://spreflections.wordpress.com/2010/04/18/leverage-search-crawl-rules-and-content-class-property-to-refine-sharepoint-search-result/</link>
		<comments>http://spreflections.wordpress.com/2010/04/18/leverage-search-crawl-rules-and-content-class-property-to-refine-sharepoint-search-result/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 00:44:17 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[Search]]></category>
		<category><![CDATA[Crawl rules]]></category>
		<category><![CDATA[Scope]]></category>
		<category><![CDATA[SharePoint Search]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=121</guid>
		<description><![CDATA[OOTB SharePoint search is quite powerful. The search engine of MOSS 2007 has only one physical index for each SSP in the farm. This implies that the content from all the content sources defined for the SSP is crawled into the same index. This provide the user&#8217;s ability to search across all the content using [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=121&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>OOTB SharePoint search is quite powerful. The search engine of MOSS 2007 has only one physical index for each SSP in the farm. This implies that the content from all the content sources defined for the SSP is crawled into the same index. This provide the user&#8217;s ability to search across all the content using one query. But  in many search scenario, it also calls for mechanisms to automatically narrow user queries to a logical group of content within the physical index. I will introduce two methods here today to achieve that.</p>
<p><strong>Use Search Crawl rules</strong></p>
<p>Search Crawl rules are mechanism to influencing the behaviour of the crawler when it crawls specific sites. A single crawl rule is created by specifying a URL wildcard matching sites plus a set of options for setting the behaviour of the crawler for these sites</p>
<p><a href="http://spreflections.files.wordpress.com/2010/04/manage-crawl-rules1.png"><img class="alignnone size-full wp-image-124" title="Manage Crawl rules" src="http://spreflections.files.wordpress.com/2010/04/manage-crawl-rules1.png?w=598&#038;h=292" alt="" width="598" height="292" /></a><br />
 For example: if you like all the document views and properties page to be excluded, you can use achieve it by configuring the crawl rule:</p>
<p>1. Go to the crawl rules section of the search setting in the SSP</p>
<p>2. Add crawls rules to exclude the following path:</p>
<p>*://*webflder.aspx*</p>
<p>*://*allitems.aspx*</p>
<p>*://*dispform.aspx*</p>
<p>You can also test a specific URL against the crawl rules to determine whether the rules will include or exclude the URL during a crawl. This feature is not available in SharePoint Server 2003.</p>
<p>In SharePoint 2007, wildcard operator &#8220;*&#8221; is the only operator supported in crawl rules foe matching everything. Because of its  nature that matches everything, it does not have the flexibility to, for example, recognize and omit URL that contain mobile phone number.</p>
<p>SharePoint 2010 includes new capability in this area to support regular expression in the URL</p>
<p><a href="http://spreflections.files.wordpress.com/2010/04/regular-expression.png"><img class="alignnone size-full wp-image-125" title="Regular Expression" src="http://spreflections.files.wordpress.com/2010/04/regular-expression.png?w=606&#038;h=104" alt="" width="606" height="104" /></a></p>
<p><a href="http://s978.photobucket.com/albums/ae262/anasmunir80/?action=view&amp;current=RegExUI.jpg" target="_blank"></a></p>
<p>Check <a href="http://blogs.msdn.com/enterprisesearch/archive/2010/01/21/regular-expressions-support-in-crawl-rules.aspx">Microsoft Enterprise Search blog</a> for more details</p>
<p><strong>Use Content Class in scope</strong></p>
<p>Most of you already know how to use sharepoint custom scope to fine tune your search result. For those who don&#8217;t know, there are plenty materials on the internet.:) I only want to get your attention on one of the managed property, <strong>contentclass. </strong>Essentially, every piece of SharePoint content seems to be tagged with this property. And as long as you know the internal name and its corresponding mapping, you should be able to configure your sharepoint search scope quite efficiently. For example, if you want to return all the documents and pages, you can set up the scope like this:</p>
<p><a href="http://spreflections.files.wordpress.com/2010/04/scope.png"><img class="alignnone size-full wp-image-126" title="scope" src="http://spreflections.files.wordpress.com/2010/04/scope.png?w=461&#038;h=96" alt="" width="461" height="96" /></a></p>
<p>Below is a list of content class and its mappings prepared by Dan Attis in his <a href="http://www.devcow.com/blogs/jdattis/archive/2007/12/20/the-contentclass-and-isdocument-properties-along-with-the-welcome-page-caveat.aspx">blog</a>. Should give you enough information to get started.</p>
<p>        case &#8220;STS_Web&#8221;:                             // Site<br />
        case &#8220;STS_List_850&#8243;:                        // Page Library<br />
        case &#8220;STS_ListItem_850&#8243;:                    // Page<br />
        case &#8220;STS_List_DocumentLibrary&#8221;:            // Document Library<br />
        case &#8220;STS_ListItem_DocumentLibrary&#8221;:        // Document Library Items<br />
        case &#8220;STS_List&#8221;:                            // Custom List<br />
        case &#8220;STS_ListItem&#8221;:                        // Custom List Item<br />
        case &#8220;STS_List_Links&#8221;:                      // Links List<br />
        case &#8220;STS_ListItem_Links&#8221;:                  // Links List Item<br />
        case &#8220;STS_List_Tasks&#8221;:                      // Tasks List<br />
        case &#8220;STS_ListItem_Tasks&#8221;:                  // Tasks List Item<br />
        case &#8220;STS_List_Events&#8221;:                     // Events List<br />
        case &#8220;STS_ListItem_Events&#8221;:                 // Events List Item<br />
        case &#8220;STS_List_Announcements&#8221;:              // Announcements List <br />
        case &#8220;STS_List_Contacts&#8221;:                   // Contacts List<br />
        case &#8220;STS_ListItem_Contacts&#8221;:               // Contacts List Item<br />
        case &#8220;STS_List_DiscussionBoard&#8221;:            // Discussion List<br />
        case &#8220;STS_ListItem_DiscussionBoard&#8221;:        // Discussion List Item<br />
        case &#8220;STS_List_IssueTracking&#8221;:              // Issue Tracking List<br />
        case &#8220;STS_ListItem_IssueTracking&#8221;:          // Issue Tracking List Item<br />
        case &#8220;STS_List_GanttTasks&#8221;:                 // Project Tasks List<br />
        case &#8220;STS_ListItem_GanttTasks&#8221;:             // Project Tasks List Item<br />
        case &#8220;STS_List_Survey&#8221;:                     // Survey List<br />
        case &#8220;STS_ListItem_Survey&#8221;:                 // Survey List Item<br />
        case &#8220;STS_List_PictureLibrary&#8221;:             // Picture Library<br />
        case &#8220;STS_ListItem_PictureLibrary&#8221;:         // Picture Library Item<br />
        case &#8220;STS_List_WebPageLibrary&#8221;:             // Web Page Library<br />
        case &#8220;STS_ListItem_WebPageLibrary&#8221;:         // Web Page Library Item<br />
        case &#8220;STS_List_XMLForm&#8221;:                    // Form Library<br />
        case &#8220;STS_ListItem_XMLForm&#8221;:                // Form Library Item<br />
        case &#8220;urn:content-class:SPSSearchQuery&#8221;:    // Search Query<br />
        case &#8220;urn:content-class:SPSListing:News&#8221;:   // News Listing<br />
        case &#8220;urn:content-class:SPSPeople&#8221;:         // People<br />
        case &#8220;urn:content-classes:SPSCategory&#8221;:     // Category<br />
        case &#8220;urn:content-classes:SPSListing&#8221;:      // Listing<br />
        case &#8220;urn:content-classes:SPSPersonListing&#8221;:// Person Listing<br />
        case &#8220;urn:content-classes:SPSTextListing&#8221;:  // Text Listing<br />
        case &#8220;urn:content-classes:SPSSiteListing&#8221;:  // Site Listing<br />
        case &#8220;urn:content-classes:SPSSiteRegistry&#8221;: // Site Registry Listing</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/121/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=121&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2010/04/18/leverage-search-crawl-rules-and-content-class-property-to-refine-sharepoint-search-result/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2010/04/manage-crawl-rules1.png" medium="image">
			<media:title type="html">Manage Crawl rules</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2010/04/regular-expression.png" medium="image">
			<media:title type="html">Regular Expression</media:title>
		</media:content>

		<media:content url="http://spreflections.files.wordpress.com/2010/04/scope.png" medium="image">
			<media:title type="html">scope</media:title>
		</media:content>
	</item>
		<item>
		<title>Dispose SPWeb/SPSite in MOSS/WSS</title>
		<link>http://spreflections.wordpress.com/2010/01/16/dispose-spwebspsite-in-mosswss/</link>
		<comments>http://spreflections.wordpress.com/2010/01/16/dispose-spwebspsite-in-mosswss/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 05:55:20 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Performance]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=117</guid>
		<description><![CDATA[Why we need to dispose them? In SharePoint, each SPWeb and SPSite object holds a reference to an SPRequest object which holds reference to a SharePoint COM object. In order to ensure that the SPRequest object will release the COM object as well as all the memory allocated by this COM object, it is necessary [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=117&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Why we need to dispose them?</strong><br />
In SharePoint, each SPWeb and SPSite object holds a reference to an SPRequest object which holds reference to a SharePoint COM object. In order to ensure that the SPRequest object will release the COM object as well as all the memory allocated by this COM object, it is necessary to dispose the unmanaged resources in a timely fashion. Though internally, .NET framework has a finalizer to release the native memory, however, as it runs on a single thread, it generally cannot keep up with cleaning these objects if they are being leaked many times in a second.<br />
The consequence of not explicitly disposing unmanaged resources in a timely fashion can lead to not having enough memory and quickly consume memory. Furthermore, as each COM object is responsible to communicate with the backend SQL Server, in case the SPWeb object is not disposed when it is no longer used, then the connection to the SQL Server will stay open. Each connection to the database requires a TCP port for the communication. By default, only 5000-1023=3977 ports are available ( <a href="http://technet.microsoft.com/en-us/library/cc758002(WS.10).aspx">MaxUserPort Registry</a>), which means on a single machine per default you cannot have more than 3977 open connections to other applications. So, besides the fact that not disposing SPWeb and SPSite will lead to higher memory consumption which finally can lead to out of the memory exceptions, the machine might also run out of TCP ports.</p>
<p><strong>Symptoms/Issues which users can experience when the unmanaged objects are not disposed correctly</strong><br />
1. Database Connectivity<br />
When object are not disposed correctly, you can find a lot of the following database related error messages in your SharePoint WFE event log and ULS log.<br />
When all the TCP ports are in use, this will result in the following error message/event logs<br />
• Event ID 3355 errors: Cannot connect to SQL Server. XXX not found. Additional error information from SQL Server is included below. [DBNETLIB][ConnectionOpen(Connection())]SQL Server does not exist or access denied.<br />
• Event ID 27745 errors: Unable to connect to the database XXX. Check the database connection and make sure that the database server is running<br />
• The ULS log shows the same database related error as above</p>
<p>2. ULS Logs errors<br />
The ULS log will show errors when objects are not disposed correctly. The database related ULS log errors are already written down in the previous section. This section will focus on the SPDispose related error message in the ULS logs (by default located in C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\LOGS). The error message will be like this</p>
<p>1/14/2010 14:15:48.91 w3wp.exe (0x145C) 0x04AC Windows SharePoint Services General 8l1n High An SPRequest object was not disposed before the end of this thread. To avoid wasting system resources, dispose of this object or its parent (such as an SPSite or SPWeb) as soon as you are done using it. This object will now be disposed. Allocation Id: {951F9932-6C3F-4FC9-AFA8-824892FA8142} To determine where this object was allocated, create a registry key at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\HeapSettings. Then create a new DWORD named SPRequestStackTrace with the value 1 under this key</p>
<p><strong>Best Practices:</strong><br />
1. Practice the best coding practice regarding dispose the SPWeb/SPSite. Some good resources can be found on the internet.</p>
<p><a href="http://blogs.msdn.com/rogerla/archive/2008/10/04/updated-spsite-rootweb-dispose-guidance.aspx">http://blogs.msdn.com/rogerla/archive/2008/10/04/updated-spsite-rootweb-dispose-guidance.aspx</p>
<p>http://msdn.microsoft.com/en-us/library/aa973248.aspx</a></p>
<p><a href="http://solutionizing.net/2009/01/09/splist-parentweb-leaks-revisited/">http://solutionizing.net/2009/01/09/splist-parentweb-leaks-revisited/</a><br />
<a href="http://furuknap.blogspot.com/2009/07/splistrootfolder-causes-dispose-problem.html">http://furuknap.blogspot.com/2009/07/splistrootfolder-causes-dispose-problem.html</p>
<p>http://msdn.microsoft.com/en-us/library/bb687949.aspx</a></p>
<p><a href="http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx">http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx </a></p>
<p>2.<a href="http://code.msdn.microsoft.com/SPDisposeCheck"> SPDispose Checker Tool</a><br />
On MSDN a tool is available which can check your developed assemblies. This tool will check most of the common dispose issues, but will not check all issues that can occur related to disposal of SharePoint objects. So you should fix at least all issues which are found after running the SPDispose Checker and then continue applying the best coding practices</p>
<p>3. Be aware of the out-of –the-box memory hungry component<br />
Be aware of some of the OOTB components can require huge amount of memory when incorrectly configured. Navigation control is a good example. For each item in a navigation control that has to be retrieved through the sharepoint site map provider SPWeb and SPSite will have to be created. Though the control itself ensure that those objects are disposed correctly before the request ends there are often several of these objects in parallel in memory while the control is being rendered.<br />
4. Switching to 64-bit architecture<br />
In 64-bit architecture, the virtual address space is no longer limited to 2GB. This also means that memory fragmentation will not have the negative effects as in 32-bit architecture. However, even in 64-bit architecture, you still have the same limitation regarding TCP ports.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/117/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=117&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2010/01/16/dispose-spwebspsite-in-mosswss/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint DateTime Control</title>
		<link>http://spreflections.wordpress.com/2009/07/09/sharepoint-datetime-control/</link>
		<comments>http://spreflections.wordpress.com/2009/07/09/sharepoint-datetime-control/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 07:24:08 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[DateTime Control]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=113</guid>
		<description><![CDATA[SharePoint brings its own controls and DateTime control is one of them. You can definitely leverage it in your web parts and custom aspx pages. The control is located in the Microsoft.SharePoint.WebControls namespaces. How to define it? First you need to add the following directive at the top of your application page: &#60;%@ Register TagPrefix=&#8221;SharePoint&#8221; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=113&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>SharePoint brings its own controls and DateTime control is one of them. You can definitely leverage it in your web parts and custom aspx pages. The control is located in the Microsoft.SharePoint.WebControls namespaces.</p>
<p>How to define it? First you need to add the following directive at the top of your application page:</p>
<p>&lt;%@ Register TagPrefix=&#8221;SharePoint&#8221; Namespace=&#8221;Microsoft.SharePoint.WebControls&#8221; Assembly=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221; %&gt;</p>
<p>And then place the control in your page</p>
<p>&lt;SharePoint:DateTimeControl runat=&#8221;server ID=&#8221;dtcDateTime&#8221;/&gt;</p>
<p>Please notes that above is just a basic definition, for detailed properties, please check out this link:</p>
<p><a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webcontrols.datetimecontrol_members.aspx">http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webcontrols.datetimecontrol_members.aspx</a></p>
<p>How to validate it?</p>
<p>&lt;SharePoint:DateTimeControl runat=&#8221;server ID=&#8221;dtcDateTime&#8221;/&gt;</p>
<p>&lt;asp:CompareValidator ID=&#8221;valDateTime&#8221; runat=&#8221;server&#8221;</p>
<p>ForeColor=&#8221;Red&#8221;<br />
ControlToValidate=&#8221;dtcDateTime$dtcDateTimeDate&#8221;<br />
Type=&#8221;Date&#8221;<br />
Operator=&#8221;DataTypeCheck&#8221;<br />
ErrorMessage=&#8221;please enter a valid date&#8221; /&gt;</p>
<p>How to set a default value to it?<br />
dtcDateTime.SelectedDate = new DateTime();<br />
Check this link for the overloads:<br />
<a href="http://msdn.microsoft.com/en-us/library/system.datetime.datetime.aspx">http://msdn.microsoft.com/en-us/library/system.datetime.datetime.aspx</a></p>
<p><strong>Important notice:</strong></p>
<p>There is a Microsoft bug in SharePoint DateTime Control.<br />
This DateTimeControl loses state during postbacks, specifically of the hour.<br />
I struggled a bit to get this work around because it doesn’t work even if I put enableviewstate=”true” in the control.<br />
However I happened to get this work by adding this line of code in a event that caused the postback. It could be any method/Event, in my case, it is SelectedIndexChanged event:<br />
if (dtcDateTime&lt; DateTime.Today)<br />
{<br />
//Don’t do anything<br />
}<br />
Just be doing this, it maintains the value of the control during postback.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/113/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/113/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/113/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=113&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2009/07/09/sharepoint-datetime-control/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
		<item>
		<title>Customization of SharePoint list menu item – Part 1 add Custom Action Item</title>
		<link>http://spreflections.wordpress.com/2009/06/06/customization-of-sharepoint-list-menu-item-%e2%80%93-part-1-add-custom-action-item/</link>
		<comments>http://spreflections.wordpress.com/2009/06/06/customization-of-sharepoint-list-menu-item-%e2%80%93-part-1-add-custom-action-item/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 11:06:48 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[CustomAction]]></category>
		<category><![CDATA[feature]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=109</guid>
		<description><![CDATA[It has been a while since last time I blogged. And I do feel bad about being ignorant of my blog for such a long time. So this time I am gonna show some code to feed those hungry souls. Today I would like to talk about adding a list menu item through feature. This [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=109&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It has been a while since last time I blogged. And I do feel bad about being ignorant of my blog for such a long time. So this time I am gonna show some code to feed those hungry souls. Today I would like to talk about adding a list menu item through feature. This example is to add a menu item in a calendar list.</p>
<p>We all know a feature includes two files, feature.xml and elements.xml</p>
<p>In our feature.xml, nothing special, it will look like any other normal<br />
feature.xml</p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;?</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">xml</span><span style="font-size:10pt;font-family:&quot;color:blue;"> </span><span style="font-size:10pt;font-family:&quot;color:red;">version</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">1.0</span>&#8220;<span style="color:red;">encoding</span><span style="color:blue;">=</span>&#8220;<span style="color:blue;">utf-8</span>&#8220;<span style="color:blue;">?&gt;</span></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;"></span><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">Feature</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>  </span></span><span style="font-size:10pt;font-family:&quot;color:red;">Id</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">GUID&#8221;</span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">          Title</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">”<span style="color:blue;">Calender list Menu</span>&#8220;</span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">          Description</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">Creates Custom Action in Calender list item menu&#8221;</span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">          Version</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">12.0.0.0&#8243;</span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">          Hidden</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">TRUE&#8221;</span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">          Scope</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">Site</span>&#8220;<span style="color:blue;"><span>                                                                <br />
</span></span><span style="color:red;">          xmlns</span><span style="color:blue;">=</span>&#8220;<span style="color:blue;">http://schemas.microsoft.com/sharepoint/</span>&#8220;<span style="color:blue;">&gt;</span></span><span style="font-size:10pt;font-family:&quot;color:blue;"><br />
&lt;</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">ElementManifests</span><span style="font-size:10pt;font-family:&quot;color:blue;">&gt;</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">ElementManifest </span><span style="font-size:10pt;font-family:&quot;color:red;">Location</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">elements.xml</span>&#8220;<span style="color:blue;">/&gt;</span></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;"></span><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;/</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">ElementManifests</span><span style="font-size:10pt;font-family:&quot;color:blue;">&gt;</span></p>
<p class="MsoNormal"><span style="font-size:10pt;line-height:115%;font-family:&quot;color:blue;">&lt;/</span><span style="font-size:10pt;line-height:115%;font-family:&quot;color:#A31515;">Feature</span><span style="font-size:10pt;line-height:115%;font-family:&quot;color:blue;">&gt;</span></p>
<p>Then comes the elements.xml</p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;?</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">xml</span><span style="font-size:10pt;font-family:&quot;color:blue;"> </span><span style="font-size:10pt;font-family:&quot;color:red;">version</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">1.0</span>&#8220;<span style="color:red;">encoding</span><span style="color:blue;">=</span>&#8220;<span style="color:blue;">utf-8</span>&#8220;<span style="color:blue;">?&gt;</span></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;"></span><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">Elements</span><span style="font-size:10pt;font-family:&quot;color:blue;"> </span><span style="font-size:10pt;font-family:&quot;color:red;">xmlns</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;"><a href="http://schemas.microsoft.com/sharepoint/&quot;&gt;">http://schemas.microsoft.com/sharepoint/</a></span>&#8220;<span style="color:blue;">&gt;</span></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:&quot;color:blue;">&lt;</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">CustomAction</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>   </span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">    Id</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">F699684E-3127-428e-BF2B-EA71CA6E36C8</span>&#8220;</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>    </span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">    RegistrationType</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">List</span>&#8220;</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>    </span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">    RegistrationId</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">106</span>&#8220;</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>   </span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">    Location</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">EditControlBlock</span>&#8220;</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>   </span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">    Sequence</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">1000</span>&#8220;</span><span style="font-size:10pt;font-family:&quot;color:blue;"><span>   </span></span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">    Title</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">Calendar Custom Action</span>&#8220;<span style="color:blue;">&gt;</span></span><span style="font-size:10pt;font-family:&quot;color:blue;"><br />
<span>    </span>&lt;</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">UrlAction</span><br />
<span style="font-size:10pt;font-family:&quot;color:red;">Url</span><span style="font-size:10pt;font-family:&quot;color:blue;">=</span><span style="font-size:10pt;font-family:&quot;">&#8220;<span style="color:blue;">~site/YourPageLibrary/YourCustomPage.aspx?ID={ItemId}</span><span style="color:red;">&amp;amp;</span><span style="color:blue;">List={ListId}</span>&#8220;<span style="color:blue;">/&gt;</span></span><span style="font-size:10pt;font-family:&quot;color:blue;"><br />
<span>  </span>&lt;/</span><span style="font-size:10pt;font-family:&quot;color:#A31515;">CustomAction</span><span style="font-size:10pt;font-family:&quot;color:blue;">&gt;</span></p>
<p class="MsoNormal"><span style="font-size:10pt;line-height:115%;font-family:&quot;color:blue;">&lt;/</span><span style="font-size:10pt;line-height:115%;font-family:&quot;color:#A31515;">Elements</span><span style="font-size:10pt;line-height:115%;font-family:&quot;color:blue;">&gt;</span></p>
<p>RegistrationType can be &#8220;ContentType&#8221;, &#8220;FileType&#8221; (for example if you only want your feature appear to .xsn file), list and Prog ID.</p>
<p>The RegistrationID element is used to specifiy the ID of RegistrationType. If RegistrationType is &#8220;ContentType&#8221;, to get Registration ID, open the document library settings, in the ContentType section click on the content type you<br />
choose, then grab the hex string in the url after &#8220;ctype=&#8221; parameter.</p>
<p>If you use FileType as RegistrationType, then just add the &#8220;.doc&#8221; or &#8220;.xls&#8221; etc in the RegistrationID</p>
<p>If the RegistrationType is list or ProgID, John Holiday has <a href="http://johnholliday.net/resources/customactions.html">a blog </a>summarized all the RegistrationID, look it up!</p>
<p>Adding a CustomAction menu item is not that difficult, however, it is a bit tricky to hide/remove it. I will talk abou it in my next post &#8211; Customization ofSharePoint List Menu Item &#8211; Part 2 Hide Custom Action Item</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/109/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=109&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2009/06/06/customization-of-sharepoint-list-menu-item-%e2%80%93-part-1-add-custom-action-item/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
		<item>
		<title>How do I trouble shooting- Parser Error Message: Unrecognized attribute &#8216;type&#8217;</title>
		<link>http://spreflections.wordpress.com/2009/05/05/how-do-i-trouble-shooting-parser-error-message-unrecognized-attribute-type/</link>
		<comments>http://spreflections.wordpress.com/2009/05/05/how-do-i-trouble-shooting-parser-error-message-unrecognized-attribute-type/#comments</comments>
		<pubDate>Tue, 05 May 2009 05:09:45 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Parser error]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=105</guid>
		<description><![CDATA[Well, this is annoying&#8230; after some developers on my team played around ASP.NET framework (this is what I am guessing.. no one come to me to confess so far though ) our SharePoint portal suddenly stop working and get this message     Server Error in &#8216;/&#8217; Application. Configuration Error   Description: An error occurred [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=105&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Well, this is annoying&#8230; after some developers on my team played around ASP.NET framework (this is what I am guessing.. no one come to me to confess so far though <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) our SharePoint portal suddenly stop working and get this message</p>
<p align="left"> </p>
<p> </p>
<p><span></p>
<h1>Server Error in &#8216;/&#8217; Application.<br />
<hr size="1" /></h1>
<h2><em>Configuration Error</em></h2>
<p align="left"> </p>
<p><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;"><strong>Description: </strong>An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.<br />
</span></p>
<p> </p>
<p></span></p>
<table border="0" width="100%" bgcolor="#ffffcc">
<tbody>
<tr>
<td><code></p>
<pre>Line 14:       &lt;section name="BlobCache" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /&gt;
Line 15:     &lt;/sectionGroup&gt;
<span style="color:red;">Line 16:     &lt;sectionGroup name="System.Workflow.ComponentModel.WorkflowCompiler" type="System.Workflow.ComponentModel.Compiler.WorkflowCompilerConfigurationSectionGroup, System.Workflow.ComponentModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"&gt;
</span>Line 17:       &lt;section name="authorizedTypes" type="System.Workflow.ComponentModel.Compiler.AuthorizedTypesSectionHandler, System.Workflow.ComponentModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /&gt;
Line 18:     &lt;/sectionGroup&gt;</pre>
<p> </p>
<p> </p>
<p></code></td>
</tr>
</tbody>
</table>
<p align="left">
<div><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;">Unrecognized attribute &#8216;type&#8217;.</span></div>
<div><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;"><strong>Source Error:</strong></span></div>
<p><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;"> </p>
<p> </p>
<p></span></p>
<div><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;"><br />
<strong><span style="font-family:Verdana;">Source File: </span></strong>C:\Inetpub\wwwroot\wss\VirtualDirectories\80\web.config<strong><span style="font-family:Verdana;">    Line: </span></strong>16</span></div>
<div><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;"> </span></div>
<p><span style="font-family:Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;"><br />
<hr size="1" />
<p align="left"><strong><span style="font-family:Verdana;">Version Information:</span></strong> Microsoft .NET Framework Version:1.1.4322.2407; ASP.NET Version:1.1.4322.2407</p>
<p align="left">It took me some efforts to resolve this issue&#8230;</p>
<p align="left">First of all, after some investigation, I found in IIS manager, our sharepoint site is pointing to ASP.NET framework 1.1. The fix will be adjust it back to ASP.NET framework 2.0 (Just right click the web site -&gt; Properties-&gt;ASP.NET tab -&gt;Choose the correct framework)</p>
<p align="left">Now I re-render it again. This time I got page cannot be found error&#8230;Argh&#8230;.so I tried re-registering ASP using Aspnet_regiis.<a href="http://msdn.microsoft.com/en-us/library/k6h9cz8h(VS.80).aspx">http://msdn.microsoft.com/en-us/library/k6h9cz8h(VS.80).aspx</a></p>
<p align="left">And then render the page again&#8230;now I got this error:</p>
<p align="left">CS0016: Could not write to output file &#8216;c:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\a0f950ac\3f897461\fr-fr\App_GlobalResources.k8ft-2zy.resources.dll&#8217; &#8212; &#8216;The directory name is invalid. &#8216;</p>
<p align="left">OK, babe&#8230;whatever..This clearly indicate that the folder Temporary ASP.NET Files does not exist. So I went to My computer -&gt;Properties-&gt;Advanced-&gt;Envrionment Variables. Make sure the folder System variables TEMP and TMP is pointing to exists on your computer and Network Services and aspnet accounts have full control of it.</p>
<p align="left">Then after an iisrest and long wait, my dream portal finally appears on the screen!</p>
<p> </p>
<p> </p>
<p></span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/105/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=105&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2009/05/05/how-do-i-trouble-shooting-parser-error-message-unrecognized-attribute-type/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
		<item>
		<title>The cornerstones of SharePoint information Architecture- Site Column and Content Types</title>
		<link>http://spreflections.wordpress.com/2009/04/16/the-cornerstones-of-sharepoint-information-architecture-site-column-and-content-types/</link>
		<comments>http://spreflections.wordpress.com/2009/04/16/the-cornerstones-of-sharepoint-information-architecture-site-column-and-content-types/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 05:26:21 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[Information Architecture]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=100</guid>
		<description><![CDATA[Site columns and content types are the foundation of information architecture planning in SharePoint. It is always best practice to invest your time in the upfront planning site columns and content types when setting up your site collections. Trust me. It will all pay off during the management and maintenance phase for your SharePoint implementation. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=100&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="font-family:Calibri;">Site columns and content types are the foundation of information architecture planning in SharePoint. It is always best practice to invest your time in the upfront planning site columns and content types when setting up your site collections. Trust me. It will all pay off during the management and maintenance phase for your SharePoint implementation. </span><span style="font-family:Wingdings;"><span>J</span></span><span style="font-family:Calibri;"> </span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-family:Calibri;font-size:small;">First, let’s review the concepts of site column and content type</span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="font-family:Calibri;"><strong><span lang="EN">Site columns</span></strong><span lang="EN"> can be thought of as templates; </span></span></span><span style="font-size:small;"><span style="font-family:Calibri;"><span>SharePoint offers the ability to create customized site columns</span><span> when the default document library columns and the Core Document Columns are not enough. The column we created here scoped at the site collection level in the site column gallery. Once it is created, you can use it in any list or library to make the information searchable and manageable through metadata.</span></span></span></p>
<p class="text" style="margin:3pt 0;"><span style="font-family:Calibri;font-size:small;" lang="EN">Another important point to mention: when you add a site column to a list, the resulting list column has the same field ID as the site column. SharePoint uses this to track which list columns are “children” of a given site column. This enables you to make changes to a site column and propagate those changes out to all the list columns that are children of the site column.</span></p>
<p class="text" style="margin:3pt 0;"><span style="font-family:calibri;font-size:small;" lang="EN"> </span></p>
<p class="MsoNormal" style="line-height:15pt;background:white;margin:0;"><span style="font-family:Calibri;"><span style="font-size:small;"><span>A <strong>Content Type</strong> is a reusable grouping of site columns that can be utilized by a list or library. This makes it possible to maintain a consistent metadata structure for all documents or items of that type in a Site Collection. <span>A Content Type can carry a workflow, an Information Management Policy and a document template</span> along with the site columns. Whenever the Content Type is associated with a library or list, all of the functionality built into the customization of that Content Type will be available to that library or list.</span> However, you <span lang="EN">cannot create a column in a content type; rather, you have to create the column, and then reference that column in the content type definition. Because of this, when you add a column to a content type, the content type schema doesn’t contain a &lt;Field&gt; element, it contains a &lt;FieldRef&gt; element</span></span></span></p>
<p class="MsoNormal" style="line-height:15pt;background:white;margin:0;"><span lang="EN"><span style="font-family:Calibri;font-size:small;"> </span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-family:Calibri;font-size:small;"><span>Using a single Content Type in multiple lists allows for consistency in the data structure<strong>.</strong> The consistency adds to the ability to find those list items through a search across the metadata. <span style="font-family:calibri;font-weight:normal;">Another added benefit of using a Content Type in multiple locations is maintainability</span><strong>.</strong> Any changes to the parent Content Type can be passed down to any list that is using that Content Type.<strong></strong></span></span></p>
<p class="first-para" style="margin:.15in 0 0;"><span style="font-family:calibri;font-size:small;">We can either create site columns and content types in a browser or through features. We recommended using the later one just because it is easy to transfer between environments, <span> </span>develop – test – staging- production, this is especially important in the enterprise application space.</span><span style="font-family:calibri;font-size:small;">And it is not complex. You can reference <a href="http://www.sharethispoint.com/archive/2006/07/17/11.aspx">this article </a>to create site column and content type through features. But there are a couple of gotchas for feature deployment. </span><span style="font-family:calibri;font-size:small;"><span> </span>First of all, at times, the changes to the site column are not reflected when the Feature is reactivated, even when using the optional </span><tt><span style="font-family:calibri;font-size:small;">-force</span></tt><span style="font-family:calibri;font-size:small;"> switch to force all updates. It appears that, even though the Feature was deactivated and the site column was removed from the site, SharePoint has left an orphaned site column in the system, and future changes will not take effect, even though it does not appear anywhere on the site.</span></p>
<p class="para" style="margin:.15in 0 0;"><span style="font-family:calibri;font-size:small;">The workaround is adding the attribute </span><tt><span style="font-family:&quot;font-size:11pt;">DisplaceOnUpgrade=TRUE</span></tt><span style="font-family:&quot;font-size:11pt;"> to the </span><tt><span style="font-family:&quot;font-size:11pt;">&lt;Field&gt;</span></tt><span style="font-family:&quot;font-size:11pt;"> node. This way, SharePoint will update the existing site column the next time it is activated.</span></p>
<p class="first-para" style="margin:.15in 0 0;"><span style="font-family:calibri;font-size:small;">Another one is once a feature containing content types is activated, developers can update the Feature and reactivate it to make changes to the created content type. However, changes are not pushed down to other content types that inherit from the one being inherited, nor are the changes pushed onto lists where the content type has been added. The only content types updated are those that are not in use.</span><span style="font-family:calibri;font-size:11pt;">The workaround will be using SharePoint object model. It provides a method for updating content types, and forcing updates to cascade to other child content types and lists that contain the content types. </span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/100/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=100&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2009/04/16/the-cornerstones-of-sharepoint-information-architecture-site-column-and-content-types/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
		<item>
		<title>Managed Property in SharePoint Search</title>
		<link>http://spreflections.wordpress.com/2009/02/17/managed-property-in-sharepoint-search/</link>
		<comments>http://spreflections.wordpress.com/2009/02/17/managed-property-in-sharepoint-search/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 21:59:30 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=98</guid>
		<description><![CDATA[Managed Property plays a very important role in MOSS 2007 Search. If used properly, you can greatly enrich the user search experience without spending a lot of effort. Before we go in the topic, let’s look at what is managed property. The SharePoint search engine index both unstructured information, like text in word documents, http [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=98&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Managed Property plays a very important role in MOSS 2007 Search. If used properly, you can greatly enrich the user search experience without spending a lot of effort. Before we go in the topic, let’s look at what is managed property.</p>
<p>The SharePoint search engine index both unstructured information, like text in word documents, http pages ectc and structured information (metadata), such as file size, file extension, title, author etc. We call this piece of metadataproperty. SharePoint operates with two kinds of properties: crawled property and managed property. Crawled properties are discovered by the crawler. Each SSP has a list of crawled properties in the metadata store in its SQL database. Properties are automatically added into the metadata store when the crawler crawling content. Thus, the number of crawled properties can be added up quickly. This crawled property list is shared across all content sources in SSP.</p>
<p> Before MOSS 2007, SharePoint only operates with Crawled property. However, in reality, only a small subset of the crawled property is needed for searching and for displaying the search results. And you don’t have control of the name of the crawled properties. Crawler will name them itself by some internal naming rules. Thus, they can have lengthy names that would make them hard to reference in code or other places.</p>
<p>Managed property is a new concept introduced in MOSS 2007. They are created by SSP administrators and provide an easier and more consistent experience for managing and using the subset of crawled properties that matters to the business. And you can also map several crawled properties to the same managed property. This makes it possible to join different crawled properties that are semantically the same to a single managed property.</p>
<p> Here are some examples of managed properties that are available in MOSS 2007,</p>
<ul>
<li>AssignedTo</li>
<li>Author</li>
<li>ContentType</li>
<li>FileExtension</li>
<li>SiteTitle</li>
<li>etc..</li>
</ul>
<p>Check the<a href="http://sharepointmagazine.net/technical/customisation/customizing-search-series-creating-new-managed-properties-from-bdc-crawled-content"> blog </a>to see how you can create your own managed property. </p>
<p>The use cases for managed properties:</p>
<ul>
<li><strong>Construct Search Query :</strong> The most straight forward way is to execute searches from the search box using managed properties. We can enter them directly into the search box. For example, I want to find all the documents written by me, I would execute a search in my MOSS site using the following text:”Author:Chris”</li>
<li><strong>Customize Search Results: </strong>We are all familiar with OOTB search results that displaying the metadata, like title, author, URL etc. Actually, we can customized the search results to display any available metadata as long as the metadata is a managed property in the index</li>
<li><strong>Expose for advanced search:</strong> The Advanced search page has property picker that can be populated managed properties. You can add managed properties to the property picker in the advanced search page by modifying the XML attaché to the Advanced Search Box for the properties. Here is a <a href="http://msdn.microsoft.com/en-us/library/bb428648.aspx">MSDN Visual How-to </a>shows you step by step how to do that. Check it out!</li>
<li><strong>Use in Search scope:</strong> You can use managed property to configure search scope. Here is a good <a href="http://blah.winsmarts.com/2007-5-MOSS_2007_Trick_-_Search_Scopes_+_Managed_Properties__Tasty_Dish.aspx">blog</a> of how to do it. </li>
<li> <strong>Custom relevancy ranking:</strong> Managed properties play a role within the ranking of the results.The managedproperty class exposes the Weight property which can be changed programmatically to influence the relevance ranking</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/98/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=98&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2009/02/17/managed-property-in-sharepoint-search/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
		<item>
		<title>Search Query TotalRowsExactMinimum property</title>
		<link>http://spreflections.wordpress.com/2009/02/13/search-query-totalrowsexactminimum-property/</link>
		<comments>http://spreflections.wordpress.com/2009/02/13/search-query-totalrowsexactminimum-property/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 05:47:17 +0000</pubDate>
		<dc:creator>chrissyz</dc:creator>
				<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://spreflections.wordpress.com/?p=96</guid>
		<description><![CDATA[When we are coding against MOSS Search API, we use totalRows property to get the total search results from the search engine. However, why sometimes we found the totalRows number returned is not accurate. Why did that happen? And how could we fix that? The reason for that is totalRows only give you an estimate [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=96&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When we are coding against MOSS Search API, we use <strong>totalRows</strong> property to get the total search results from the search engine. However, why sometimes we found the totalRows number returned is not accurate. Why did that happen? And how could we fix that?</p>
<p>The reason for that is totalRows only give you an estimate result. It is very expensive to get a specific number due to the security trimming and search algorithms logic in SharePoint search. The trick is this property ‘<strong>TotalRowsExactMinimum</strong>’. It instructs the SharePoint search engine as to how accurate the TotalRows should be. It tells SharePoint the number of minimum hits that must be included in the result. The default value of it is 50. It is used in conjunction with <strong>totalRows</strong>. If you have more than 50 search results and you use TotalRows property with no modification of TotalRowsExactMinimum property, it will stop displaying further pages in the search results even though there are more records. Once you set the ‘TotalRowsExactMinimum’ more than the total results you estimated to return, Search engine will return the accurate total number. However, the higher you set ‘TotalRowsExactMinimum’, the more negative impact you will have on performance. Here is a very good <a href="http://blogs.msdn.com/enterprisesearch/archive/2008/05/22/understanding-total-hits-paging-in-the-moss-2007-search-api.aspx">blog</a> gives you details explanation of how ‘TotalRowsExactMinimum” works.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/spreflections.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/spreflections.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/spreflections.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/spreflections.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/spreflections.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/spreflections.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/spreflections.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/spreflections.wordpress.com/96/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=spreflections.wordpress.com&amp;blog=3582862&amp;post=96&amp;subd=spreflections&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://spreflections.wordpress.com/2009/02/13/search-query-totalrowsexactminimum-property/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4aff6773dc77a6381f54bb7c0060d2c4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">chrissyz</media:title>
		</media:content>
	</item>
	</channel>
</rss>
