File: sparql_to_sql_text.xml

package info (click to toggle)
virtuoso-opensource 7.2.5.1%2Bdfsg1-0.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 285,240 kB
  • sloc: ansic: 641,220; sql: 490,413; xml: 269,570; java: 83,893; javascript: 79,900; cpp: 36,927; sh: 31,653; cs: 25,702; php: 12,690; yacc: 10,227; lex: 7,601; makefile: 7,129; jsp: 4,523; awk: 1,697; perl: 1,013; ruby: 1,003; python: 326
file content (86 lines) | stat: -rw-r--r-- 3,964 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
 -  
 -  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
 -  project.
 -  
 -  Copyright (C) 1998-2018 OpenLink Software
 -  
 -  This project is free software; you can redistribute it and/or modify it
 -  under the terms of the GNU General Public License as published by the
 -  Free Software Foundation; only version 2 of the License, dated June 1991.
 -  
 -  This program is distributed in the hope that it will be useful, but
 -  WITHOUT ANY WARRANTY; without even the implied warranty of
 -  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 -  General Public License for more details.
 -  
 -  You should have received a copy of the GNU General Public License along
 -  with this program; if not, write to the Free Software Foundation, Inc.,
 -  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 -  
 -  
-->
<refentry id="fn_sparql_to_sql_text">
  <refmeta>
    <refentrytitle>sparql_to_sql_text</refentrytitle>
    <refmiscinfo>rdf</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>sparql_to_sql_text</refname>
    <refpurpose>Converts a sparql query directly to SQL.</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <funcsynopsis id="fsyn_sparql_to_sql_text">
      <funcprototype id="fproto_sparql_to_sql_text">
        <funcdef>varchar <function>sparql_to_sql_text</function></funcdef>
	      <paramdef>in <parameter>squery</parameter> varchar</paramdef>
      </funcprototype>
    </funcsynopsis>
  </refsynopsisdiv>
  <refsect1 id="desc_sparql_to_sql_text">
    <title>Description</title>
    <para>The <function>sparql_to_sql_text()</function> function can be used to convert a SPARQL query
directly to the SQL it would be executed as.</para>
  </refsect1>
  <refsect1 id="params_sparql_to_sql_text">
    <title>Parameters</title>
    <refsect2><title>squery</title>
      <para>The sparql query to be converted.</para></refsect2>
  </refsect1>
  <refsect1 id="ret_sparql_to_sql_text"><title>Return Types</title>
    <para>A string will be returned containing the converted sparql query.
    </para>
  </refsect1>
  <refsect1 id="examples_sparql_to_sql_text">
    <title>Examples</title>
    <example id="ex_sparql_to_sql_text"><title>Using the sparql_to_sql_text() function</title>
      <para>This simple example shows how to covert sparql query in SQL:</para>
<programlisting><![CDATA[
SQL> select sparql_to_sql_text('select * where {?s ?p ?o}');
sparql_to_sql_text
VARCHAR
_______________________________________________________________________________

SELECT __id2i ( /*retval[*/ "s-1-1-t0"."S" /* s */ /*]retval*/ ) AS /*tmpl*/ "s",
  __id2i ( /*retval[*/ "s-1-1-t0"."P" /* p */ /*]retval*/ ) AS /*tmpl*/ "p",
  __ro2sq ( /*retval[*/ "s-1-1-t0"."O" /* o */ /*]retval*/ ) AS /*tmpl*/ "o"
FROM DB.DBA.RDF_QUAD AS "s-1-1-t0"
OPTION (QUIETCAST)

1 Rows. -- 15 msec.
]]></programlisting>
    </example>
  </refsect1>
    <refsect1 id="seealso_sparql_to_sql_text">
    <title>See Also</title>
    <para><link linkend="fn_sparql_eval_to_array"><function>DB.DBA.SPARQL_EVAL_TO_ARRAY</function></link></para>
    <para><link linkend="fn_sparql_eval"><function>DB.DBA.SPARQL_EVAL</function></link></para>
    <para><link linkend="fn_sparql_rdb2rdf_codegen"><function>DB.DBA.SPARQL_RDB2RDF_CODEGEN</function></link></para>
    <para><link linkend="fn_sparql_rdb2rdf_list_tables"><function>DB.DBA.SPARQL_RDB2RDF_LIST_TABLES</function></link></para>
    <para><link linkend="fn_sparql_rexec"><function>DB.DBA.SPARQL_REXEC</function></link></para>
    <para><link linkend="fn_sparql_rexec_to_array"><function>DB.DBA.SPARQL_REXEC_TO_ARRAY</function></link></para>
    <para><link linkend="fn_sparql_rexec_with_meta"><function>DB.DBA.SPARQL_REXEC_WITH_META</function></link></para>
    <para><link linkend="fn_sparql_select_known_graphs"><function>DB.DBA.SPARQL_SELECT_KNOWN_GRAPHS</function></link></para>                        
  </refsect1>
</refentry>