CFCOLLECTION  
Description

Creates and administers Verity search engine collections.

 
Category

Extensibility tags

 
Syntax
<cfcollection 
   action = "action"
   collection = "collection_name"
   path = "path_to_verity_collection"
   language = "language"
   name = "queryname"
categories = "yes" or "no">
 
See also

cfexecute, cfindex, cfobject, cfreport, cfsearch, cfwddx

 
History

ColdFusion MX 7:

  • Removed reference to external collections.
  • Deprecated the map and repair options of the action attribute. They might not work, and might cause an error, in later releases.
  • Added categories attribute and categorylist action.
  • Added CATEGORIES, SIZE, DOCCOUNT, and LASTMODIFIED to list of variables returned by the list action.
  • Marked as obsolete the MAPPED, ONLINE, and REGISTERED variables returned by the list action.

ColdFusion MX:

  • Changed the requirements for the action attribute: it is now required.
  • Added the action attribute list value. It is the default.
  • Changed the requirements for the action attribute value map: it is not necessary to specify the action attribute value map. (ColdFusion detects collections and creates maps collections as required.)
  • Changed acceptable collection naming: this tag accepts collection names that include spaces.
  • Changed Verity operations behavior: ColdFusion supports Verity operations on Acrobat PDF files.
  • Changed thrown exceptions: this tag can throw the SEARCHENGINE exception.

 
Usage

With this tag you can create, register, and administer a Verity collection that was created by ColdFusion or by a Verity application.

The following table shows the dependence relationships among this tag's attribute values:

   
             
collection

 

Required

Required

Required

Required

Required

Required

path

 

Required

Required

 

 

 

 

language

 

Optional

Optional

 

 

 

 

name

Required

 

 

 

 

 

Required

categories

 

 

 

 

 

 

 

The following examples illustrate the structures returned by the categorylist action:

The list action returns the following information in a result set that contains one row per collection:

   

CATEGORIES

  • yes: the collection has category support enabled.
  • no: the collection does not have category support enabled.

CHARSET

The character set of the collection.

CREATED

The date and time that the collection was created.

DOCCOUNT

The number of documents in this collection.

EXTERNAL

  • yes: the collection is external.
  • no: the collection is not external.
  • Not Found: the collection is registered but is not available in the defined path .

LANGUAGE

The locale setting of the collection.

This information is not available for K2Server collections.

LASTMODIFIED

The date and time that the collection was last changed.

MAPPED

Obsolete

NAME

The name of the collection.

ONLINE

Obsolete

PATH

Absolute path to the collection.

REGISTERED

Obsolete

SIZE

The size of the collection, expressed in kilobytes.

The ColdFusion MX Administrator Verity > Collections page displays the information that is returned when you use the list attribute.

If the Verity Server is not running when the list action is executed, the tag throws an error.

To determine whether a collection exists, use code, such as the following, to execute a query of queries:

<cfcollection action="list" name="myCollections" > 
<cfquery name="qoq" dbtype="query">
select * from myCollections 
where myCollections.name = 'myCollectionName'
</cfquery> 
<cfif qoq.recordcount GT 0>
   <!--- Collection exists --->
   <cfdump var = #qoq#>
</cfif>

To get a result set with values for all the collections that are registered with the Verity server, use code such as the following:

<cfcollection action="list" name="myCollections">
<cfoutput query="myCollections">
   #name#<br>
</cfoutput>

To add content to a collection, use cfindex. To search a collection, use cfsearch.

The language attribute of this tag supports the following options:

Asian Language Pack

Japanese

Korean

Chinese

Traditional Chinese

Multilanguage Language Pack

Unicode

 

 

 

Western European Language Pack

Bokmal

Finnish

Italian

Spanish

Danish

French

Nynorsk

Swedish

Dutch

German

Portuguese

 

Eastern European/Middle Eastern Language Pack

Arabic

Greek

Polish

Turkish

Bulgarian

Hebrew

Russian

 

Czech

Hungarian

Russian2

 

The default location of Verity collections is as follows:

  • Server configuration:
    • Windows: C:\CFusionMX7\verity\collections
    • UNIX system: /opt/coldfusionmx7/verity/collections
  • J2EE configuration: webapp_root/WEB-INF/cfusion/verity/collections
 
