<?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"
	>

<channel>
	<title>novolocus.com &#187; Search</title>
	<atom:link href="http://www.novolocus.com/category/sharepoint/search/feed" rel="self" type="application/rss+xml" />
	<link>http://www.novolocus.com</link>
	<description>Whatever Andy Burns is working on...</description>
	<pubDate>Tue, 18 Nov 2008 12:00:31 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Adding a SharePoint system to the Vista Start menu&#8230;</title>
		<link>http://www.novolocus.com/2008/09/23/adding-a-sharepoint-system-to-the-vista-start-menu/</link>
		<comments>http://www.novolocus.com/2008/09/23/adding-a-sharepoint-system-to-the-vista-start-menu/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 12:00:58 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Admin]]></category>

		<category><![CDATA[Search]]></category>

		<category><![CDATA[Vista]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=785</guid>
		<description><![CDATA[The only thing that I really like about Vista (in a &#8216;I wouldn&#8217;t like to go back to not having this&#8217; way) is the search box in the start menu. To be honest, I&#8217;ve stopped clicking to start applications entirely - it works that well.
Well, today, I had a surprise. One of my colleagues asked [...]]]></description>
			<content:encoded><![CDATA[<p>The only thing that I <em>really</em> like about Vista (in a &#8216;I wouldn&#8217;t like to go back to not having this&#8217; way) is the search box in the start menu. To be honest, I&#8217;ve stopped clicking to start applications entirely - it works that well.</p>
<p>Well, today, I had a surprise. One of my colleagues asked me to test something for him, and update my Group Policy - so I did:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/09/gpupdate.png"><img class="alignnone size-medium wp-image-786" title="Running GPUPDATE at the command line" src="http://www.novolocus.com/wp-content/uploads/2008/09/gpupdate-300x52.png" alt="" width="300" height="52" /></a></p>
<p>Then he asked me to search for something in the Vista start menu - and look what I found:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/09/vistasearch.png"><img class="alignnone size-medium wp-image-787" title="Vista start menu with Search SharePoint option" src="http://www.novolocus.com/wp-content/uploads/2008/09/vistasearch-266x300.png" alt="" width="266" height="300" /></a></p>
<p>That&#8217;s right, a &#8216;Search SharePoint&#8217; option. <span id="more-785"></span>Naturally, I tried it - and it searched our internal system:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/09/results.png"><img class="alignnone size-medium wp-image-788" title="Results of a search - it works!" src="http://www.novolocus.com/wp-content/uploads/2008/09/results-300x172.png" alt="" width="300" height="172" /></a></p>
<p>Great! Not being an admin bod, I don&#8217;t entirely know how this was set up, so I asked our admin. He told me that he&#8217;d used the <em>Window 2008 Admin Tools Pack</em>. This comes with an applet for <em>Group Policy Management</em>, and he then went into <em>User Configuration &gt; Administrative Templates &gt; Windows components &gt; Instant Search</em> and that in there you can set up a custom search provider.</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/09/gpedit.png"><img class="alignnone size-medium wp-image-789" title="Group Policy Tree showing where to add the custom search setting" src="http://www.novolocus.com/wp-content/uploads/2008/09/gpedit-237x300.png" alt="" width="237" height="300" /></a></p>
<p>The custom search provider is just a URL with %w to place the search term. Thus, the setting here is something like:</p>
<p><code>http://deltamoss01/searchcenter/Pages/Results.aspx?k=<strong>%w</strong></code></p>
<p>(Assuming, of course, that you&#8217;re using a search center)</p>
<p>I&#8217;m sure it&#8217;s been documented before, but hey, it&#8217;s neat!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/09/23/adding-a-sharepoint-system-to-the-vista-start-menu/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Search Date Formats&#8230;</title>
		<link>http://www.novolocus.com/2008/09/18/search-date-formats/</link>
		<comments>http://www.novolocus.com/2008/09/18/search-date-formats/#comments</comments>
		<pubDate>Thu, 18 Sep 2008 16:06:27 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Dates]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=784</guid>
		<description><![CDATA[I keep forgetting this, so a note to myself. Date formats in search results in SharePoint are defined by:

For Team Sites, the sites Regional Settings
For Collaboration Portals, the Search Center&#8217;s Regional Settings

Now, if only I can remember that this time. Often I see systems showing the dates in American date format (don&#8217;t get me started [...]]]></description>
			<content:encoded><![CDATA[<p>I keep forgetting this, so a note to myself. Date formats in search results in SharePoint are defined by:</p>
<ul>
<li>For Team Sites, the sites Regional Settings</li>
<li>For Collaboration Portals, the Search Center&#8217;s Regional Settings</li>
</ul>
<p>Now, if only I can remember that this time. Often I see systems showing the dates in American date format (don&#8217;t get me started on that one!) and this is how you change the displayed format.</p>
<p>Of course, this raises the question of, if you have offices in, say, London and Paris, how do you support the different time zones? Hmm. I&#8217;ll have to puzzle over that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/09/18/search-date-formats/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Content Classes and Search</title>
		<link>http://www.novolocus.com/2008/06/26/content-classes-and-search/</link>
		<comments>http://www.novolocus.com/2008/06/26/content-classes-and-search/#comments</comments>
		<pubDate>Thu, 26 Jun 2008 12:00:19 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=669</guid>
		<description><![CDATA[So I was playing with SharePoint search a while back, and I was wanting to display some results differently based upon what type of item the result was for.
It turns out that there is a node in the results xml file that shows this - ContentClass :

As you can see, the first highlighted result is [...]]]></description>
			<content:encoded><![CDATA[<p>So I was playing with SharePoint search a while back, and I was wanting to display some results differently based upon what type of item the result was for.</p>
<p>It turns out that there is a node in the results xml file that shows this - <strong>ContentClass</strong> :</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/06/contentclass.png"><img class="alignnone size-medium wp-image-670" title="contentclass" src="http://www.novolocus.com/wp-content/uploads/2008/06/contentclass-300x205.png" alt="Results XML showing ContentClass" width="300" height="205" /></a></p>
<p>As you can see, the first highlighted result is <strong>STS_ListItem_DocumentLibrary</strong>. Pretty clear what that is. Not all results actually have a content class - the second highlighted result is from a document on a file share, and it doesn&#8217;t have a <strong>ContentClass</strong>.</p>
<p>So what content classes are there? Well, <a href="http://www.devcow.com/blogs/jdattis/archive/2007/12/20/the-contentclass-and-isdocument-properties-along-with-the-welcome-page-caveat.aspx">Dan Attis has a good list</a>, along with a caveat about Welcome pages in the results. There is <a href="http://mdablog.spaces.live.com/blog/cns!B0C40902E1212960!382.entry">a similar list here</a>. (Nobody mentions not having a <strong>ContentClass </strong>though). But unfortunately, I don&#8217;t know how to add new content classes</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/06/26/content-classes-and-search/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How do I get rid of the Action Links on my Search Results Page?</title>
		<link>http://www.novolocus.com/2008/06/04/how-do-i-get-rid-of-the-action-links-on-my-search-results-page/</link>
		<comments>http://www.novolocus.com/2008/06/04/how-do-i-get-rid-of-the-action-links-on-my-search-results-page/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 09:00:16 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Web Parts]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=643</guid>
		<description><![CDATA[I wanted to get rid of the Action Links on a standard Search Results page in SharePoint:

So I opened up my search page in SharePoint Designer. This always looks a bit cluttered, but I went to my Core Search Results Web Part to modify it&#8217;s ShowActionLinks property.

I&#8217;ve scribbled on this to highlight the obvious web [...]]]></description>
			<content:encoded><![CDATA[<p>I wanted to get rid of the Action Links on a standard Search Results page in SharePoint:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/standard-search-page.png"><img class="alignnone size-medium wp-image-644" title="standard-search-page" src="http://www.novolocus.com/wp-content/uploads/2008/05/standard-search-page-300x86.png" alt="Standard Search Results Action Links" width="300" height="86" /></a></p>
<p>So I opened up my search page in SharePoint Designer. This always looks a bit cluttered, but I went to my Core Search Results Web Part to modify it&#8217;s <em>ShowActionLinks </em>property.</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/view-in-spd.png"><img class="alignnone size-medium wp-image-645" title="view-in-spd" src="http://www.novolocus.com/wp-content/uploads/2008/05/view-in-spd-300x128.png" alt="SharePoint Designer view of Results page, showing that ShowActionLinks is already False" width="300" height="128" /></a></p>
<p>I&#8217;ve scribbled on this to highlight the obvious web parts on the page. The Core Results web part is highlighted in cyan. Anyway, if you look at the code in the top of the screenshot you can see that the <em>ShowActionLinks </em>setting is already False. Eh?<span id="more-643"></span></p>
<p>Obviously, I decided to set this <em>ShowActionLinks </em>setting to true to see what happened:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/now-there-are-two.png"><img class="alignnone size-medium wp-image-646" title="now-there-are-two" src="http://www.novolocus.com/wp-content/uploads/2008/05/now-there-are-two-300x203.png" alt="Screenshot with Two Actionlinks shown" width="300" height="203" /></a></p>
<p>Now there are two action links shown. (Please note, I made some other changes while figuring this out, which is why the results themselves look a bit different). Okay, so clearly, there must be another web part. Rather than look at the pretty pictures in SharePoint Designer, I looked at the rather more useful code and found:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/there-is-another-coreresults-web-part-but-without-xsl-for-displaying-search-results.png"><img class="alignnone size-medium wp-image-647" title="there-is-another-coreresults-web-part-but-without-xsl-for-displaying-search-results" src="http://www.novolocus.com/wp-content/uploads/2008/05/there-is-another-coreresults-web-part-but-without-xsl-for-displaying-search-results-300x79.png" alt="Screenshot of SharePoint Designer, showing a second Core Results Web part" width="300" height="79" /></a></p>
<p>That&#8217;s right, there is a second Core Results web part, which is nearly invisible in the Design view of SharePoint Designer. This web part&#8217;s XSL doesn&#8217;t actually process the Results nodes of the search results - so it doesn&#8217;t show any results (which kind of belies it&#8217;s name as the &#8216;Core Results&#8217; web part). Instead, it just shows the action links.</p>
<p>Frustratingly, the second Core Results web part is very obvious if you edit the page in the browser:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/edit-in-browser.png"><img class="alignnone size-medium wp-image-648" title="edit-in-browser" src="http://www.novolocus.com/wp-content/uploads/2008/05/edit-in-browser-300x160.png" alt="Editing the results page in the browser shows the second Core results web part" width="300" height="160" /></a></p>
<p>I deleted that web part from my page, and the action links vanished. I guess the question that this leaves is why are the action links not in their own web part? After all, it&#8217;s not called the &#8216;Core Results and Action Links&#8217; web part is it? It rather appears that they would nicely sit as their own web part.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/06/04/how-do-i-get-rid-of-the-action-links-on-my-search-results-page/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Saving SharePoint Searches</title>
		<link>http://www.novolocus.com/2008/06/03/saving-sharepoint-searches/</link>
		<comments>http://www.novolocus.com/2008/06/03/saving-sharepoint-searches/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 09:00:57 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=635</guid>
		<description><![CDATA[One of my colleagues was asking how to save a SharePoint Search. It&#8217;s a bit of a question of how many ways to skin a cat&#8230;
The important thing to remember is that a simple search is just a URL, and specifies the search term and scope in the k and s parameters respectively. E.g. This [...]]]></description>
			<content:encoded><![CDATA[<p>One of my colleagues was asking how to save a SharePoint Search. It&#8217;s a bit of a question of how many ways to skin a cat&#8230;</p>
<p>The important thing to remember is that a simple search is just a URL, and specifies the search term and scope in the <strong>k</strong> and <strong>s</strong> parameters respectively. E.g. This search url:</p>
<p><code>http://deltamoss01/searchcenter/Pages/Results.aspx?k=Badgers&amp;s=All%20Sites</code></p>
<p>would run a search for <em>badgers </em>in the <em>All Sites</em> scope.</p>
<p>It is worth noting, however, that this is saving the search, not a set of search results. As the index is updated, the results on this page may vary. Also, <a href="http://www.novolocus.com/2008/06/02/advanced-search-losing-parameters/">advanced searches don&#8217;t pass their parameters as GET parameters</a> (i.e. within the URL), so you can&#8217;t save these the same way. I&#8217;ve not yet found a way to save them.</p>
<p>As another note, the standard Search results page shows the &#8216;Alert Me&#8217; link:</p>
<p><img class="alignnone size-full wp-image-636" title="alert-me-link" src="http://www.novolocus.com/wp-content/uploads/2008/05/alert-me-link.png" alt="The Alert Me Link" width="371" height="46" /></p>
<p>This lets you set up email alerts about new items that match a search:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/alert-me-page.png"><img class="alignnone size-medium wp-image-637" title="alert-me-page" src="http://www.novolocus.com/wp-content/uploads/2008/05/alert-me-page-300x187.png" alt="Alert Me Configuration Page" width="300" height="187" /></a></p>
<p>Really, that&#8217;s pretty neat. <span id="more-635"></span></p>
<p>Anyway, assuming that you&#8217;re not going to use Alerts, then you&#8217;re looking at storing URLs. You could use a List, such as a links list, but my colleague made the interesting suggestion of using the &#8216;My Links&#8217; functionality of an account:</p>
<p><img class="alignnone size-full wp-image-638" title="my-links" src="http://www.novolocus.com/wp-content/uploads/2008/05/my-links.png" alt="My Links Link" width="300" height="58" /></p>
<p>And then you can add it to your My Links list:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/add-my-link-page.png"><img class="alignnone size-medium wp-image-639" title="add-my-link-page" src="http://www.novolocus.com/wp-content/uploads/2008/05/add-my-link-page-300x116.png" alt="Add new My Link page" width="300" height="116" /></a></p>
<p>Which are shown on your My Links menu:</p>
<p><img class="alignnone size-full wp-image-640" title="my-links-menu" src="http://www.novolocus.com/wp-content/uploads/2008/05/my-links-menu.png" alt="" width="275" height="157" /></p>
<p>So there we&#8217;ve got one way of saving a search in SharePoint. In reality, there are a lot of alternative - Links lists being an obvious choice, but there are things like summary web parts too. Really, it&#8217;s anywhere you can store a URL.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/06/03/saving-sharepoint-searches/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Advanced Search - Losing Parameters</title>
		<link>http://www.novolocus.com/2008/06/02/advanced-search-losing-parameters/</link>
		<comments>http://www.novolocus.com/2008/06/02/advanced-search-losing-parameters/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 09:00:28 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Navigation]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=631</guid>
		<description><![CDATA[I have a bit of a problem with Advanced Search in SharePoint - it&#8217;s very awkward to use.
When I perform a standard search in SharePoint, it shows me what I&#8217;ve been searching for:

That&#8217;s good - it&#8217;s useful to know what you&#8217;ve searched for. If I then click on &#8216;Advanced&#8217; the advanced search page opens showing [...]]]></description>
			<content:encoded><![CDATA[<p>I have a bit of a problem with Advanced Search in SharePoint - it&#8217;s very awkward to use.</p>
<p>When I perform a standard search in SharePoint, it shows me what I&#8217;ve been searching for:</p>
<p><img class="alignnone size-full wp-image-632" title="search" src="http://www.novolocus.com/wp-content/uploads/2008/05/search.png" alt="Search Results showing Search Term of Snake" width="327" height="239" /></p>
<p>That&#8217;s good - it&#8217;s useful to know what you&#8217;ve searched for. If I then click on &#8216;Advanced&#8217; the advanced search page opens showing my search term, and a number of other fields I can fill in for a more specific search.</p>
<p><img class="alignnone size-full wp-image-633" title="advsearch" src="http://www.novolocus.com/wp-content/uploads/2008/05/advsearch.png" alt="Advanced Search Screen with Search term of Snake" width="353" height="471" /></p>
<p>If I then run that search, though, I get the following results page:</p>
<p><img class="alignnone size-full wp-image-634" title="advsearchresult" src="http://www.novolocus.com/wp-content/uploads/2008/05/advsearchresult.png" alt="Search results, but with no apparent search term" width="338" height="322" /></p>
<p>Okay, now that is a little odd looking. There is no search term in the search input box. This is perhaps not surprising - the advanced search screen can express more complex queries than the text input box of the simple search control. However, there is <strong><em>nothing to tell you what the results are of.</em></strong> You have no idea what the search was that gave these results!</p>
<p>Worse happens if you try to go back to your advanced search page. Unless you use the browser&#8217;s <strong>Back </strong>button, you will lose your current query. There is no obvious way of &#8216;refining&#8217; an advanced query.</p>
<p>It looks like this is happening because the simple Search box passes it&#8217;s parameters in the URL as GET parameters, but the Advance Search page uses a postback-then-forward approach.</p>
<p>Is it too much to ask for to have a web part that describes what the conditions of an advanced search are, and to store that query to pass back to the Advanced Search page, should the user wish to refine their query.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/06/02/advanced-search-losing-parameters/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SharePoint Search doesn&#8217;t have Wildcard searching</title>
		<link>http://www.novolocus.com/2008/05/29/sharepoint-search-doesnt-have-wildcard-searching/</link>
		<comments>http://www.novolocus.com/2008/05/29/sharepoint-search-doesnt-have-wildcard-searching/#comments</comments>
		<pubDate>Thu, 29 May 2008 09:00:00 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=626</guid>
		<description><![CDATA[Yesterday I described Search Stemming and how to set it up. I thought I&#8217;d have a look at Wildcard searching and discovered (to my shock) SharePoint Search doesn&#8217;t have general wildcard searching.
This isn&#8217;t news - the normally evangalistic Patrick Tisseghem posted about this a year and a half ago, and plenty of folks have expressed [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I described<a href="http://www.novolocus.com/2008/05/28/search-stemming-in-sharepoint/"> Search Stemming</a> and how to set it up. I thought I&#8217;d have a look at Wildcard searching and discovered (to my shock) <strong>SharePoint Search doesn&#8217;t have general wildcard searching.</strong></p>
<p>This isn&#8217;t news - the normally evangalistic Patrick Tisseghem <a href="http://www.u2u.info/Blogs/Patrick/Lists/Posts/Post.aspx?ID=1673">posted about this a year and a half ago</a>, and plenty of folks have expressed their surprise at this. I can&#8217;t say I blame them. There are third party products that given general wildcard searching, but I&#8217;ve not see or used any of them, and some of them get mixed reviews.</p>
<p>You might have noticed that I spoke specifically about general wildcard searching. Well, you can do wildcard searching when you&#8217;re search for a property of a particular value. For example, a search for <em>Title:Water</em> would return results about water, waterloo, watergate, watering, Muddy Waters, etc.. Perhaps a comparison would be useful to make things clearer.<span id="more-626"></span></p>
<p><strong>A normal unstemmed search for <em>Apple</em></strong><em>:</em></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/unstemmed-search.png"><img class="alignnone size-medium wp-image-627" title="unstemmed-search" src="http://www.novolocus.com/wp-content/uploads/2008/05/unstemmed-search-300x130.png" alt="Results screen with results for Apple" width="300" height="130" /></a></p>
<p><strong>A Stemmed Search for <em>Apple</em>:</strong></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/stemmed-search.png"><img class="alignnone size-medium wp-image-628" title="stemmed-search" src="http://www.novolocus.com/wp-content/uploads/2008/05/stemmed-search-300x141.png" alt="A Stemmed results page showing results matching Apple and Apples" width="300" height="141" /></a></p>
<p>Notice how it returns both <em>Apple </em>and <em>Apples </em>as matching results</p>
<p><strong>A Wildcard search:</strong></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/general-wildcard-search.png"><img class="alignnone size-medium wp-image-629" title="general-wildcard-search" src="http://www.novolocus.com/wp-content/uploads/2008/05/general-wildcard-search-300x122.png" alt="A results page when trying to do a general wildcard search - results are as a normal search" width="300" height="122" /></a></p>
<p>Well, that&#8217;s just an example really; it doesn&#8217;t work. The results are for a normal search for <em>Apple</em></p>
<p><strong>A Wildcard Property Search:</strong></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/property-wildcard-search.png"><img class="alignnone size-medium wp-image-630" title="property-wildcard-search" src="http://www.novolocus.com/wp-content/uploads/2008/05/property-wildcard-search-300x96.png" alt="Results page for a Title property search showing results including Apple and Applegate" width="300" height="96" /></a></p>
<p>Here we&#8217;re searching for things with a <strong>Title </strong>that includes <em>Apple </em>and we get a result for an item called <em>Apple.jpg</em>, and also we get a hit on <em>Applegate </em>too (and who wouldn&#8217;t like to hit on Christina Applegate?) Clearly &#8216;Applegate&#8217; is not a stemmed form of &#8216;Apple&#8217;, so even if stemming were turned on (it wasn&#8217;t) you wouldn&#8217;t expect a match.</p>
<p>So there sort of is some wildcard searching. However, it&#8217;s completely unreasonable to expect your typical user to be able to use that - heck, I get confused about some of the fields and field names, so a user doesn&#8217;t stand much of a change. Plus, you have to know what field you&#8217;re searching over - my example wouldn&#8217;t have matched items which had a <strong>Keyword </strong>column containing <em>Apple</em>, and you can&#8217;t really search fields until you stumble on the right one for the results you&#8217;re after!</p>
<p>I guess I&#8217;m with Patrick on this one - Microsoft, sort it out! Give us general wildcard searching!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/29/sharepoint-search-doesnt-have-wildcard-searching/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Search Stemming in SharePoint</title>
		<link>http://www.novolocus.com/2008/05/28/search-stemming-in-sharepoint/</link>
		<comments>http://www.novolocus.com/2008/05/28/search-stemming-in-sharepoint/#comments</comments>
		<pubDate>Wed, 28 May 2008 12:00:20 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=621</guid>
		<description><![CDATA[So, my playing with search recently has shown that the search stemming in SharePoint is turned off by default. Search stemming is what takes a search term like &#8216;Fill&#8216; and also matches against &#8216;Filling&#8216; and &#8216;Filled&#8216;. This is different to wildcards - &#8216;Fill*&#8216; would also match words like &#8216;Fillet&#8216;. Here is an example of searching [...]]]></description>
			<content:encoded><![CDATA[<p>So, my playing with search recently has shown that the search stemming in SharePoint is turned off by default. Search stemming is what takes a search term like &#8216;<em>Fill</em>&#8216; and also matches against &#8216;<em>Filling</em>&#8216; and &#8216;<em>Filled</em>&#8216;. This is different to wildcards - &#8216;<em>Fill*</em>&#8216; would also match words like &#8216;<em>Fillet</em>&#8216;. Here is an example of searching for <em>Apple </em>and <em>Apples </em>without stemming&#8230; <span id="more-621"></span></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/search1.png"><img class="alignnone size-medium wp-image-622" title="search1" src="http://www.novolocus.com/wp-content/uploads/2008/05/search1-300x125.png" alt="Search for Apple with Stemming - no result" width="300" height="125" /></a><a href="http://www.novolocus.com/wp-content/uploads/2008/05/search2.png"><img class="alignnone size-medium wp-image-623" title="search2" src="http://www.novolocus.com/wp-content/uploads/2008/05/search2-300x121.png" alt="Search for Apples without stemming - one result." width="300" height="121" /></a></p>
<p>And if I turn on stemming and search right away I get:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/stemmed-result.png"><img class="alignnone size-medium wp-image-624" title="stemmed-result" src="http://www.novolocus.com/wp-content/uploads/2008/05/stemmed-result-300x103.png" alt="Searching for Apple with Stemming - one result" width="300" height="103" /></a></p>
<p>I was curious, so I looked up about SharePoint search stemming. I found some posts about it from Mike Taghizadeh (parts <a href="http://blogs.msdn.com/miketag/archive/2006/12/21/moss-search-word-stemming-part-1.aspx">one</a> and <a href="http://blogs.msdn.com/miketag/archive/2006/12/27/moss-search-word-stemming-part-2.aspx">two</a>) which were interesting, but didn&#8217;t tell me much about how it applies to SharePoint. I found another article I could understand better from <a href="http://www.joiningdots.net/blog/2007/01/sharepoint-and-stemming.html">Joining Dots</a>. According to them, search stemming can increase the size of your index - although I&#8217;m not clear how the Core Results Web Part can affect how the indexing works, so I&#8217;m not entirely convinced. Certainly I can turn on stemming and get stemmed results without recrawling, which suggests that the index isn&#8217;t the issue.</p>
<p>Personally, I suspect that stemming is turned off by default because it doesn&#8217;t work so well in some languages (and, as Mike points out, for some languages can&#8217;t really).</p>
<p>Anyway, if you want to turn it on, edit your search results page, then &#8216;modify&#8217; the Core Results Web Part:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/configure-stemming.png"><img class="alignnone size-medium wp-image-625" title="configure-stemming" src="http://www.novolocus.com/wp-content/uploads/2008/05/configure-stemming-300x109.png" alt="Modifying the Core Resulst Web Part" width="300" height="109" /></a></p>
<p>Check the &#8216;Enable Search Term Stemming&#8217; box, press OK and save your page.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/28/search-stemming-in-sharepoint/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Create an Image only Search Scope in Sharepoint</title>
		<link>http://www.novolocus.com/2008/05/23/create-an-image-only-search-scope-in-sharepoint/</link>
		<comments>http://www.novolocus.com/2008/05/23/create-an-image-only-search-scope-in-sharepoint/#comments</comments>
		<pubDate>Fri, 23 May 2008 10:07:06 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Bug]]></category>

		<category><![CDATA[Pictures]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=603</guid>
		<description><![CDATA[Previously I&#8217;d looked at having a search that shows thumbnails of images in SharePoint. I modified the results page to do this - but the results themselves would still show non-Picture items (e.g. documents, pages, etc.). In this post, I&#8217;ll configure up a new Search Scope for images only. 
Search Scopes are found through the [...]]]></description>
			<content:encoded><![CDATA[<p>Previously I&#8217;d looked at having <a href="http://www.novolocus.com/2008/05/22/showing-thumbnails-in-search/">a search that shows thumbnails of images</a> in SharePoint. I modified the results page to do this - but the results themselves would still show non-Picture items (e.g. documents, pages, etc.). In this post, I&#8217;ll configure up a new Search Scope for images only. <span id="more-603"></span></p>
<p>Search Scopes are found through the Shared Service Provider (SSP) Search settings page:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/ssp-settings.png"><img class="alignnone size-medium wp-image-604" title="ssp-settings" src="http://www.novolocus.com/wp-content/uploads/2008/05/ssp-settings-300x91.png" alt="SSP Settings Page" width="300" height="91" /></a></p>
<p>If we <strong>View the Scopes</strong>, we get a list of the scopes and which Web Apps they&#8217;re available on:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/ssp-scopes.png"><img class="alignnone size-medium wp-image-605" title="ssp-scopes" src="http://www.novolocus.com/wp-content/uploads/2008/05/ssp-scopes-300x229.png" alt="Scopes List in SSP" width="300" height="229" /></a></p>
<p>Click on <strong>New Scope</strong> to create a new scope (obviously!) At this stage you only give it a name; rules are defined later:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/new-scope.png"><img class="alignnone size-medium wp-image-606" title="new-scope" src="http://www.novolocus.com/wp-content/uploads/2008/05/new-scope-300x242.png" alt="New Scope Page" width="300" height="242" /></a></p>
<p>Hit <strong>OK </strong>and create the scope. The Scopes list view now prompts you to &#8216;Add Rules&#8217; to the scope:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/new-scope-add-rules.png"><img class="alignnone size-medium wp-image-607" title="new-scope-add-rules" src="http://www.novolocus.com/wp-content/uploads/2008/05/new-scope-add-rules-300x183.png" alt="Scope List with new (empty) scope" width="300" height="183" /></a></p>
<p>Click on <strong>Add Rules</strong> to do so:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/add-property-rule.png"><img class="alignnone size-medium wp-image-608" title="add-property-rule" src="http://www.novolocus.com/wp-content/uploads/2008/05/add-property-rule-300x217.png" alt="Add Scope Rule Page" width="300" height="217" /></a></p>
<p>Rules can be based on a number of things - Content Source, Web Address, or Property. Properties are just Managed Properties that are configured to allow themselves to be used in scopes. <a href="http://www.novolocus.com/2008/05/13/what-columns-can-i-use-in-my-search-results/">You can add to those Managed Properties</a> and make more available in this list.</p>
<p>For our scope, I&#8217;m using the ContentClass property. I know from <a href="http://www.novolocus.com/2008/05/22/showing-thumbnails-in-search/">my previous article</a> the value that this is for Picture items, and I&#8217;m going to make this rule Required - I want all items in this scope to have the content class of <em>STS_ListItem_PictureLibrary</em> (that just trips off the tongue).</p>
<p>Anyway, once those fields have been filled in, press <strong>OK</strong>. Go back to the Search Settings page and go to the Scope section:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/update-scopes.png"><img class="alignnone size-medium wp-image-609" title="update-scopes" src="http://www.novolocus.com/wp-content/uploads/2008/05/update-scopes-300x111.png" alt="Update the scopes" width="300" height="111" /></a></p>
<p>The scopes periodically update themselves; this section will tell you when the next update is. If you&#8217;re impatient, you can kick off an update immediately.</p>
<p>So, once the scope is created and updated, we want to use it. First, we have to configure it in our Site Collection. This does mean that different site collections can share (or not) different scopes. Go to the Site Collection Settings:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/site-collection-scopes.png"><img class="alignnone size-medium wp-image-610" title="site-collection-scopes" src="http://www.novolocus.com/wp-content/uploads/2008/05/site-collection-scopes-300x85.png" alt="Settings page for Site Collection\'s top level site." width="300" height="85" /></a></p>
<p>Click on <strong>Search Scopes</strong>:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/view-scopes-in-site-collection.png"><img class="alignnone size-medium wp-image-611" title="view-scopes-in-site-collection" src="http://www.novolocus.com/wp-content/uploads/2008/05/view-scopes-in-site-collection-300x189.png" alt="Search Scopes in Site collection" width="300" height="189" /></a></p>
<p>This shows us the search scopes available in the site collection and the &#8216;Display Groups&#8217; those scopes are in. &#8216;Display Groups&#8217; controls where the scopes are available. For example, the above screenshot shows the scopes available for the small search box and the advanced search.</p>
<p>We&#8217;ll add our scope to the small search box. Click on<strong> Search Dropdown</strong>.</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/edit-scope-display-group.png"><img class="alignnone size-medium wp-image-612" title="edit-scope-display-group" src="http://www.novolocus.com/wp-content/uploads/2008/05/edit-scope-display-group-300x235.png" alt="Edit Display Group Page" width="300" height="235" /></a></p>
<p>Now we can edit the display group. <strong>Check the &#8216;Display&#8217; checkbox</strong> next to our Images scope. Hit <strong>OK</strong>.</p>
<p>Next we need to go to a page which uses the small search box <em>and </em>shows the scope drop down list. Your system might not always show that list. I configured my search page to display this drop down list (by editing the <em>Search Box</em> web part), and ran a search for &#8217;snake&#8217; using  the default &#8216;All sites&#8217; scope:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/search-results-snake-all-content.png"><img class="alignnone size-medium wp-image-613" title="search-results-snake-all-content" src="http://www.novolocus.com/wp-content/uploads/2008/05/search-results-snake-all-content-253x300.png" alt="Search results showing document and images" width="253" height="300" /></a></p>
<p>This returned me document and images about snakes. I then used the drop down box to select my &#8216;Image&#8217; scope, and ran the search again:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/search-results-snake-images-only.png"><img class="alignnone size-medium wp-image-614" title="search-results-snake-images-only" src="http://www.novolocus.com/wp-content/uploads/2008/05/search-results-snake-images-only-300x185.png" alt="Search Results with only Picture items" width="300" height="185" /></a></p>
<p>Hurray! Search results about snakes that only include <em>Picture </em>items in <em>Picture Libraries</em>. Obviously, you may want some sort of more complex Scope Rules to accept pictures from other sources.</p>
<p>Be careful about using the <em>FileExtension </em>managed property though (<a href="https://blogs.pointbridge.com/Blogs/ayyapusetty_raja/Pages/Post.aspx?_ID=5">as suggested here</a>) as the FileExtension property for images comes through in the results XML as <code>ASPX?ID=x</code> . I don&#8217;t get why, but I don&#8217;t seem to be able to get a url such as <code>http://server/documents/myimage.jpg</code> - instead they all come through as <code>http://server/documents/Forms/DispForm.aspx?ID=x </code>. I&#8217;ll investigate that sometime; this doesn&#8217;t seem to be a factor of the XSL though.</p>
<p>Anyway, using Picture Libraries is good if you can get away with it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/23/create-an-image-only-search-scope-in-sharepoint/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Showing Thumbnails in Search</title>
		<link>http://www.novolocus.com/2008/05/22/showing-thumbnails-in-search/</link>
		<comments>http://www.novolocus.com/2008/05/22/showing-thumbnails-in-search/#comments</comments>
		<pubDate>Thu, 22 May 2008 09:20:23 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Pictures]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=591</guid>
		<description><![CDATA[One of my colleagues was asking about building a search which would show thumbnails for images, and whether that was possible. I decided to try a 5 minute prototype, so I took a copy of the results.aspx page in my Search Center, and started hacking&#8230;
I have a Picture library with some images in it (they&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<p>One of my colleagues was asking about building a search which would show thumbnails for images, and whether that was possible. I decided to try a 5 minute prototype, so I took a copy of the <em>results.aspx</em> page in my Search Center, and started hacking&#8230;</p>
<p>I have a Picture library with some images in it (they&#8217;re pinched from Flickr, so sorry for the copyright thing to their respective owners - but they&#8217;re lovely looking test data). You might notice that the images in the pictures Library are already thumbnailed:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/sample-pictures.png"><img class="alignnone size-medium wp-image-602" title="sample-pictures" src="http://www.novolocus.com/wp-content/uploads/2008/05/sample-pictures-300x158.png" alt="Picture Library with Sample pictures" width="300" height="158" /></a></p>
<p>Firstly, I took <a href="http://www.novolocus.com/2008/05/09/how-do-i-get-the-xml-of-my-search-results/">a look at all the xml I was getting back</a> from the search results. (<a href="http://www.novolocus.com/2008/05/13/what-columns-can-i-use-in-my-search-results/">You can add to that</a>.)</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/searchxml.png"><img class="alignnone size-medium wp-image-601" title="searchxml" src="http://www.novolocus.com/wp-content/uploads/2008/05/searchxml-300x129.png" alt="Search results XML" width="300" height="129" /></a></p>
<p>Great! So I&#8217;m getting the thumbnail for the picture through in the search results, and I can also identify what pictures are by the <em>ContentClass.</em> Nice one!</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/normal-page-xsl.png"><img class="alignnone size-medium wp-image-600" title="normal-page-xsl" src="http://www.novolocus.com/wp-content/uploads/2008/05/normal-page-xsl-300x212.png" alt="Normal Results pages XSL" width="300" height="212" /></a></p>
<p>The first thing I noticed on opening up the XSL for the normal results page was that there is a section about showing a thumbnail. Normal search results don&#8217;t show a thumbnail though - so what gives?</p>
<p>Well, there are a few conditions before it&#8217;ll show the thumbnails - the <em>ContentClass </em>of the result (which is okay), the presence of a thumbnail URL, and the variable <em>$IsThisListScope</em> being true. I&#8217;m not sure what the <em>$IsThisListScope</em> variable is for, but I decided to delete it from the condition. As the other parts are met the results should show thumbnails for items which have them (i.e. Pictures).</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/redesigned-query.png"><img class="alignnone size-medium wp-image-599" title="redesigned-query" src="http://www.novolocus.com/wp-content/uploads/2008/05/redesigned-query-300x50.png" alt="Redesigned XSL" width="300" height="50" /></a></p>
<p>And if I perform a search for, say, balloons, then I get some results with thumbnails:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/end-result.png"><img class="alignnone size-medium wp-image-597" title="end-result" src="http://www.novolocus.com/wp-content/uploads/2008/05/end-result-300x129.png" alt="Results page showing Thumbnails." width="300" height="129" /></a></p>
<p>Now, it&#8217;s worth noting, <strong>this page will still show non-pictures results</strong> - just my results didn&#8217;t have any. The next step would be to <a href="http://www.novolocus.com/2008/05/23/create-an-image-only-search-scope-in-sharepoint/">create a scope to only include images</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/22/showing-thumbnails-in-search/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The curious incident of the date column in the night-time</title>
		<link>http://www.novolocus.com/2008/05/21/the-curious-incident-of-the-date-column-in-the-night-time/</link>
		<comments>http://www.novolocus.com/2008/05/21/the-curious-incident-of-the-date-column-in-the-night-time/#comments</comments>
		<pubDate>Wed, 21 May 2008 15:41:05 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Admin]]></category>

		<category><![CDATA[Search]]></category>

		<category><![CDATA[Bug]]></category>

		<category><![CDATA[Dates]]></category>

		<category><![CDATA[Timezones]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=582</guid>
		<description><![CDATA[I have been tearing my hair out over a problem with dates and timezones. We have a site column &#8216;Document Date&#8217; that we are using in our search results page. It only holds a date.
Our client noticed that some dates appeared on the search results page as a day earlier than the value in the [...]]]></description>
			<content:encoded><![CDATA[<p>I have been tearing my hair out over a problem with dates and timezones. We have a site column &#8216;Document Date&#8217; that we are using in our search results page. It only holds a date.</p>
<p>Our client noticed that some dates appeared on the search results page as a day earlier than the value in the lists themselves. For example, the list would show a document date of the 8th of May, but the search results would show the 7th of May. Curious, and the start of a bit of a detective story&#8230; <span id="more-582"></span></p>
<p>Tracking through the erroneous dates it became clear that these incorrect dates only occurred during British Summer Time (BST). For 2008, the change to BST happened in the last weekend of March (30-31st). The list view and search results for doucments with dates spanning that time show&#8230;</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-1.png"><img class="alignnone size-medium wp-image-583" title="ListView" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-1-300x109.png" alt="List View of Dates around the Summer-time Boundary" width="300" height="109" /></a> <a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-2.png"><img class="alignnone size-medium wp-image-584" title="Search View" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-2-300x243.png" alt="Search View of documents with dates around the summer-time boundary" width="178" height="144" /></a></p>
<p>This was puzzling, so I took a look inside SQL server to see what was being stored there. You shouldn&#8217;t ever work with the database directly - and shouldn&#8217;t need to - but I figured there was no harm in looking:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-3.png"><img class="alignnone size-medium wp-image-585" title="SQL View" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-3-300x80.png" alt="SQL Server view of documents with dates near the summer-time boundary" width="300" height="80" /></a></p>
<p>This is correct. SharePoint actually holds dates as DateTime columns, with the time portion set to zero hundred hours (0:00:00). During the summer time, the UK is on GMT+1, whereas SharePoint always just uses UTC (which for all practical purposes in SharePoint is the same as GMT). Thus, to correct for summer time, our date ( 2008-05-08 0:00:00 ) gets clocked back an hour to UTC time ( 2008-05-07 23:00 ). You can see this happening for the first day of British Summer Time on the line highlighted in yellow.</p>
<p>To reiterate, this is entirely correct. All times in SharePoint are stored as UTC, and then adjusted to the local time when it comes to presentation. Thus, offices in London, Tokyo and New York all use the same &#8216;clock&#8217; when storing things (the UTC time), but will adjust the displayed time appropriately.</p>
<p>However, looking at our search results, we can see that the date we&#8217;re getting is now wrong, due to this time zone shift. The subtraction of an hour moves us into the day before, so our date is wrong! We really don&#8217;t want this time shift - heck, we don&#8217;t even want the time part, and our customer is entirely within one time-zone.</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-2.png"><img class="alignnone size-medium wp-image-584" title="Search View" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-2-300x243.png" alt="Search View of documents with dates around the summer-time boundary" width="203" height="165" /></a> <a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-4.png"><img class="alignnone size-medium wp-image-586" title="XML View" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-4-300x121.png" alt="XML view of results from the search webservice for document dates around the summer time boundary" width="300" height="121" /></a></p>
<p>Therefore, the problem seems to be that the Shared Service Provider isn&#8217;t using the same timezone for crawling the content as is used by the users.</p>
<p>Now, I would suggest that maybe search doesn&#8217;t adjust the timezone - after all, a single site collection could contain sites from multiple timezones. However, when I tried to replicate the customer&#8217;s problem on my system I found that:</p>
<ul>
<li>Summer-time dates went in as 2300 hours the day before, but&#8230;</li>
<li>&#8230; the document date value shown in the search results was correct!</li>
</ul>
<p>So, it should work okay, but there is something different between my system and theirs. So, what&#8217;s different?</p>
<ul>
<li>I examined the site collection&#8217;s regional settings - these were the same between my system and the customer&#8217;s:<br />
<a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-6.png"><img class="alignnone size-thumbnail wp-image-587" title="Site Collection Regional Settings" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-6-150x107.png" alt="Site Collection Regional Settings" width="150" height="107" /></a></li>
<li>I examined the regional settings of the SSP - these were the same:<br />
<a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-7.png"><img class="alignnone size-thumbnail wp-image-588" title="SSP Regional Setting" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-7-150x102.png" alt="Shared Service Provider Regional Settings" width="150" height="102" /></a></li>
<li>I checked the user&#8217;s regional settings - these were the same:<br />
<a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-5.png"><img class="alignnone size-thumbnail wp-image-589" title="User\'s Regional Settings" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-5-150x103.png" alt="User\'s Regional Settings" width="150" height="103" /></a></li>
</ul>
<p>Next, I checked the server&#8217;s own time settings. Their server was set to GMT, but not adjusting for daylight savings time. I set mine the same, rebooted and reindexed - and started to get the same problem!</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/figure-8.png"><img class="alignnone size-medium wp-image-590" title="Server Timezone Dialog" src="http://www.novolocus.com/wp-content/uploads/2008/05/figure-8-300x252.png" alt="Windows Timezone dialog on the Server" width="300" height="252" /></a></p>
<p>A bit more testing showed that only the changing the &#8216;<em>Automatically adjust clock for daylight saving changes</em>&#8216; and the reboot are actually required. This is pretty interesting as it does mean that the search index and query server must work in UTC time too. I guess that makes sense.</p>
<p>Anyway, if you have this problem, the short answer is <strong>enable adjusting the servers clock for daylight saving, and reboot.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/21/the-curious-incident-of-the-date-column-in-the-night-time/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hit Highlighting in SharePoint Search Document Titles</title>
		<link>http://www.novolocus.com/2008/05/19/hit-highlighting-in-sharepoint-search-document-titles/</link>
		<comments>http://www.novolocus.com/2008/05/19/hit-highlighting-in-sharepoint-search-document-titles/#comments</comments>
		<pubDate>Mon, 19 May 2008 12:24:15 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Bug]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=575</guid>
		<description><![CDATA[I came across an interesting behaviour in a search results page I&#8217;ve been working on. I&#8217;d added some code to do search highlighting on the results of a query. Here&#8217;s an example of the results I got for a search for &#8216;Barnacles&#8217;:

The observant amongst you will notice that the titles all contain the word &#8216;Barnacles&#8217;, [...]]]></description>
			<content:encoded><![CDATA[<p>I came across an interesting behaviour in a search results page I&#8217;ve been working on. I&#8217;d added some code to do search highlighting on the results of a query. Here&#8217;s an example of the results I got for a search for &#8216;Barnacles&#8217;:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/hit-highlighting-titles.png"><img class="alignnone size-medium wp-image-576" title="hit-highlighting-titles" src="http://www.novolocus.com/wp-content/uploads/2008/05/hit-highlighting-titles-300x265.png" alt="Search Results showing Hit Highlighting in the Titles and Description of documents" width="300" height="265" /></a></p>
<p>The observant amongst you will notice that the titles all contain the word &#8216;Barnacles&#8217;, but only some are highlighted - specifically where the word barnacles is not the last word before the dot-extension of the file name. I did some further testing and found that the search does recognise the word &#8216;Barnacles&#8217; in the file name, but the hit highlighting doesn&#8217;t seem to.<span id="more-575"></span></p>
<p>I wondered if this was a fault in the XSL I&#8217;m using, so I looked at that:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/hit-highlighting-xsl.png"><img class="alignnone size-medium wp-image-577" title="hit-highlighting-xsl" src="http://www.novolocus.com/wp-content/uploads/2008/05/hit-highlighting-xsl-300x69.png" alt="XSL for Hit Highlighting in the Title of a document" width="300" height="69" /></a></p>
<p>This code<a href="http://www.novolocus.com/wp-content/uploads/2008/05/xslforhithighlightingintitle.txt"> can be found here</a>.</p>
<p>As you can see, all it does is test to see if there is a <em>hithighlightedproperties/HHTitle</em> element. If so, display that, otherwise use the normal title.</p>
<p>Therefore, I opened up a search and <a href="http://www.novolocus.com/2008/05/09/how-do-i-get-the-xml-of-my-search-results/">looked at the raw XML</a> I got back:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/hit-highlighting-properties.png"><img class="alignnone size-medium wp-image-579" title="hit-highlighting-properties" src="http://www.novolocus.com/wp-content/uploads/2008/05/hit-highlighting-properties-300x151.png" alt="Hit Highlighting properties in the Search Results XML" width="300" height="151" /></a></p>
<p>You can see that in this case it has picked up the terms to be highlighted in the title, and has given it a surrounding <code>&lt;c0&gt;..&lt;/c0&gt;</code> tag. Digging on through this I found that filenames that had the search term immediately before their &#8216;dot-extension&#8217; would not highlight correctly. If there was a space before the dot-extension, though, they would.</p>
<p>Looks like a minor buglet in SharePoint.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/19/hit-highlighting-in-sharepoint-search-document-titles/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hit Highlighting inside Adobe PDFs using SharePoint Search</title>
		<link>http://www.novolocus.com/2008/05/15/hit-highlighting-inside-adobe-pdfs-using-sharepoint-search/</link>
		<comments>http://www.novolocus.com/2008/05/15/hit-highlighting-inside-adobe-pdfs-using-sharepoint-search/#comments</comments>
		<pubDate>Thu, 15 May 2008 11:33:32 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[PDF]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=570</guid>
		<description><![CDATA[So, I&#8217;ve posting about some work I&#8217;ve been doing with SharePoint Search. Now, to pull it all together - I&#8217;ve been trying to do hit highlighting inside Adobe Reader, so if a user clicks on a search result Adobe Reader opens and automatically searches for occurances of the search term. Doing this requires knowing your [...]]]></description>
			<content:encoded><![CDATA[<p>So, I&#8217;ve posting about some work I&#8217;ve been doing with SharePoint Search. Now, to pull it all together - I&#8217;ve been trying to do hit highlighting inside Adobe Reader, so if a user clicks on a search result Adobe Reader opens and automatically searches for occurances of the search term. Doing this requires <a href="http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/">knowing your file extension</a> (so you only process PDFs this way), <a href="http://www.novolocus.com/2008/05/14/using-a-query-string-parameter-in-the-search-results-web-part/">knowing the query string parameter</a> for what is being searched for, and that you can pass parameters into Acrobat Reader. I&#8217;m not going to go too much into that last part, but you can find<a href="http://partners.adobe.com/public/developer/en/acrobat/PDFOpenParameters.pdf"> documentation about this on Adobe&#8217;s website</a> (pdf). <span id="more-570"></span></p>
<p>So, what we want to do is for each search result:</p>
<ul>
<li>see if it is a PDF</li>
<li>if it is, pass the search phrase in the url</li>
</ul>
<p>Um, I guess I&#8217;ll skip to the code:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/xslforpdfhighlighting.png"><img class="alignnone size-medium wp-image-571" title="xslforpdfhighlighting" src="http://www.novolocus.com/wp-content/uploads/2008/05/xslforpdfhighlighting-300x135.png" alt="XSL for PDF Hit Highlighting via URL" width="300" height="135" /></a></p>
<p>You can <a href="http://www.novolocus.com/wp-content/uploads/2008/05/xslforadobereaderhighlighting.txt">get this as a text file here</a>.</p>
<p>So, what does this show? Firstly, you can see that the query string is being passed into our Search Core Results web part, <a href="http://www.novolocus.com/2008/05/14/using-a-query-string-parameter-in-the-search-results-web-part/">as described previously</a>. We&#8217;re also selecting the FileExtension column, also <a href="http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/">as described previously</a>. Our XSL looks to see if the extension is <strong>PDF</strong>, and if so it emits the url to the item plus:</p>
<p><code>#search='<em>query</em>&#8216;</code></p>
<p>These bits are highlighted in yellow. Otherwise, we just output the link. <em>(Note: this page doesn&#8217;t really use a lot of the neat features of your search results XML, like <a href="http://www.novolocus.com/2008/05/19/hit-highlighting-in-sharepoint-search-document-titles/">the hit-highlighted title</a>).</em></p>
<p>So what happens then if a user clicks on this link? I searched for &#8216;Stupid Ferret&#8217; in the example below&#8230;</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/pdfhighlighting.png"><img class="alignnone size-medium wp-image-573" title="pdfhighlighting" src="http://www.novolocus.com/wp-content/uploads/2008/05/pdfhighlighting-300x238.png" alt="PDF Hit Highlighting in Reader via URL" width="300" height="238" /></a></p>
<p>Tada - our search terms are searched for automatically when we open the PDF!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/15/hit-highlighting-inside-adobe-pdfs-using-sharepoint-search/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Using a Query String parameter in the Search Results Web Part</title>
		<link>http://www.novolocus.com/2008/05/14/using-a-query-string-parameter-in-the-search-results-web-part/</link>
		<comments>http://www.novolocus.com/2008/05/14/using-a-query-string-parameter-in-the-search-results-web-part/#comments</comments>
		<pubDate>Wed, 14 May 2008 16:08:47 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Web Parts]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=564</guid>
		<description><![CDATA[Further work on fixing a colleague&#8217;s code. Like some of the posts I&#8217;ve found, he seems to have thought that to get the query string parameter he&#8217;d have to use Javascript - something like this. However, I found myself thinking of the Data View web part - it allows parameters based on the query string. [...]]]></description>
			<content:encoded><![CDATA[<p>Further work on fixing a colleague&#8217;s code. Like some of the posts I&#8217;ve found, he seems to have thought that to get the query string parameter he&#8217;d have to use Javascript - <a href="http://www.novolocus.com/2008/03/05/showing-query-string-parameters-in-a-page-in-sharepoint/">something like this</a>. However, I found myself thinking of the Data View web part - it allows parameters based on the query string. Most people know about that. What I found, and what I think some folks don&#8217;t realise, is that the Search Core Results Web Part allows you to have query string parameters too&#8230;<span id="more-564"></span></p>
<p>Don&#8217;t believe me? Open SharePoint Designer, and go to the properties of the Search Core Results Web Part:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/web-part-properties-in-spd.png"><img class="alignnone size-medium wp-image-565" title="web-part-properties-in-spd" src="http://www.novolocus.com/wp-content/uploads/2008/05/web-part-properties-in-spd-300x85.png" alt="Search Web Part Properties in SharePoint Designer" width="300" height="85" /></a></p>
<p>Look - it has parameters:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/parameters-dialog-in-spd.png"><img class="alignnone size-medium wp-image-566" title="parameters-dialog-in-spd" src="http://www.novolocus.com/wp-content/uploads/2008/05/parameters-dialog-in-spd-300x201.png" alt="Parameters Dialog in SharePoint Designer" width="300" height="201" /></a></p>
<p>And you can see these in the code - in just the same structure as the Dataview WebPart:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/the-relevant-bits-of-the-code.png"><img class="alignnone size-medium wp-image-567" title="the-relevant-bits-of-the-code" src="http://www.novolocus.com/wp-content/uploads/2008/05/the-relevant-bits-of-the-code-300x166.png" alt="Code supporting parameters in SharePoint Designer." width="300" height="166" /></a></p>
<p>Then you can use the query string value (which I&#8217;ve called  <em>query</em>) like so:</p>
<p><code>&lt;xsl:value-of select="&amp;query" /&gt;</code></p>
<p>And I&#8217;ll explain why I&#8217;ve been going through all this in my next post&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/14/using-a-query-string-parameter-in-the-search-results-web-part/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What columns can I use in my Search Results?</title>
		<link>http://www.novolocus.com/2008/05/13/what-columns-can-i-use-in-my-search-results/</link>
		<comments>http://www.novolocus.com/2008/05/13/what-columns-can-i-use-in-my-search-results/#comments</comments>
		<pubDate>Tue, 13 May 2008 13:09:57 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Lists]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=556</guid>
		<description><![CDATA[In a previous post I described adding the FileExtension column to the XML you get back from a SharePoint search, so that you can use it in your results page. This raises the question - what columns are available for use in the Selected Columns setting on the Core Search Web Part?
Well, these columns are [...]]]></description>
			<content:encoded><![CDATA[<p>In a previous post I described <a href="http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/">adding the FileExtension column to the XML you get back from a SharePoint search</a>, so that you can use it in your results page. This raises the question - what columns are available for use in the Selected Columns setting on the Core Search Web Part?</p>
<p>Well, these columns are <a href="http://technet.microsoft.com/en-us/library/cc262933.aspx">Managed Properties</a>, and they&#8217;re configured on the Shared Service Provider (SSP)&#8230;<span id="more-556"></span></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/search-settings-page.png"><img class="alignnone size-medium wp-image-557" title="search-settings-page" src="http://www.novolocus.com/wp-content/uploads/2008/05/search-settings-page-300x176.png" alt="The Search Setting Page" width="300" height="176" /></a></p>
<p>And the Managed Properties page shows a large list of the properties available:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/managed-properties-page.png"><img class="alignnone size-medium wp-image-558" title="managed-properties-page" src="http://www.novolocus.com/wp-content/uploads/2008/05/managed-properties-page-300x246.png" alt="The Managed Properties Page" width="300" height="246" /></a></p>
<p>So, what is a managed property? Well, the page describes it pretty well. The search crawler gathers a bunch of <em>crawled properties.</em> Users search against the <em>managed properties</em>, and these are a way of mapping the crawled properties to the properties that people can search on. That&#8217;s what that page above is for; defining the mapping.</p>
<p>So where do the Crawled Properties come from? Well, they&#8217;re created by the crawler - and can be based upon metadata you&#8217;ve created in SharePoint, specifically from Site Columns. For example, I&#8217;ve set up a Site Column called <em>Animal Name</em>, which is just text, and added it to a document content type which I&#8217;ve used:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/document-library-with-column-animal-name.png"><img class="alignnone size-medium wp-image-559" title="document-library-with-column-animal-name" src="http://www.novolocus.com/wp-content/uploads/2008/05/document-library-with-column-animal-name-300x99.png" alt="Document Library with \'Animal Name\' site column" width="300" height="99" /></a></p>
<p>After a full crawl, I went and created a new Managed Property:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/new-managed-property.png"><img class="alignnone size-medium wp-image-560" title="new-managed-property" src="http://www.novolocus.com/wp-content/uploads/2008/05/new-managed-property-300x246.png" alt="New Managed Property Page" width="300" height="246" /></a></p>
<p>And I could now select my new <em>crawled property</em>:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/adding-a-crawl-property.png"><img class="alignnone size-medium wp-image-561" title="adding-a-crawl-property" src="http://www.novolocus.com/wp-content/uploads/2008/05/adding-a-crawl-property-300x267.png" alt="Crawled Properties dialog show the Animal Name property" width="300" height="267" /></a></p>
<p>And so we&#8217;ve created a new property:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/saved-new-managed-property.png"><img class="alignnone size-medium wp-image-562" title="saved-new-managed-property" src="http://www.novolocus.com/wp-content/uploads/2008/05/saved-new-managed-property-300x143.png" alt="Managed Property Page showing our new property" width="300" height="143" /></a></p>
<p>I ran a full crawl again, and now I could go and add my &#8216;AnimalName&#8217; property as a column into the Search Core Results Web part (as I did with <a href="http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/"><em>FileExtension </em></a>previously), and now I can get it in my search results!</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/result-with-new-property.png"><img class="alignnone size-medium wp-image-563" title="result-with-new-property" src="http://www.novolocus.com/wp-content/uploads/2008/05/result-with-new-property-300x164.png" alt="Search Results Page showing the new Managed Property" width="300" height="164" /></a></p>
<p><strong>Please note though</strong> - you will need to have the content with the new Site Column crawled <strong>twice </strong>- once to make it available as a crawled property, and then after you&#8217;ve created your Managed property you have to crawl again to actually populate that Managed Property.</p>
<p><strong>Edit:</strong> Damn, having just written this, <a href="http://www.jjfblog.com/2007/01/searching-custom-column-values-in-moss.html">I found a better description from Jonathon Frost</a>. It&#8217;s well worth a read too.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/13/what-columns-can-i-use-in-my-search-results/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How do I get the File Extension in my Search Results?</title>
		<link>http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/</link>
		<comments>http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/#comments</comments>
		<pubDate>Mon, 12 May 2008 12:29:31 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Branding]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=550</guid>
		<description><![CDATA[Following on from my previous post, I&#8217;ve been looking some more at the code that one of my colleagues has created for styling up some search results. In it he needs the file extension for the item resulting, and he does this by, um, assuming that it&#8217;s the last 3 letters of the items URL. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.novolocus.com/2008/05/09/how-do-i-get-the-xml-of-my-search-results/">Following on from my previous post</a>, I&#8217;ve been looking some more at the code that one of my colleagues has created for styling up some search results. In it he needs the file extension for the item resulting, and he does this by, um, assuming that it&#8217;s the last 3 letters of the items URL. Yes, I am not amused. For example, if you look at the results from my last post&#8230;<span id="more-550"></span></p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/5-the-result.png"><img class="alignnone size-medium wp-image-549" title="5-the-result" src="http://www.novolocus.com/wp-content/uploads/2008/05/5-the-result-300x262.png" alt="The Search Results page showing XML" width="300" height="262" /></a></p>
<p>&#8230;you may notice that the final 3 letters are <em>ocx</em> - because it&#8217;s a .DOCX file. Worse, these can be of different cases, and <em>that</em> is what has me looking at all of this in the first place.</p>
<p>Well, I simply couldn&#8217;t believe that file extension wasn&#8217;t available in the XML - but from what I&#8217;d seen so far, it wasn&#8217;t. However, looking at the Search Core Results web part, I noticed it has a &#8216;Selected columns&#8217; setting in the &#8220;Results Query Options&#8221; section:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/1-selected-columns-setting.png"><img class="alignnone size-medium wp-image-551" title="1-selected-columns-setting" src="http://www.novolocus.com/wp-content/uploads/2008/05/1-selected-columns-setting-185x300.png" alt="The Selected Columns Setting in a Web Part Toolbox view" width="185" height="300" /></a></p>
<p>And opening this for editing shows a bunch of columns being selected:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/11-selected-columns-dialog.png"><img class="alignnone size-medium wp-image-552" title="11-selected-columns-dialog" src="http://www.novolocus.com/wp-content/uploads/2008/05/11-selected-columns-dialog-300x252.png" alt="Selected  columns dialog window" width="300" height="252" /></a></p>
<p>These seemed to match my results fairly closely. Is there a FileExtension column?</p>
<p>Well, yes, as it turns out. <a href="http://www.codeplex.com/sctxsl">I found this in the SharePoint Search XSL Samples on Codeplex</a>. The installation instructions for the File Extension Pivot sample mention adding a column&#8230;</p>
<p><code>&lt;Column Name="FileExtension" /&gt;</code></p>
<p>So I added this to my selected columns:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/2-added-file-extension-column.png"><img class="alignnone size-medium wp-image-553" title="2-added-file-extension-column" src="http://www.novolocus.com/wp-content/uploads/2008/05/2-added-file-extension-column-300x250.png" alt="Selected Columns Dialog with File Extension Added" width="300" height="250" /></a></p>
<p>And the results now showed:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/3-result-including-file-extension.png"><img class="alignnone size-medium wp-image-554" title="3-result-including-file-extension" src="http://www.novolocus.com/wp-content/uploads/2008/05/3-result-including-file-extension-300x165.png" alt="Search XML from Query, with File Extension information." width="300" height="165" /></a></p>
<p>Great! And the values are consistently capitalised! Hurray! Now I can use it in my styling&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/12/how-do-i-get-the-file-extension-in-my-search-results/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How do I get the XML of my search results?</title>
		<link>http://www.novolocus.com/2008/05/09/how-do-i-get-the-xml-of-my-search-results/</link>
		<comments>http://www.novolocus.com/2008/05/09/how-do-i-get-the-xml-of-my-search-results/#comments</comments>
		<pubDate>Fri, 09 May 2008 11:28:53 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<category><![CDATA[Web Parts]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=544</guid>
		<description><![CDATA[So I&#8217;ve just started customising SharePoint Search results for the first time. It&#8217;s an area that I&#8217;ve never really touched before, to be honest - I&#8217;ve set up the crawling, and that&#8217;s the limit. Now I find myself reverse engineering a colleagues code in order to fix it.
Well, from what I can fathom, SharePoint search [...]]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;ve just started customising SharePoint Search results for the first time. It&#8217;s an area that I&#8217;ve never really touched before, to be honest - I&#8217;ve set up the crawling, and that&#8217;s the limit. Now I find myself reverse engineering a colleagues code in order to fix it.</p>
<p>Well, from what I can fathom, SharePoint search results actually come from the Search.asmx webservice in the _vti_bin of your site. The results are actually returned as XML, and in the web parts (not sure which ones, but certainly the Search Core Results web part) you then render this XML to HTML via XSLT. (If that means nothing to you, I&#8217;m afraid you&#8217;ll have to look it up. That concept is a <em>whole</em> can of worms. Maybe even a crate of worms. Anyway&#8230;)</p>
<p>An obvious question is, what does that source XML look like. Well, it&#8217;s whatever you get back from the web service, and there are various ways of find that, but I found a neat little solution on a post from <a href="http://zimmergren.net/archive/2008/03/15/moss-2007-customize-the-search-result-using-xslt-part-3-customize-using-sharepoint-designer-2007.aspx">Tobias Zimmergren&#8217;s blog </a>(in fact, it&#8217;s an interesting looking series for a search rookie like myself - I think I&#8217;ll have to read that). I&#8217;ll blatantly plagiarise that in a bit. Basically, his idea was to define some XSLT that just emits the XML unaltered, and then look at what you&#8217;re getting back from the search service on the search results page.</p>
<p>So, to test, I copied the normal search results page (mine was in a search center) to give myself somewhere isolated to test in. I went to it - and it was all empty. Not surprising - there were no web parts. I added a Search Core Results web part:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/1-add-search-core-results-web-part.png"><img class="alignnone size-medium wp-image-545" title="1-add-search-core-results-web-part" src="http://www.novolocus.com/wp-content/uploads/2008/05/1-add-search-core-results-web-part-300x141.png" alt="Adding a Search Core Results Web Part" width="300" height="141" /></a></p>
<p>You might want to add a Search Box web part to give yourself somewhere to enter your search terms, though I&#8217;m a bit of a geek and was typing directly into the URL of the browser. For example,<br />
<code>?k=barnacles</code><br />
will search for documents about, um, barnacles.</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/2-search-box-and-core-results-web-parts.png"><img class="alignnone size-medium wp-image-546" title="2-search-box-and-core-results-web-parts" src="http://www.novolocus.com/wp-content/uploads/2008/05/2-search-box-and-core-results-web-parts-300x215.png" alt="Results Page with Search Box and Core Results Web parts" width="300" height="215" /></a></p>
<p>Fine. Now we need to apply the XSLT. Edit the Search Core Results Web Part:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/3-edit-core-search-results-web-part.png"><img class="alignnone size-medium wp-image-547" title="3-edit-core-search-results-web-part" src="http://www.novolocus.com/wp-content/uploads/2008/05/3-edit-core-search-results-web-part-146x300.png" alt="Editing the Web Part" width="146" height="300" /></a></p>
<p>and edit the XSL:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/4-edit-the-xslt.png"><img class="alignnone size-medium wp-image-548" title="4-edit-the-xslt" src="http://www.novolocus.com/wp-content/uploads/2008/05/4-edit-the-xslt-300x211.png" alt="The XSL Editor" width="300" height="211" /></a></p>
<p>Blatant Plagiarism alert - Tobias&#8217; XSL was just:</p>
<p><code>&lt;xsl:stylesheet version="1.0" xmlns:xsl="<a href="http://www.w3.org/1999/XSL/Transform">http://www.w3.org/1999/XSL/Transform&#8221;</a>&gt;<br />
&lt;xsl:output method=&#8221;xml&#8221; version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243; indent=&#8221;yes&#8221;/&gt;<br />
&lt;xsl:template match=&#8221;/&#8221;&gt;<br />
&lt;xmp&gt;&lt;xsl:copy-of select=&#8221;*&#8221;/&gt;&lt;/xmp&gt;<br />
&lt;/xsl:template&gt;<br />
&lt;/xsl:stylesheet&gt;</code></p>
<p><strong>Note: Don&#8217;t just copy the above text - <a href="http://www.novolocus.com/wp-content/uploads/2008/05/xmlresults.txt" target="_blank">use this link</a>. </strong>Wordpress has changed the speechmarks in the code above, and it won&#8217;t work.</p>
<p>Apply it and <em>voila</em> - XML:</p>
<p><a href="http://www.novolocus.com/wp-content/uploads/2008/05/5-the-result.png"><img class="alignnone size-medium wp-image-549" title="5-the-result" src="http://www.novolocus.com/wp-content/uploads/2008/05/5-the-result-300x262.png" alt="The Search Results page showing XML" width="300" height="262" /></a></p>
<p>Now I can get on with Styling it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/05/09/how-do-i-get-the-xml-of-my-search-results/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Changing the SmallSearchInputBox delegate control</title>
		<link>http://www.novolocus.com/2008/01/10/changing-the-smallsearchinputbox-delegate-control/</link>
		<comments>http://www.novolocus.com/2008/01/10/changing-the-smallsearchinputbox-delegate-control/#comments</comments>
		<pubDate>Thu, 10 Jan 2008 09:31:50 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/2008/01/10/changing-the-smallsearchinputbox-delegate-control/</guid>
		<description><![CDATA[A colleague of mine was wanting to make some changes to the SmallSearchInputBox delegate control in SharePoint 2007. That&#8217;s the control that appears on most pages, looking like:

This control is a &#8216;Delegate control&#8217; - that is, you can create features to override the currently used control. What my colleague wanted to do was not display [...]]]></description>
			<content:encoded><![CDATA[<p>A colleague of mine was wanting to make some changes to the SmallSearchInputBox delegate control in SharePoint 2007. That&#8217;s the control that appears on most pages, looking like:</p>
<p style="text-align: center"><img src="http://www.novolocus.com/wp-content/uploads/2008/01/smallsearchinputbox.png" alt="SmallSearchInputBox" /></p>
<p>This control is a &#8216;Delegate control&#8217; - that is, you can create features to override the currently used control. What my colleague wanted to do was not display the &#8216;Scope&#8217; drop down list, the Advanced Search link, and to include prompt text (something like &#8216;Enter Search&#8230;&#8217;). A quick dig into the FEATURES folder in 12 Hive showed that the control had a number of properties.</p>
<p><em>(The features that this information applies to are the OSearchBasicFeature and OSearchEnhancedFeature. Both contain files called ‘SearchArea.xml’, and that contains the code below. I found the folders with this in:</em></p>
<p><em> %12 Hive%\Template\Features\OSearchBasicFeature</em></p>
<p><em>%12 Hive%\Template\Features\OSearchEnhancedFeature )</em></p>
<p><code>&lt;?xml version="1.0" encoding="utf-8" ?&gt;<br />
&lt;Elements xmlns="http://schemas.microsoft.com/sharepoint/"&gt;<br />
&lt;Control<br />
Id="SmallSearchInputBox"<br />
Sequence="25"<br />
ControlClass="Microsoft.SharePoint.Portal.WebControls.SearchBoxEx" ControlAssembly="Microsoft.SharePoint.Portal, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"&gt;<br />
&lt;Property Name="GoImageUrl"&gt;/_layouts/images/gosearch.gif&lt;/Property&gt;<br />
&lt;Property Name="GoImageUrlRTL"&gt;/_layouts/images/goRTL.gif&lt;/Property&gt;<br />
&lt;Property Name="GoImageActiveUrl"&gt;/_layouts/images/gosearch.gif&lt;/Property&gt;<br />
&lt;Property Name="GoImageActiveUrlRTL"&gt;/_layouts/images/goRTL.gif&lt;/Property&gt;<br />
&lt;Property Name="UseSiteDefaults"&gt;true&lt;/Property&gt;<br />
&lt;Property Name="FrameType"&gt;None&lt;/Property&gt;<br />
&lt;Property Name="ShowAdvancedSearch"&gt;true&lt;/Property&gt;<br />
&lt;/Control&gt;<br />
&lt;/Elements&gt;</code></p>
<p>This shows a property <code>ShowAdvancedSearch</code> which sounded pretty promising for turning off the Advanced Search link. We decided to see what other properties were available, and found <a href="http://clintcherry.spaces.live.com/blog/cns!AEC0DCBC460E45B9!421.entry">a good article by Clint Cherry </a>about the SmallSearchInputBox control, and the <a href="http://msdn2.microsoft.com/en-us/library/microsoft.sharepoint.portal.webcontrols.searchboxex_members.aspx">MSDN docs</a>. The Property tags in the XML for the delegate control set the properties of the web control class - e.g. GoImageUrl matches the GoImageUrl property on the class. Much to our pleasure, we found the <code>QueryPromptString</code> displays text in the search control which vanishes when it receives focus, and the <code>DropDownMode</code> property allows us to turn off the scope dropdown list. Hurrah!</p>
<p>For the values that you can set the drop down mode to, <a href="http://msdn2.microsoft.com/en-us/library/microsoft.sharepoint.portal.webcontrols.dropdownmodes.aspx">see the MSDN docs</a> again</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2008/01/10/changing-the-smallsearchinputbox-delegate-control/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Installing WSS Search - Account names must be of the format [Domain\User]</title>
		<link>http://www.novolocus.com/2007/11/22/installing-wss-search-account-names-must-be-of-the-format-domainuser/</link>
		<comments>http://www.novolocus.com/2007/11/22/installing-wss-search-account-names-must-be-of-the-format-domainuser/#comments</comments>
		<pubDate>Thu, 22 Nov 2007 12:18:06 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/2007/11/22/installing-wss-search-account-names-must-be-of-the-format-domainuser/</guid>
		<description><![CDATA[Just [user] doesn&#8217;t cut it!
I was installing a MOSS system yesterday, and starting the WSS search service was causing me problems. I kept getting errors of the form
 SearchServiceInstance.Provision (server &#8216;VM-AWB-MOSS01&#8242;) failed. Setting back to previous status &#8216;Disabled&#8217;.
Well, a google trawl turned up a fairly obvious solution - which just didn&#8217;t occur to me. Make [...]]]></description>
			<content:encoded><![CDATA[<p>Just [user] doesn&#8217;t cut it!</p>
<p>I was installing a MOSS system yesterday, and starting the WSS search service was causing me problems. I kept getting errors of the form</p>
<blockquote><p> SearchServiceInstance.Provision (server &#8216;VM-AWB-MOSS01&#8242;) failed. Setting back to previous status &#8216;Disabled&#8217;.</p></blockquote>
<p>Well, a google trawl turned up a <a href="http://sharepointbergen.blogspot.com/2007/03/problems-installing-windows-sharepoint.html">fairly obvious solution</a> - which just didn&#8217;t occur to me. Make sure the account name includes the domain!</p>
<p>Thanks Bergen!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2007/11/22/installing-wss-search-account-names-must-be-of-the-format-domainuser/feed/</wfw:commentRss>
		</item>
		<item>
		<title>If search isn&#8217;t indexing your SharePoint sites, try fully qualifying your domain name.</title>
		<link>http://www.novolocus.com/2007/11/08/if-search-isnt-indexing-your-sharepoint-sites-try-fully-qualifying-your-domain-name/</link>
		<comments>http://www.novolocus.com/2007/11/08/if-search-isnt-indexing-your-sharepoint-sites-try-fully-qualifying-your-domain-name/#comments</comments>
		<pubDate>Thu, 08 Nov 2007 13:11:22 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=6</guid>
		<description><![CDATA[I don&#8217;t know why this wasn&#8217;t working, but search on my SharePoint VM wasn&#8217;t indexing the collaboration portal that was our top level site collection - indeed, it wasn&#8217;t even crawling it. So I changed the start path to the fully qualified path (e.g. http://vm-moss07/ to http://vm-moss07.dev.deltascheme.com/), and now at least a few pages were [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t know why this wasn&#8217;t working, but search on my SharePoint VM wasn&#8217;t indexing the collaboration portal that was our top level site collection - indeed, it wasn&#8217;t even crawling it. So I changed the start path to the fully qualified path (e.g. <em>http://vm-moss07/</em> to <em>http://vm-moss07.dev.deltascheme.com/</em>), and now at least a few pages were crawled - those being, unfortunately, the pages that redirected to the &#8216;not fully qualified&#8217; path. So I put both into the content source - and it crawled the whole site collection correctly.</p>
<p>I&#8217;m really not sure why, to be honest. I haven&#8217;t checked the alternative access mappings, but I don&#8217;t see why the search didn&#8217;t work without the fully qualified server name. The crawling of the My Sites and Central Admin site collections worked fine without being fully qualified.</p>
<p>I&#8217;m sure it&#8217;s something simple - any guesses anyone?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2007/11/08/if-search-isnt-indexing-your-sharepoint-sites-try-fully-qualifying-your-domain-name/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
