Scroll to navigation

Attean::TripleModel(3pm) User Contributed Perl Documentation Attean::TripleModel(3pm)

NAME

Attean::TripleModel - RDF model backed by a set of triple-stores

VERSION

This document describes Attean::TripleModel version 0.034

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:

A hash mapping graph IRI values to Attean::API::TripleStore objects representing the backing triple-store for that graph.

METHODS

"size"
"count_quads"
"count_quads_estimate"
"holds"
"get_graphs"
"get_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.
Attempts to delegate to all the underlying stores if that store consumes Attean::API::CostPlanner.
"add_store( $graph => $store )"
Add the Attean::TripleStore $store object to the model using the IRI string value $graph as the graph name.
Create a new Attean::TripleStore and add it to the model using the Attean::API::IRI $graph as the graph name.

The store is constructed by using this object's "store_constructor" attribute:

  my $store = $self->store_constructor->($graph);
    
Removes the store associated with the given $graph.
"add_quad ( $quad )"
Adds the specified $quad to the underlying model.
"remove_quad ( $quad )"
Removes the specified $quad from the underlying store.
Removes the store associated with the given $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.

2024-07-02 perl v5.38.2