---
name: "AtteanX::Plan::SPARQLBGP"
section: "3pm"
platform: "linux"
package: "libatteanx-store-sparql-perl"
version: "0.012-2+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/AtteanX::Plan::SPARQLBGP"
---

# AtteanX::Plan::SPARQLBGP(3pm)

Plan for efficient evaluation of SPARQL BGPs on remote endpoints

## NAME

AtteanX::Plan::SPARQLBGP - Plan for efficient evaluation of SPARQL BGPs on remote endpoints

## SYNOPSIS

This is typically only constructed by planning hacks deep in the code, but might look like:

```
  use v5.14;
  use AtteanX::Plan::SPARQLBGP;
  my $new_bgp_plan = AtteanX::Plan::SPARQLBGP->new(children => [$some_quads],
                                                            distinct => 0,
                                                            ordered => []);
```

## DESCRIPTION

This plan class implements compiling basic graph patterns that can be joined remotely on a SPARQL endpoint.

### Attributes and methods

Consumes Attean::API::QueryTree, Attean::API::Plan and Attean::API::UnionScopeVariablesPlan, and introduces nothing new. The most notable attribute is:

- "children"

  which takes an arrayref of Attean::Plan::Quad objects to be included in the Basic Graph pattern that will be evaluated against the model.

## OTHER DETAILS

For author, copyright and other details, see AtteanX::Store::SPARQL.
