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

NAME

       TM::Serializable::JTM - Topic Maps, trait for reading/writing JSON Topic Map instances.

SYNOPSIS

         # NOTE: this is not an end-user package,
         # see TM::Materialized::JTM for common application patterns

         # reading JSON/YAML:
         my $tm=TM->new(...);
         Class::Trait->apply($tm,"TM::Serializable::JTM");
         $tm->deserialize($jsondata);

         # writing JSON/YAML:
         # ...a map $tm is instantiated somehow

         Class::Trait->apply($tm,"TM::Serializable::JTM");
         my $yamltext=$tm->serialize(format=>"yaml");

DESCRIPTION

       This trait provides functionality for reading and writing Topic Maps in JTM (JSON Topic
       Map) format, as defined here: <http://www.cerny-online.com/jtm/1.0/>.

       Limitations:

       •   Variants are not supported by TM.

       •   Reification of basenames, occurrences and roles is not supported by TM.

       •   Multiple scopes are not supported by TM.

INTERFACE

   Methods
       deserialize
           This method take a string and parses JTM content from it. It will raise an exception
           on any parsing error. On success, it will return the map object.

           The method understands one key/value parameter pair:

           •   format (choices: "json", "yaml")

               This option controls whether the JTM is expected to be in JSON format or in YAML
               (which is a superset of JSON).

               If no format parameter is given but the TM::Materialized::JTM trait is used, then
               the format is inherited from there; otherwise the default is "json".

       serialize
           This method serializes the map object in JTM notation and returns the result as a
           string.

           The method understands one key/value parameter pair:

           •   format (choices: "json", "yaml")

               This option controls whether the JTM result should be created in the JSON format
               or in YAML (which is a superset of JSON).

               If no format parameter is given but the TM::Materialized::JTM trait is used, then
               the format is inherited from there; otherwise the default is "json".

SEE ALSO

       TM, TM::Serializable

AUTHOR INFORMATION

       Copyright 2010, Alexander Zangerl, 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