1 <?xml version="1.0" standalone="no"?>
2 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd"
5 <!ENTITY % local SYSTEM "local.ent">
7 <!ENTITY manref SYSTEM "manref.xml">
8 <!ENTITY gpl2 SYSTEM "gpl-2.0.xml">
9 <!ENTITY % idcommon SYSTEM "common/common.ent">
14 <title>MP-SPARQL - User's Guide and Reference</title>
17 <firstname>Adam</firstname><surname>Dickmeiss</surname>
20 <firstname>Heikki</firstname><surname>Levanto</surname>
23 <firstname>Jakub</firstname><surname>Skoczen</surname>
26 <releaseinfo>&version;</releaseinfo>
28 <year>2014-2015</year>
29 <holder>Index Data</holder>
33 This manual is part of MP-SPARQL version &version;.
36 MP-XQuery is a Metaproxy module that converts Type-1/RPN Queries
40 MP-SPARQL is covered by the GNU General Public License version 2.
45 <imagedata fileref="common/id.png" format="PNG"/>
48 <imagedata fileref="common/id.eps" format="EPS"/>
54 <chapter id="introduction">
55 <title>Introduction</title>
57 MP-SPARQL is a <ulink url="&url.metaproxy;">Metaproxy</ulink> module
58 that converts Type-1/RPN queries to <ulink url="http://www.w3.org/TR/rdf-sparql-query/">SPARQL</ulink>.
61 <chapter id="installation">
62 <title>Installation</title>
64 MP-SPARQL is available as packages for CentOS/RHEL 5+6 and most
65 recent Ubuntu/Debian versions. For other systems, the module must be build
68 <sect1 id="installation.packages">
69 <title>Installing packages</title>
71 You need to enable the relevant software repositories.
72 For setting up refer to one of:
74 url="http://ftp.indexdata.dk/pub/mp-sparql/redhat/centos/5.5/README">CentOS 5</ulink>,
76 url="http://ftp.indexdata.dk/pub/mp-sparql/redhat/centos/6/README">CentOS 6</ulink>
79 url="http://ftp.indexdata.dk/pub/mp-sparql/ubuntu/README">Ubuntu</ulink>
82 url="http://ftp.indexdata.dk/pub/mp-sparql/debian/README">Debian</ulink>
85 The package is called <literal>mp-sparql</literal> on RHEL/Debian systems.
86 Install that package and you are ready to use filter "sparql" in your
90 mp-sparql depends on a number of packages created by Index Data and
91 system-provided ones, such as Libxml2. For external software Zorba, no
92 system package exist so Index Data has packaged that separately. This
93 package is called <literal>idzorba</literal>. All these dependences should
94 be automatically installed when the Index Data software repository is
98 <sect1 id="installation.source">
99 <title>Installing from source</title>
101 To build from source, you need metaproxy development
102 packages. Metaproxy can be installed as follows:
108 Refer to the Metaproxy documentation for requirements and options.
111 We are now ready to build the MP-SPARQL module with:
114 make MP_CONFIG=/usr/local/bin/mp-config
116 Adjust <literal>MP_CONFIG</literal> value
117 above for the correct location of installed
118 Metaproxy's mp-config. <literal>MP_CONFIG</literal> can be omitted
119 if Metaproxy was installed in the system <filename>PATH</filename>.
122 You can now install the <filename>metaproxy_filter_sparql.so</filename>
123 in a directory searched by Metaproxy daemon.
124 Specifically, that's the directories
125 given by the <literal>dlpath</literal> configuration.
128 If dlpath includes <filename>/usr/lib/metaproxy6/modules</filename>,
129 the module can be installed with:
131 cp src/metaproxy_filter_sparql.so /usr/lib/metaproxy6/modules
136 For RHEL/CentOS systems on 64-bit architectures, the correct paths is:
137 <filename>/usr/lib64/metaproxy6/modules</filename>.
142 <title>Configuration</title>
144 If you have installed mp-sparql as a package or have executed
145 <literal>make install</literal> from source, sample configuration
146 can be found in <filename>/usr/share/mp-sparql/bibframe</filename> or
147 <filename>/usr/local/share/mp-sparql/bibframe</filename>. In the
148 the following /usr/share prefix assumed. Adjust accordingly.
149 The directory contains these files:
152 <term><filename>triplestore.xml</filename></term>
155 A mature PQF to SPARQL configuration illustrating a lot of the
156 configuration facilities that are described in the manual
157 page of <xref linkend="sparql"/>.
162 <term><filename>config-sparql.xml</filename></term>
165 A full metaproxy configuration file that includes
166 <filename>triplestore.xml</filename> cofiguration for the
167 mp-sparql filter, enables SRU and CQL to PQF conversion.
172 <term><filename>filter-sparql.xml</filename></term>
175 A partial metaproxy configuration suitable to be enabled in
176 <filename>/etc/metaproxy/filters-enabled</filename>.
177 This includes <filename>triplestore.xml</filename> as well.
184 If you want to use the package layout and modular configuration we
185 suggest you use filter-sparql.xml and perform something along the lines of:
187 cp /usr/share/mp-sparql/bibframe/filter-sparql.xml /etc/metaproxy/filters-available
188 cp /usr/share/mp-sparql/bibframe/triplestore.xml /etc/metaproxy
189 sudo vi /etc/metaproxy/triplestore.xml
190 ln -s ../filters-available/filter-sparql.xml /etc/metaproxy/filters-enabled
191 service metaproxy restart
193 A copy of triplestore.xml is made. Adjust the
194 <literal><defaults uri=.. </literal> value to the URI of your
198 If you want to create your own top-level configuration, you can copy
199 <filename>config-sparql.xml</filename> to any location you like and
200 run metaproxy with that. Something like this:
203 cp /usr/share/mp-sparql/bibframe/* /etc/myconfig
204 sudo vi /etc/myconfig/triplestore.xml
205 metaproxy -c /etc/myconfig/config-sparql.xml
207 Again, a copy of triplestore.xml is made. Adjust the
208 <literal><defaults uri=.. </literal> value to the URI of your
213 Do not edit files in <filename>/usr/share/mp-sparql/bibframe</filename>.
214 They are only samples and will be overwritten by a package update.
215 Instead copy the files away from there if you need to modify them.
220 <reference id="reference">
221 <title>Reference</title>
222 <partintro id="reference-introduction">
224 The material in this chapter is drawn directly from the individual
231 <appendix id="license">
232 <title>License</title>
234 Copyright (C) 2014-2015 Index Data
238 Metaproxy is free software; you can redistribute it and/or modify it under
239 the terms of the GNU General Public License as published by the Free
240 Software Foundation; either version 2, or (at your option) any later
245 Metaproxy is distributed in the hope that it will be useful, but WITHOUT ANY
246 WARRANTY; without even the implied warranty of MERCHANTABILITY or
247 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
252 You should have received a copy of the GNU General Public License
253 along with Metaproxy; see the file LICENSE. If not, write to the
254 Free Software Foundation,
255 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
263 <!-- Keep this comment at the end of the file