NAME
Attean::TripleModel - RDF model backed by a set of triple-stores
VERSION
This document describes Attean::TripleModel version 0.035
SYNOPSIS
use v5.14;
use Attean;
my $model = Attean::TripleModel->new( stores => {
'http://example.org/graph1' => $store1,
'http://example.org/graph2' => $store2,
} );
DESCRIPTION
The Attean::TripleModel class represents a model that is backed by a set of Attean::API::TripleStore objects, identified by an IRI string. It conforms to the Attean::API::Model role.
The Attean::TripleModel constructor requires one named argument:
- stores
-
A hash mapping graph IRI values to Attean::API::TripleStore objects representing the backing triple-store for that graph.
METHODS
sizecount_quadscount_quads_estimateholdsget_graphsget_quads ( $subject, $predicate, $object, $graph )-
Returns an Attean::API::Iterator for quads in the model that match the supplied
$subject,$predicate,$object, and$graph. Any of these terms may be undefined or a Attean::API::Variable object, in which case that term will be considered as a wildcard for the purposes of matching.The returned iterator conforms to both Attean::API::Iterator and Attean::API::QuadIterator.
plans_for_algebra( $algebra, $planner, $active_graphs, $default_graphs )-
Delegates to an underlying store if the active graph is bound to the store, and the store consumes Attean::API::CostPlanner.
cost_for_plan( $plan )-
Attempts to delegate to all the underlying stores if that store consumes Attean::API::CostPlanner.
add_store( $graph => $store )-
Add the Attean::TripleStore
$storeobject to the model using the IRI string value$graphas the graph name. create_graph( $graph )-
Create a new Attean::TripleStore and add it to the model using the Attean::API::IRI
$graphas the graph name.The store is constructed by using this object's
store_constructorattribute:my $store = $self->store_constructor->($graph); drop_graph( $graph )-
Removes the store associated with the given
$graph. add_quad ( $quad )-
Adds the specified
$quadto the underlying model. remove_quad ( $quad )-
Removes the specified
$quadfrom the underlying store. drop_graph( $graph )-
Removes the store associated with the given
$graph. clear_graph( $graph )-
Removes all quads with the given
$graph.
BUGS
Please report any bugs or feature requests to through the GitHub web interface at https://github.com/kasei/attean/issues.
SEE ALSO
AUTHOR
Gregory Todd Williams <gwilliams@cpan.org>
COPYRIGHT
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.