Provided by: libtm-perl_1.56-7_all bug

NAME

       TM::Serializable::LTM - Topic Maps, trait for parsing of LTM instances.

SYNOPSIS

         # this is not an end-user package
         # see the source of TM::Materialized::LTM

DESCRIPTION

       This package provides parsing functionality for LTM 1.3 instances with the exceptions
       listed below. LTM 1.3 is backwards compatible with version 1.2.  As LTM 1.3 is not yet
       public, please contact the author (Lars M. Garshol) for a copy.
          http://www.ontopia.net/download/ltm.html

   Deviations from the LTM Specification
       comments:
           The parser does NOT recognizes nested comments. Any closest following */ sequence
           terminates a comment. The parser does also not distinguish between comments within or
           outside strings.

           Justification: Speed of parsing and complexity of the parser.

       scope:
           Only exactly ONE topic can be specified for a scope.

           Justification: Multiple topics per scope are allowed by the standard, but are
           undefined in their semantics. The underlying TM representation does NOT allow for
           multiple topics per scope.

       variants
           Variants are currently not supported. This also includes sort names and display names.

           Justification: Will be added later.

       syntax
           Any number of statements are allowed in LTM files (also 0).

           Justification: There is no reason to do otherwise.

       TOPICMAP directive
           This is currently not implemented.

           Justification: There are better ways to do that.

       MERGEMAP directive
           The HyTime, ISO13250 format is not implemented as there is currently no driver in the
           TM suite.

           Justification: As long as there is no interest (read: bribe money), it never will.

       BASEURI directive
           BASEURI is currently not honored for all local URIs.

           Justification: I do not understand its purpose.

       encoding
           This is currently ignored.

           Justification: Will be added later.

       Subject Locators
           It is a violation to use more than one subject locator per topic.

           Justification: This is enforced by the underlying model.

       Source Locators
           No source locators are created.

           Justification: There is no such concept (thankfully) in the TM suite.

       role type:
           If a role is not specified, it will remain default to "thing" and not - as the
           specification mandates - will be substituted by the topic type.

           Justification: First, a topic might have several types (which one to use?), secondly
           there might be several topics in a member and thirdly, a role should generally NOT be
           the type of a member.

   Notes
       Merging
           The parser (like any other in the TM suite) does NOT perform merging automatically.
           You have to trigger that explicitely with the method "consolidate".

       MERGEMAP directive
           The strings determining the format are checked case-insensitive, so ASTMA and AsTMa
           are treated equally.

           The location of the map can be defined via any URI handled by LWP::Simple.  If no
           scheme is provided file: will be assumed.

INTERFACE

   Methods
       deserialize
           This method tries to parse the passed in text stream as LTM instance. It will raise an
           exception on the first parse error.

       serialize
           This is not implemented.

SEE ALSO

       TM

AUTHOR INFORMATION

       Copyright 200[1-6], Robert Barta <drrho@cpan.org>, All rights reserved.

       This library is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.  http://www.perl.com/perl/misc/Artistic.html