An Identifier is a base-64 encoded string that identifies the source of a document in IDOL Server. When Connectors and CFS are used to index documents into IDOL Server, an identifier is added to every document (in the AUTN_IDENTIFIER
document field).
The identifier can be used to extract the original file from the repository. An application might need to do this when presenting the results of a query.
The exact content of the AUTN_IDENTIFIER
field depends on the connector that retrieved the document, but contains information such as:
The name of the fetch task that was used to retrieve the document. When a connector needs to retrieve a file, it can use the same settings by finding the fetch task in its configuration file.
The document reference. The document reference identifies the location of a file within a repository. For files retrieved by a File System Connector, the document reference is the path to the file. For e-mail messages retrieved by an Exchange Connector, the document reference includes the name of the message store and folder that contain the message.
An example identifier appears below:
<id section="MyTask1" reference="http://myserver:4567/doc/_vxswdfguhjknbio_earycqzt_"> <param name="SERVICEURL" value="http://myserver:4567/service"/> <param name="DOCID">_vxswdfguhjknbio_earycqzt_</<param> </id>
Documents in IDOL Server can represent subfiles. In these documents, the AUTN_IDENTIFIER
field contains the identifier of the container file.
To retrieve a subfile from a repository, a connector must retrieve the container file and send it to KeyView so that the subfile can be extracted. You must also specify a subfile index, so that KeyView can extract the correct subfile.
When CFS indexes documents into IDOL Server, subfile indexes are automatically written to the SubFileIndexCSV
document field. For example:
SubFileIndexCSV="1"
The subfile index in this example (1
) indicates that the document represents the second file in the container (the subfiles are indexed from 0).
Container files can contain other container files (for example an e-mail message file could contain ZIP file attachments, containing further subfiles). In this case, the subfile index might include more than one level:
SubFileIndexCSV="2,6"
A subfile index of 2,6
indicates that the document represents the seventh file in the third container, in the original container file.
When an action is sent to a connector to retrieve subfiles, the subfile index must be appended to the identifier of the container. For example:
PGlkIHM9Ik15VGFzazEiIHI9Imh0dHA6Ly9teXNlcnZlcjo0NTY3L2RvYy9fdnhzd2RmZ3VoamtuYmlvX2VhcnljcXp0XyI+PHAgbj0iU0VSVklDRVVSTCIgdj0iaHR0cDovL215c2VydmVyOjQ1Njcvc2VydmljZSIvPjxwIG49IkRPQ0lEIiB2PSJfdnhzd2RmZ3VoamtuYmlvX2VhcnljcXp0XyIvPjwvaWQ+|2.6
NOTE: Where subfile indexes have multiple levels (for example SubFileIndexCSV="2,6"
), the comma must be replaced by a period.
You can configure CFS to automatically append subfile indexes to the document identifiers, before the documents are indexed into IDOL Server.
To do this, use the following Lua Script.
NOTE: You must run the script after KeyView has extracted subfiles, so run the script using a Post Import task.
function handler( document ) identifier = document:getFieldValue( "AUTN_IDENTIFIER" ) if identifier then indices = document:getFieldValue( "SubFileIndexCSV" ) if indices then indices = string.gsub(indices, ",", ".") document:setFieldValue( "AUTN_IDENTIFIER", identifier .. "|" .. indices ) end end return true end_FT_HTML5_bannerTitle.htm