<!--
 -  
 -  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
 -  
 -  
-->
<?xml version="1.0" encoding="ISO-8859-1"?>
<refentry id="SO-S-14">
  <refmeta>
    <refentrytitle>SOAP</refentrytitle>
    <refmiscinfo>tutorial</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>SOAP &amp; remote data sources</refname>
    <refpurpose>Exposing Third-Party SQL Stored Procedures as SOAP Services</refpurpose>
  </refnamediv>

<refsect1 id="SO-S-14a">
<title>Preliminaries</title>
<itemizedlist mark="bullet">
  <listitem>
  This example demonstrates the processing of a result set obtained from a PL
  procedure defined on a remote database.</listitem>
  <listitem>
  The example shows a remote execution of a PL procedure against Microsoft
  SqlServer and Oracle DBMS.</listitem>
  <listitem>
  The remote procedure is called via rexecute(). The result set is converted
  to an XML document by a local PL procedure that can then be called via SOAP.
  The demo VSP pages offers a form to accept DSN, login info and a search
  string. A soap_call() is executed with these parameters, and the result is 
  parsed with an XSL-T engine for HTML output. 
  </listitem>
</itemizedlist>
</refsect1>

<refsect1 id="SO-S-14b">
<title>SQLServer Preparation</title>
<itemizedlist mark="bullet">
  <listitem>
    Configure this example for SQLServer by loading the ms.sql script
    using the ISQL tool on behalf of the demo user.
  </listitem>
  <listitem>
    Make sure the demo Northwind DB is installed.
  </listitem>
  <listitem>
    Create a DSN to the SQLServer DB.
  </listitem>
  <listitem>
    Grant rexecute on DSN to the SOAP_SO_S_14 user:
    GRANT REXECUTE on [SQLServer DSN] to SOAP_SO_S_14;
  </listitem>
</itemizedlist>
</refsect1>

<refsect1 id="SO-S-14c">
<title>Oracle Preparation</title>
<itemizedlist mark="bullet">
  <listitem>
    Configure this example for Oracle by loading the ora.sql script
    using the SQLPLUS tool on behalf of the demo user.
  </listitem>
  <listitem>
    Make sure the Oracle demo DB is installed.
  </listitem>
  <listitem>
    Create a DSN to the Oracle DB. The driver must be
    'Microsoft ODBC Driver for Oracle'.
  </listitem>
  <listitem>
    Grant rexecute on DSN to the SOAP_SO_S_14 user:
    GRANT REXECUTE on [Oracle DSN] to SOAP_SO_S_14;
  </listitem>
</itemizedlist>
</refsect1>
</refentry>