Example
<!-------------------------------------------------------------------------
(coll_actn.cfm)
Check for server platform and use its default Verity Collection directory.
If you did not install ColdFusion MX in the default directory, or if you use
the J2EE configuration, or if your webroot is not C:\CFusionMX7\wwwroot, you
might need to change the path in this example. For example, for JRun4 the path
might be C:\JRun4\Verity\Collections\
--------------------------------------------------------------------------->
<cfif Find("Windows", Server.OS.Name)>
   <cfset collPath = "C:\JRun4\Verity\Collections\">
<cfelse>
   <cfset collpath = "/opt/coldfusionmx7/verity/collections/">
</cfif>

<!--------------------------------------------------------------------------
Process form input and do the requested cfcollection operation. 
--------------------------------------------------------------------------->

<cfif IsDefined("form.CollectionName") AND IsDefined("form.CollectionAction")>
   <cfif form.CollectionName is not "">
      <cfswitch expression="#FORM.CollectionAction#">
        <cfcase value="Create">
          <cfcollection action="CREATE" collection="#FORM.CollectionName#"
               path="#collPath#" categories="yes">
          <h3>Collection created.<br>
         Use CFINDEX to populate it.</h3>
        </cfcase>
        <cfcase value="Repair">
          <cfcollection action="REPAIR" collection="#FORM.CollectionName#">
          <h3>Collection repaired.</h3>
        </cfcase>
        <cfcase value="Optimize">
          <cfcollection action="OPTIMIZE" collection="#FORM.CollectionName#">
          <h3>Collection optimized.</h3>
        </cfcase>
        <cfcase value="Delete">
          <cfcollection action="DELETE" collection="#FORM.CollectionName#">
         <h3>Collection deleted.</h3>
        </cfcase>
      </cfswitch>
   <cfelse>
   <h3>Please enter a name for your collection</h3>   
   </cfif>
</cfif>

<!--------------------------------------------------------------------
(coll_form.cfm)
Form to specify the collection name and action
   coll_form.cfm
--------------------------------------------------------------------->

<form action="coll_actn.cfm" method="POST" >
<select name="CollectionAction">
   <option value="Create">Create this collection
   <option value="Optimize">Optimize this collection
   <option value="Repair">Repair this collection
   <option value="Delete">Delete this collection
</select>

<p><strong>Collection on which to act</strong><br>
Use the default value or enter your own Collection name<br>
<input type="Text" name="CollectionName" value="My_coll"></p>

<input type="Submit" name="" value="alter or create my collection">
</form>

blue

10

green

3

magenta

3

purple

2

a/

10

a/b

10

a/b/c

10

a/b/c/subdir

3

ACTION  
  Required; see Usage
 
Default value: "list"
  • categorylist: retrieves categories from the collection and indicates how many documents are in each one. Returns a structure of structures in which the category representing each substructure is associated with a number of documents. For a category in a category tree, the number of documents is the number at or below that level in the tree.
  • create: registers the collection with ColdFusion.
    • If the collection is present: creates a map to it.
    • If the collection is not present: creates it.
  • delete: unregisters a collection and deletes its directories.
  • list: returns a query result set, named from the name attribute value, of the attributes of the collections that are registered by ColdFusion.
  • map: creates a map to a collection. If the action is create and the collection already exists, Coldfusion also creates a map to the collection.
  • optimize: optimizes the structure and contents of the collection for searching; recovers space. Causes collection to be taken offline, preventing searches and indexing.
  • repair: deprecated. Does nothing.
COLLECTION  
  See Usage
 
  • A collection name. The name can include spaces.
PATH  
  See Usage
 

Absolute path to a Verity collection.

To map an existing collection, specify a fully qualified path to the collection (not including the collection name); for example, "C:\MyCollections\".

LANGUAGE  
  See Usage
 
Default value: "English"

Although English is the default language, Englishx, a more advanced English locale, is also provided. For a list of options, see Usage.

Requires the appropriate (European or Asian) Verity Locales language pack.

NAME  
  See Usage
 

Name for the query results returned by the list and categorylist actions.

CATEGORIES  
  See Usage
 
Default value: "no"

Used only for creating a collection:

  • yes: this collection includes support for categories.
  • no: this collection does not support categories.