AtteanX::Store::Memory - Simple in-memory RDF store
This document describes AtteanX::Store::Memory version 0.034
use AtteanX::Store::Memory;
AtteanX::Store::Memory provides an in-memory quad-store.
Beyond the methods documented below, this class inherits methods from the Attean::API::QuadStore class.
new ()
Returns a new memory-backed storage object.
size
Returns the number of quads in the store.
get_quads ( $subject, $predicate, $object, $graph )
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_graphs
Returns an iterator over the Attean::API::Term objects comprising the set of graphs of the stored quads.
add_quad ( $quad )
Adds the specified $quad
to the underlying model.
remove_quad ( $statement )
Removes the specified $statement
from the underlying model.
remove_quads ( $subject, $predicate, $object, $graph )
Removes the specified $statement
from the underlying model.
create_graph( $graph )
This is a no-op function for the memory quad-store.
drop_graph( $graph )
Removes all quads with the given $graph
.
clear_graph( $graph )
Removes all quads with the given $graph
.
count_quads ( $subject, $predicate, $object, $graph )
Returns a count of all the statements matching the specified subject, predicate, object, and graph. Any of the arguments may be undef to match any value.
etag_value_for_quads
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.
mtime_for_quads
plans_for_algebra
The store implements a cost-based query planner, but this method is reimplemented to hand the overall control of the planning process to an external planner by returning undef
.
cost_for_plan
This store provides a cost estimate only for retrieving individual quad patterns in this method. It will allow other planners to estimate the cost for any other parts of the plan by returning undef
for those parts.
Please report any bugs or feature requests to through the GitHub web interface at https://github.com/kasei/perlrdf2/issues.
Gregory Todd Williams <gwilliams@cpan.org>
Copyright (c) 2014--2022 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.