XPS Full Text Search in MOSS 2007 and Windows Server 2008

5. April 2010

Late in 2007 the XML Paper Specification (XPS) was published.  The means to create, view and print XPS files are integrated in you Windows OS, dare I say it is as ubiquitous as PDF and you may not even know it.  If you don’t have the XPS features installed you can get it free from Microsoft or one of the many 3rd party vendors deploying solutions for XPS.

Get an XPS Viewer  XPS Showcase

What is an XPS document?

The XML Paper Specification itself is platform independent, openly published, and available royalty-free and Microsoft has integrated XPS-based technologies into Microsoft Windows Vista operating system and the 2007 Microsoft Office system. Microsoft brings additional document value to its customers, partners, and the computing industry through the XPS-based technologies.

An XPS document is any file that is saved to the XML Paper Specification, or .xps, file format. You can create XPS documents (.xps files) by using any program that you can print from in Windows; however, you can view XPS documents only by using the XPS Viewer, which is included in this version of Windows.

An XML Paper Specification (XPS) document is a document format you can use to view, save, share, digitally sign, and protect your document’s content. An XPS document is like to an electronic sheet of paper: You can’t change the content on a piece of paper after you print it, and you can’t edit the contents of an XPS document after you save it in the XPS format. In this version of Windows, you can create an XPS document in any program you can print from, but you can only view, sign, and set permissions for XPS documents in the XPS Viewer.

XPS FTS in MOSS 2007

The XPS format is great for SharePoint.  Not only for view-ability but for it’s Full Text Search-ability (FTS).  The following is a step-by-step guide to enabling and configuring XPS IFilter support in Windows Server 2008 and MOSS 2007.  Note: I have a single server running all my MOSS farm services.  If I had a distributed farm with my MOSS Index service running on a dedicated server I would enable and configure the XPS feature on the dedicated Index server.

Step-By-Step

1. On the MOSS Index server launch the Server Manager and select Add Features, select the XPS Viewer and click Next.

image

2. Click Install.

image

3. Click Close.

image

4. From the SharePoint 3.0 Central Administration select the Share Service Provider/Search Settings and under Crawling select File types and then select New File Type.

image

5. Enter xps and click on OK.

image

6. You will see the new file type in the list.

image

7. You can also confirm it has been enabled by reviewing the registry setting for the following key.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0 \Search\Applications\<SITE-GUID>\Gather\Portal_Content\Extensions\ExtensionList

image

8. Next you’ll need to enter the following details in the HKLM hive for the XPS ifilter.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0\Search\Setup\Filters\ .xps]
        Default = (value not set)
        Extension = xps
        FileTypeBucket REG_DWORD = 0x00000001 (1)
        MimeTypes = application/xps

image

9.  In addition, you’ll need to add and set the Class ID for the XPS iFilter in the following HKLM hive location.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0\Search\Setup\ContentIndexCommon\Filters\Extension\.xps]

             Set the "Default" value to the CLSID of XPS IFilter.

             Default REG _SZ = {1E4CEC13-76BD-4ce2-8372-711CB6F10FD1}

image

image

10.  Next, stop and start the Office SharePoint Server Search service.

C:\>net stop osearch
C:\>net start osearch

image

11. Next, run a full or incremental crawl. If you’re interested, keep an eye on the C:\Users\<search-service-account>\AppData\Local\Temp\gthrsvc folder and you’ll see MOSS crawl writing the images to this folder to index.  This of course is why you need a beefy server for Indexing, lot’s of file IO.

image

12.  Once the crawl is complete you can verify the XPS files have been crawled via the Crawl Log’s URL Summary.

image

Searching

When I search for the keyword “galleries” in MOSS Advanced Search I get hits from the result FTS.

image

 image

 


For More Information

XML Paper Specification: Overview

ECMA International XPS Specification and Reference Guide

ECMA International XPS White Paper

Microsoft MSDN XPS Team BLOG

iFilter, MOSS, Search, SharePoint, Crawl, Windows Server 2008, XPS , , , , , ,

Comments

Stef
Stef
7/8/2010 4:21:50 AM #
I tried this with SharePoint2010. No Success. Any idea? Search Result shows xps. But the content isn't searchable.
Instead of the 12hive i used the 14 of SP2010 for the registry entries. Also I tried another CLSID in Step No 11:  {0B8732A6-AF74-498C-A251-9DC86B0538B0} (Found this in some other blogs).

But still, no success with XPS-FullTextSearch on SP2010 Server
7/10/2010 4:44:26 AM #
Stef,

I ran in to the same issue with my upgrade to SP2010.

Apparently, you need to make these changes in the both the 14 and 12 hives in the registry.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0\Search\Setup\ContentIndexCommon\Filters\Extension

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\14.0\Search\Setup\ContentIndexCommon\Filters\Extension

I did so and my hits work now.

Jeff
Stef
Stef
7/12/2010 2:27:40 AM #
Which CLSID did you use? I already added it in the 12 and 14 hives.
7/12/2010 4:21:55 AM #
Stef,

I used {1E4CEC13-76BD-4ce2-8372-711CB6F10FD1}


Jeff

Add comment


(Will show your Gravatar icon)

  Country flag

biuquote
  • Comment
  • Preview
Loading