AtteanX::Store::SPARQL - Attean SPARQL store
my $store = Attean->get_store('SPARQL')->new(endpoint_url => $url);
This implements a simple immutable triple store, which simply allows programmers to use Attean facilities to query remote SPARQL endpoints.
This distribution also brings a corresponding AtteanX::Model::SPARQL, which allows query plans to be made, and a AtteanX::Plan::SPARQLBGP plan class, which contains a rudimentary cost estimate that attempts to avoid sending Cartesian joins to remote endpoints if possible.
endpoint_url
-
The URL of a remote SPARQL endpoint. Will be coerced into a URI object, so it may be set as a string or whatever. Required attribute.
ua
-
An LWP::UserAgent object to use for remote queries. Will be set to a reasonable default if not supplied.
get_triples
-
Method to query the remote endpoint, as required by Attean::API::TripleStore.
count_triples
-
Reimplemented using an aggregate query for greater efficiency.
get_sparql($sparql, [ $ua ])
-
Will submit the given
$sparql
query to the aboveendpoint_url
attribute. Optionally, you may pass an LWP::UserAgent, if not it will use the user agent set using theua
method. Will return an iterator with the results if the request is successful.
Please report any bugs to https://github.com/kjetilk/p5-atteanx-store-sparql/issues.
This module is heavily influenced by RDF::Trine::Store::SPARQL.
Kjetil Kjernsmo <[email protected]>.
This software is copyright (c) 2015, 2016 by Kjetil Kjernsmo and Gregory Todd Williams.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.