Provided by: libattean-perl_0.019-1_all
NAME
AtteanX::Parser::SPARQL - SPARQL 1.1 Parser.
VERSION
This document describes AtteanX::Parser::SPARQL version 0.019.
SYNOPSIS
use AtteanX::Parser::SPARQL; my $algbrea = AtteanX::Parser::SPARQL->parse($sparql, $base_uri); # or: my $parser = AtteanX::Parser::SPARQL->new(); my ($algebra) = $parser->parse_list_from_bytes($sparql, $base_uri); # or to allow parsing of SPARQL 1.1 Updates: my $algbrea = AtteanX::Parser::SPARQL->parse_update($sparql, $base_uri); # or: my $parser = AtteanX::Parser::SPARQL->new(update => 1); my ($algebra) = $parser->parse_list_from_bytes($sparql, $base_uri);
DESCRIPTION
This module implements a recursive-descent parser for SPARQL 1.1 using the AtteanX::Parser::SPARQLLex tokenizer. Successful parsing results in an object whose type is one of: Attean::Algebra::Query, Attean::Algebra::Update, or Attean::Algebra::Sequence.
ROLES
This class consumes Attean::API::Parser, Attean::API::AtOnceParser, and Attean::API::AbbreviatingParser.
ATTRIBUTES
"canonical_media_type" "media_types" "file_extensions" "handled_type" "lexer" "args" "build" "update" "namespaces" "baseURI" "filters"
METHODS
"parse ( $sparql )" Parse the $sparql query string and return the resulting Attean::API::Algebra object. "parse_update ( $sparql )" Parse the $sparql update string and return the resulting Attean::API::Algebra object. "parse_list_from_io( $fh )" "parse_list_from_bytes( $bytes )" "parse_nodes ( $string )" Returns a list of Attean::API::Term or Attean::API::Variable objects, parsed in SPARQL syntax from the supplied $string. Parsing is ended either upon seeing a DOT, or reaching the end of the string. "error" Returns the error encountered during the last parse. "new_binary_expression ( $operator, @operands )" Returns a new binary expression structure. "new_function_expression ( $function, @operands )" Returns a new function expression structure.
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--2018 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.