1RDF::Query::Compiler::SUQsLe(r3)Contributed Perl DocumenRtDaFt:i:oQnuery::Compiler::SQL(3)
2
3
4
6 RDF::Query::Compiler::SQL - Compile a SPARQL query directly to SQL.
7
9 This document describes RDF::Query::Compiler::SQL version 2.918.
10
12 This module's API and functionality should be considered deprecated.
13 If you need functionality that this module provides, please get in
14 touch <http://www.perlrdf.org/>.
15
17 "new ( $parse_tree )"
18 Returns a new compiler object.
19
20 "compile ()"
21 Returns a SQL query string for the specified parse tree.
22
23 "emit_select"
24 Returns a SQL query string representing the query.
25
26 "limit_clause"
27 Returns a SQL LIMIT clause, or an empty string if the query does
28 not need limiting.
29
30 "order_by_clause"
31 Returns a SQL ORDER BY clause, or an empty string if the query does
32 not use ordering.
33
34 "variable_columns ( $var )"
35 Given a variable name, returns the set of column aliases that store
36 the values for the column (values for Literals, URIs, and Blank
37 Nodes).
38
39 "add_variable_values_joins"
40 Modifies the query by adding LEFT JOINs to the tables in the
41 database that contain the node values (for literals, resources, and
42 blank nodes).
43
44 "patterns2sql ( \@triples, \$level, %args )"
45 Builds the SQL query in instance data from the supplied @triples.
46 $level is used as a unique identifier for recursive calls.
47
48 %args may contain callback closures for the following keys:
49
50 'where_hook'
51 'from_hook'
52
53 When present, these closures are used to add SQL FROM and WHERE
54 clauses to the query instead of adding them directly to the
55 object's instance data.
56
57 "expr2sql ( $expression, \$level, %args )"
58 Returns a SQL expression for the supplied query $expression.
59 $level is used as a unique identifier for recursive calls.
60
61 %args may contain callback closures for the following keys:
62
63 'where_hook'
64 'from_hook'
65
66 When present, these closures are used to add necessary SQL FROM and
67 WHERE clauses to the query.
68
69 "_mysql_hash ( $data )"
70 Returns a hash value for the supplied $data string. This value is
71 computed using the same algorithm that Redland's mysql storage
72 backend uses.
73
74 "_mysql_node_hash ( $node )"
75 Returns a hash value (computed by "_mysql_hash" for the supplied
76 $node. The hash value is based on the string value of the node and
77 the node type.
78
79 "qualify_uri ( $uri )"
80 Returns a fully qualified URI from the supplied $uri. $uri may
81 already be a qualified URI, or a parse tree for a qualified URI or
82 QName. If $uri is a QName, the namespaces defined in the query
83 parse tree are used to fully qualify.
84
85 "add_function ( $uri, $function )"
86 Associates the custom function $function (a CODE reference) with
87 the specified URI, allowing the function to be called by query
88 FILTERs.
89
90 "get_function ( $uri )"
91 If $uri is associated with a query function, returns a CODE
92 reference to the function. Otherwise returns "undef".
93
95 Gregory Williams <gwilliams@cpan.org>
96
97
98
99perl v5.38.0 2023-07-21 RDF::Query::Compiler::SQL(3)