Attean::Plan(3) Representation of SPARQL query plan operators

VERSION

This document describes Attean::Plan version 0.017

SYNOPSIS


use v5.14;
use Attean;

DESCRIPTION

This is a utility package that defines all the Attean query plan classes in the Attean::Plan namespace:
  • Attean::Plan::Quad

    Evaluates a quad pattern against the model.

  • Attean::Plan::NestedLoopJoin

    Evaluates a join (natural-, anti-, or left-) using a nested loop.

  • Attean::Plan::HashJoin

    Evaluates a join (natural-, anti-, or left-) using a hash join.

  • Attean::Plan::Construct
  • Attean::Plan::Describe
  • Attean::Plan::EBVFilter

    Filters results from a sub-plan based on the effective boolean value of a named variable binding.

  • Attean::Plan::Merge

    Evaluates a set of sub-plans, returning the merged union of results, preserving ordering.

  • Attean::Plan::Union

    Evaluates a set of sub-plans, returning the union of results.

  • Attean::Plan::Extend

    Evaluates a sub-plan, and extends each result by evaluating a set of expressions, binding the produced values to new variables.

  • Attean::Plan::HashDistinct

    Evaluates a sub-plan, and returns distinct results by checking a persistent hash of already-seen results.

  • Attean::Plan::Unique

    Evaluates an already-ordered sub-plan, and returns distinct results by filtering out sequential duplicates.

  • Attean::Plan::Slice

    Evaluates a sub-plan, and returns the results after optionally skipping some number of results (``offset'') and limiting the total number of returned results (``limit'').

  • Attean::Plan::Project

    Evaluates a sub-plan and returns projected results by only keeping a fixed-set of variable bindings in each result.

  • Attean::Plan::OrderBy

    Evaluates a sub-plan and returns the results after fully materializing and sorting is applied.

  • Attean::Plan::Service

    Evaluates a SPARQL query against a remove endpoint.

  • Attean::Plan::Table

    Returns a constant set of results.

  • Attean::Plan::Iterator

    Returns a constant set of results.

    Be aware that if the iterator being wrapped is not repeatable (consuming the Attean::API::RepeatableIterator role), then this plan may only be evaluated once.

    A size estimate may be given if it is available. If the iterator is an Attean::ListIterator, the size of that iterator will be used.

  • Attean::Plan::ALPPath
  • Attean::Plan::Exists

    Returns an iterator containing a single boolean term indicating whether any results were produced by evaluating the sub-plan.

  • Attean::Plan::Aggregate

BUGS

Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/attean/issues>.

AUTHOR

Gregory Todd Williams "<[email protected]>"

COPYRIGHT

Copyright (c) 2014--2016 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.