NAME

RDF::Trine::Store::Memory - Simple in-memory RDF store

VERSION

This document describes RDF::Trine::Store::Memory version 1.019

SYNOPSIS

 use RDF::Trine::Store::Memory;

DESCRIPTION

RDF::Trine::Store::Memory provides an in-memory triple-store.

METHODS

Beyond the methods documented below, this class inherits methods from the RDF::Trine::Store class.

new ()

Returns a new memory-backed storage object.

new_with_config ( $hashref )

Returns a new storage object configured with a hashref with certain keys as arguments.

The storetype key must be Memory for this backend.

This module also supports initializing the store from a file or URL, in which case, a sources key may be used. This holds an arrayref of hashrefs. To load a file, you may give the file name with a file key in the hashref, and to load a URL, use url. See example below. Furthermore, the following keys may be used:

syntax

The syntax of the parsed file or URL.

base_uri

The base URI to be used for a parsed file.

graph NOT IMPLEMENTED

Use this URI as a graph name for the contents of the file or URL.

The following example initializes a Memory store based on a local file and a remote URL:

  my $store = RDF::Trine::Store->new_with_config(
                {
                  storetype => 'Memory',
                  sources => [
                    {
                      file => 'test-23.ttl',
                      syntax => 'turtle',
                    },
                    {
                      url => 'http://www.kjetil.kjernsmo.net/foaf',
                      syntax => 'rdfxml',
                      graph => 'http://example.org/graph/remote-users'
                    }
                  ]
                });
temporary_store

Returns a temporary (empty) triple store.

get_statements ( $subject, $predicate, $object [, $context] )

Returns a stream object of all statements matching the specified subject, predicate and objects. Any of the arguments may be undef to match any value.

get_contexts

Returns an RDF::Trine::Iterator over the RDF::Trine::Node objects comprising the set of contexts of the stored quads.

add_statement ( $statement [, $context] )

Adds the specified $statement to the underlying model.

remove_statement ( $statement [, $context])

Removes the specified $statement from the underlying model.

remove_statements ( $subject, $predicate, $object [, $context])

Removes the specified $statement from the underlying model.

count_statements ( $subject, $predicate, $object, $context )

Returns a count of all the statements matching the specified subject, predicate, object, and context. Any of the arguments may be undef to match any value.

etag

If the store has the capability and knowledge to support caching, returns a persistent token that will remain consistent as long as the store's data doesn't change. This token is acceptable for use as an HTTP ETag.

size

Returns the number of statements in the store.

supports ( [ $feature ] )

If $feature is specified, returns true if the feature is supported by the store, false otherwise. If $feature is not specified, returns a list of supported features.

BUGS

Please report any bugs or feature requests to through the GitHub web interface at https://github.com/kasei/perlrdf/issues.

AUTHOR

Gregory Todd Williams <gwilliams@cpan.org>

COPYRIGHT

Copyright (c) 2006-2012 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.