Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

tm::serializable(3pm) [debian man page]

TM::Serializable(3pm)					User Contributed Perl Documentation				     TM::Serializable(3pm)

NAME
TM::Serializable - Topic Maps, abstract trait for stream (map) based input/output drivers SYNOPSIS
# step 1) you write an input/output driver for a serialized TM format package MyFormat; # provides methods sub deserialize { my $self = shift; # gets current map my $stream = shift; # .... fill the map with content } sub serialize { my $self = shift; # get the map # .... return ... #serialized content } 1; # step 2) construct a subclass of TM using this driver package MapWithMyFormat; use TM; use base qw(TM); use Class::Trait qw(TM::Serializable MyFormat); 1; # step 3) use it in your application my $tm = new MapWithMyFormat (url => 'file:map.myformat'); $tm->sync_in; # uses MyFormat to parse the content from the file DESCRIPTION
This trait implements synchronizable resources using a serialized format. Examples are formats such as AsTMa 1.0, 2.0, LTM, CTM, XTM. The only thing these drivers have to provide are the methods "serialize" and "deserialize" which serialize maps to streams and vice-versa. This trait provides the implementations for "source_in" and "source_out" triggering "deserialize" and "serialize", respectively. INTERFACE
Methods source_in Uses the URL attached to the map object to trigger "deserialize" on the stream content behind the resource. All URLs of LWP are supported. If the URI is "io:stdio" then content from STDIN is consumed. This content can be consumed more than once (it is buffered internally), so that you can read several times from "io:stdin" getting the same input. If the resource URI is "io:stdout", then nothing happens. If the resource URI is "null:", then nothing happens. [Since TM 1.53]: Any additional parameters are passed through to the underlying "deserialize" method. source_out This method triggers "serialize" on the object. The contents will be copied to the resource identified by the URI attached to the object. At the moment, only "file:" URLs and "io:stdout" is supported. If the resource URI is "io:stdin", nothing happens. If the resource URI is "null:", nothing happens. If the resource URI is "inline:.." nothing happens. [Since TM 1.53]: Any additional parameters are passed through to the underlying "serialize" method. SEE ALSO
TM, TM::Synchronizable AUTHOR INFORMATION
Copyright 20(0[2-6]|10), 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 perl v5.10.1 2010-06-05 TM::Serializable(3pm)

Check Out this Related Man Page

TM::Serializable::JTM(3pm)				User Contributed Perl Documentation				TM::Serializable::JTM(3pm)

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: o Variants are not supported by TM. o Reification of basenames, occurrences and roles is not supported by TM. o 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: o 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: o 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 perl v5.10.1 2010-07-18 TM::Serializable::JTM(3pm)
Man Page