| TM documentation | Contained in the TM distribution. |
TM::Materialized::JTM - Topic Maps, trait for JSON Topic Map instances.
use TM::Materialized::JTM; my $tm=TM::Materialized::JTM(file=>"somefile.jtm"); $tm->sync_in; ... # map was modified, now save the changes $tm->sync_out;
This package provides map parsing and creating functionality for JTM (JSON Topic Map) instances. The JSON Topic Map format is defined here: http://www.cerny-online.com/jtm/1.0/.
$tm = TM::Materialized::JTM->new (...);
The constructor expects a hash as described in TM::Materialized::Stream, with one additional key/value parameter:
"json", "yaml")This option controls whether the JTM data is treated as being in JSON format or in YAML (which is a superset of JSON). This applies to both reading and writing of map data.
The default value is "json".
$tm->format('json');
$curformat=$tm->format;
This method gets or sets the format parameter for future operations. Possible choices: "json", "yaml".
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
| TM documentation | Contained in the TM distribution. |
package TM::Materialized::JTM; # $Id: JTM.pm,v 1.1 2010/04/09 09:57:17 az Exp $ use strict; use Class::Trait qw(TM::Serializable::JTM); use TM::Materialized::Stream; use base qw (TM::Materialized::Stream); use vars qw($VERSION); $VERSION = qw(('$Revision: 1.2 $'))[1];
sub new { my ($class,%options)=@_; $options{psis}=$TM::PSI::topicmaps; $options{format}||="json"; return bless $class->SUPER::new(%options), $class; }
sub format { my ($self,$format)=@_; $self->{format}=$format if ($format=~/^(json|yaml)$/); return $self->{format}; }
1;