Brettb.Com
  HOME | ABOUT ME | BIOTECHNOLOGY | ARTICLES | TOOLS | GALLERY | CONTACT
Search: Go
DEVELOPER TOOLS
 ASP Documentation Tool
 .NET Documentation Tool
 PHP Documentation Tool
 SQL Documentation Tool
 VB6 Documentation Tool
 Indexing Service Companion
 The Website Utility

TECHNICAL ARTICLES
 ASP
 ASP.NET
 JavaScript
 Transact SQL
 Software Reviews

PHOTO GALLERIES
 Canon EOS 300D Samples
 Red Arrows 2004
 Living Coasts
 Akihabara Maids!
 Web Page Backgrounds
 More Galleries...

TRAVEL LOG
 2008: Tokyo
 2007: Tokyo
 2006: Hong Kong
 2005: New York City

NEW STUFF
 ASP Spell Check
 Code Documentors
 The Website Utility
 Search Engine Optimisation
 Build an ASP Search Engine
 My Tropical Fishtank
 Text WorkBench
 Other New Stuff...

POPULAR STUFF
 Regular Expressions
 ASP Documentation Tool
 Index Server & ASP
 JavaScript Ad Rotator

LINKS
 Business Website
 ASPAlliance Articles
 Software Documentation Portal

Microsoft Certified Professional

Home > Articles

Using the Site Server Search facility to search custom Meta Tags

An interesting feature of the Site Server 3.0 Search facility is the ability to search custom Meta Tags. A common use of this facility is to enable users of a web site to narrow down their searches to a particular part of a website.

Restricting searches

In a well organised site, you could restrict searches by only allowing searches of specific file paths. For example, the following will restrict searches to the financial section of the www.foo.com website:

Util.AddScopeToQuery Q, "http://www.foo.com/financial/", "deep"

However, if your content is distributed in many different folders (or even on different servers) then a file path restriction is not appropriate.

A possible alternative is to tag certain pages with specific Meta Tags. The Tag Tool that is supplied with Site Server allows this to be done for entire websites at a time. Obviously, if you use Perl or some other type of scripting to generate static web pages from databases then adding Meta Tags is very straightforward.

Searching custom Meta Tags

The first stage is to add the custom Meta Tags to your web page. So if you want to tag the Customer Support and Financial Services pages respectively, add the following HTML to each:

<META NAME="Department" CONTENT="Customer Support">

<META NAME="Department" CONTENT="Financial Services">

Having done this, you will have to rebuild the Search Catalog for that website.

The ASP code that will create a basic search results page that will allow searching of these pages is below. Be sure to change the value of the Q.Catalog to the name of your Search Catalog!

<%
set Util = Server.CreateObject("MSSearch.Util")
set Q = Server.CreateObject("MSSearch.Query")

Q.Catalog = "
catalog_name"
Q.SortBy = "
rank[d]"
Q.MaxRecords = 300
Q.Columns = "
DocTitle, DocAddress, size, write, rank"
Q.Query = "
@Meta_Department Financial Services"

Set RS = Q.CreateRecordSet("sequential")

Do while not RS.EOF
Response.Write "<A HREF=" & Chr(34) & RS("DocAddress") & Chr(34) & ">" & RS("DocTitle") & "</A><BR>"
RS.MoveNext
Loop

Set Util = nothing
Set Q = nothing
%>

Note that the search query specifies that the Department Meta Tag should be searched for instances of “Financial Services”. If you want to restrict searching to the Customer Support pages instead of the Financial Services pages, then modify the code appropriately:

Q.Query = "@Meta_Department Customer Support"

You could also search other custom Meta Tags in a similar way by adding the Meta_ prefix to them. So if an online store wanted to search the “ProductArea” Meta Tag, then you could use a Query such as:

Q.Query = "@Meta_ProductArea Toys"

Retrieving contents of Meta Tags

If you want to retrieve the contents of Meta Tags and display them with the search results, then you need to use the following procedure, otherwise you may see an error similar to this:

ADODB.Fields error '800a0cc1'
ADO could not find the object in the collection corresponding to the name or ordinal reference requested by the application.
/finance/search/default.asp, line 164

First, add Meta_Department to the Q.Columns line of the ASP code:

Q.Columns = "DocTitle, DocAddress, size, write, rank, Meta_Department"

Once you have done this, in the Site Server Administrator Microsoft Management Console (MMC), go to Console Root > Search > your_machine_name > Catalog Build Server > your_catalog_name > Schema. In the Catalog Schema part of the MMC, click on the Add button. When the Add Schema Column part of the MMC appears, add the following:

  • Property name = Meta_Department
  • Property set = click on Standard property set, and change drop-down list to HTML Meta
  • Property ID = department
  • Type = change the drop-down list to String
  • Index = Yes
  • Retrieve = Yes

