Documentation Center

IWriteMetadataAndBlobPlugin - BlobExtractDITAConrefs

Extracts conref and conref range targets into the FISHFRAGMENTLINKS and FISHLINKS metadata fields.

Plugin Configuration

The following workset fields need to be configured:
Field NameField Level
FISHLINKSlng
FISHFRAGMENTLINKSlng
The following parameters can be configured:
ParameterRequiredDefault valueAllowed valuesDescription
ExtractXPathYes  XPath query syntax used to search and retrieve the information from within the supplied XML document.
MetadataUpperCaseNoYesYes, NoConvert the retrieved value(s) into uppercase characters before storing them in the repository.
DocumentUpperCaseNoYesYes, NoConvert the retrieved value(s) into uppercase characters and update the XML document appropriately.
FragmentlinkSeparatorNo# Fragment link separator character for conrefs.
ObjectRefRegExpNo[^#]* Regular expression to extract object reference from the conref
TargetRefRegExpNo[^#^/]*$ Regular expression to extract target reference from the conref

Default plugin configuration

The following configuration updates the FISHWORDCOUNT metadata field with the word count.

        <plugin name="ISHSYSFRAGMENTLINKSTOMETADATA" handler="BlobExtractDITAConrefs" 
        ishcondition="CurrentAction in ('Create', 'Update', 'Checkin') and (EDT='EDTXML')">
          <description>Extract conref and conrefend into FISHFRAGMENTLINKS and FISHLINKS resulting in a mix of conref and conref ranges. E.g.: "LogicalIdB#Anchor1, LogicalIdA#Anchor3, LogicalIdB#Anchor1 LogicalIdB#Anchor3". Note the space as separator for a conref range.</description>
          <workingset>
            <ishfields>
              <ishfield name="FISHLINKS" level="lng" />
              <ishfield name="FISHFRAGMENTLINKS" level="lng" />
            </ishfields>
          </workingset>
          <initialize>
            <parameters>
              <parameter name="MetadataUpperCase">Yes</parameter>
              <parameter name="DocumentUpperCase">Yes</parameter>
              <parameter name="ExtractXPath">
                //*[@conref or @conrefend][not(ancestor-or-self::*[@varref])][not(ancestor::*[@conref])]
              </parameter>
            </parameters>
          </initialize>
        </plugin>