logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

AtteanX::Parser::SPARQL - SPARQL 1.1 Parser.

Attributes

       "canonical_media_type"
       "media_types"
       "file_extensions"
       "handled_type"
       "lexer"
       "args"
       "build"
       "update"
       "namespaces"
       "baseURI"
       "filters"
       "blank_nodes"
       "has_blank_nodes_map"

Author

       Gregory Todd Williams  "<gwilliams@cpan.org>"

Bugs

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

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.

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.

Name

       AtteanX::Parser::SPARQL - SPARQL 1.1 Parser.

Roles

       This class consumes Attean::API::Parser, Attean::API::AtOnceParser, and Attean::API::AbbreviatingParser.

See Also

Synopsis

        use AtteanX::Parser::SPARQL;
        my $algbrea = AtteanX::Parser::SPARQL->parse($sparql);
        # or:
        my $parser     = AtteanX::Parser::SPARQL->new();
        my ($algebra) = $parser->parse_list_from_bytes($sparql);

        # or to allow parsing of SPARQL 1.1 Updates:

        my $algbrea = AtteanX::Parser::SPARQL->parse_update($sparql);
        # or:
        my $parser = AtteanX::Parser::SPARQL->new(update => 1);
        my ($algebra) = $parser->parse_list_from_bytes($sparql);

Version

       This document describes AtteanX::Parser::SPARQL version 0.035.

See Also