Lingua::Thesaurus::IO::LivelinkCollectionServer - IO class for Livelink Collection Server thesaurus files
This class implements the Lingua::Thesaurus::IO role for files issued from the Livelink Collection Server database (formerly known as Basis Plus). Parsing is quite rudimentary and does not claim to comply with the full BasisPlus specification.
Files start with a header of shape:
BEGIN_LAYOUT FORMAT=FREE DATA_TERM_SEPARATOR='&&&' END_OF_DATA_STATEMENT='@@@' DATA_QUAL_SEPARATOR='###' END_LAYOUT ACTION_CODE=A <<< <<< Thesaurus dump in FREE format. <<<
which is completely ignored.
Actual data starts with
and ends with
All data lines are of shape
<relation_name> = <target>
If the last character on the line is '+', then this indicates that the next line is a continuation line, which should be concatenated to the current line.
The relation name 'LT' (for Lead Term) introduces a new term. The following lines are relations for this term, until the next LT. Relations may be :
# rel description reverse is_external # === =========== ======= =========== [AB => 'Abbreviation' => AF => undef], [AF => 'Abbreviation For' => AB => undef], [EQ => 'See Also' => UF => undef], [UF => 'Used For' => EQ => undef], [EQA => 'See AND' => UFA => undef], [UFA => 'Used For AND' => EQA => undef], [BT => 'Broad Term' => NT => undef], [NT => 'Narrow Term' => BT => undef], [RT => 'Related Term' => RT => undef], [SN => 'Scope Note' => undef , 1 ], [HN => 'History Note' => undef , 1 ], );
Loading a thesaurus file in LivelinkCollectionServer format.