When you have clicked on the Submit button, you are given the choice of changing the Master Schema (this changes all the Catalogs on that Search server) or creating a Custom Schema (this only changes the current Catalog). Having changed the Schema, you will then have to rebuild the Search Catalog.

If you subsequently modify the ASP code to the following, each search result will then display the contents of the Department Meta Tag:

Response.Write "<A HREF=" & Chr(34) & RS("DocAddress") & Chr(34) & ">" & RS("DocTitle") & "</A> (" & RS("Meta_Department")& ") <BR>"

Further reading

This is a brief introduction to the use of custom Meta Tags with Site Server. On well managed sites the use of such searches could make it a lot easier for your web site users to quickly find the content they are looking for.

You might also like to invest in one of these featured books:

Beginning Site Server 3.0  Professional Site Server 3.0

Useful Development Tools

ASP Documentation Tool™
Automatically creates developer documentation for ASP 2.0 and 3.0 web applications written in VBScript and JScript. Documentation for Microsoft Access, SQL Server 7/2000 databases and Visual Basic 6.0 components associated with the web application can also be incorporated into the reports. Documentation is created in HTML, HTML Help and plain text formats.
   View Sample Output (HTML Help format) View Sample Output (HTML Help format).
   View Sample Output (HTML Format) View Sample Output (HTML Format).
   Download Trial Version Download Trial Version (5.2Mb ZIP file).

.NET Documentation Tool
Automatically creates technical documentation for .NET Framework Windows and ASP.NET applications written in C# or VB.NET and SQL Server 7/2000/2005 or Microsoft Access databases associated with the application. Documentation is created in HTML, HTML Help and plain text formats.
   View Sample Output (HTML Help format) View Sample Output (HTML Help format).
   View Sample Output (HTML Format) View Sample Output (HTML Format).
   Download Trial Version Download Trial Version (5Mb ZIP file).

SQL Documentation Tool
The SQL Documentation Tool creates technical documentation for Microsoft SQL Server 7.0 and 2000 databases. Technical documentation is created in HTML and HTML Help formats. The HTML Help format documentation is fully searchable and cross referenced. The SQL Documentation Tool documents SQL Server Tables, Views, Stored Procedures, Triggers and Table Relationships.
   View Sample Output (HTML Help format) View Sample Output (HTML Help format).
   View Sample Output (HTML Format) View Sample Output (HTML Format).
   Download Trial Version Download Trial Version (10.3Mb ZIP file).

VB Documentation Tool
The VB Documentation Tool creates technical documentation for Microsoft Visual Basic 6.0 projects. Technical documentation is created in HTML and HTML Help formats. The HTML Help format documentation is fully searchable and cross referenced.
   View Sample Output (HTML Help format) View Sample Output (HTML Help format).
   View Sample Output (HTML Format) View Sample Output (HTML Format).
   Download Trial Version Download Trial Version (1Mb ZIP file).

Indexing Service Companion
The Indexing Service Companion is a Windows application that extends the functionality of the Microsoft Windows Indexing Service so that it is able to index content from remote websites and also from ODBC databases. As such it can be used as a low cost alternative to Sharepoint Portal Search Services.
   Try Sample Search Facility Try Sample Search Facility.
   Download Trial Version Download Trial Version (1.7Mb ZIP file).

The Website Utility
The Website Utility examines websites for errors and areas that need to be optimised for search engines by using a built in web crawling engine. Errors checked for include broken or moved hyperlinks, missing page titles and missing meta tags. It also generates HTML for use in creating website site maps (table of contents pages - like this one), and is able to create both client-side JavaScript Search Engines and server-side ASP Search Engines for a website.
   View Sample Output (HTML Format) View Sample Output (HTML Format).
   Download Trial Version Download Trial Version (3Mb ZIP file).

PHP Documentation Tool™
Automatically creates developer documentation for PHP web applications. Documentation is created in HTML, HTML Help and plain text formats.
   View Sample Output (HTML Help format) View Sample Output (HTML Help format).
   View Sample Output (HTML Format) View Sample Output (HTML Format).
   Download Trial Version Download Trial Version (1.0Mb ZIP file).
ASP Documentation Tool - Free Trial Available!

Documentation tools to automate the documentation of SQL Server databases and ASP, C#, VB.NET and VB 6.0 application source code

  Site Map

All content is © 1995 - 2008 Brett Burridge