www.openlinksw.com
docs.openlinksw.com

Book Home

Contents
Preface

Overview
Installation Guide
Quick Start & Tours
Sample ODBC & JDBC Applications
Conceptual Overview
Server Administration
Virtuoso Cluster Operation
Conductor Administration Interface
Data Access Interfaces
SQL Reference
Virtuoso Cluster Programming
SQL Procedure Language Guide
Database Event Hooks
Data Replication, Synchronization and Transformation Services
Web Application Development
XML Support
RDF Database and SPARQL
Web Services
SOAP
WSDL
WS-Security (WSS) Support in Virtuoso SOAP Server
Web Services Routing Protocol (WS-Routing)
Web Services Reliable Messaging Protocol (WS-ReliableMessaging)
Web Services Trust Protocol (WS-Trust)
XML for Analysis Provider
XML-RPC support
SyncML
UDDI
Exposing Persistent Stored Modules as Web Services
Testing Web Published Web Services
BPEL Reference
XSQL
Runtime Hosting
Internet Services
Free Text Search
TPC C Benchmark Kit
Using Virtuoso with Tuxedo
Appendix
Virtuoso Functions Guide

Abstract

The term Web Services describes an application of XML for exposing application functionality to disparate clients via the Web. This paradigm provides access to entire applications, modules, objects, functions, and methods via HTTP and other transport protocols. Web Services are inherently platform- and programming-language independent. Services can be developed in one language and consumed in another; this holds true irrespective of client or server host operating system combinations.

A collection of core XML-based specifications and standards work in concert to fulfill the Web services value proposition. These standards include:

Virtuoso enables stored procedures to be exposed as Web services that are consumable by any Web services-aware development tool, application, or environment. The stored procedures exposed by Virtuoso may be native stored procedures, or may be hosted in any third-party database that supports stored procedures, and is accessible via an ODBC or JDBC driver. In Virtuoso, exposing stored procedures as Web services does not require any programming effort. You simply identify the stored procedures to be exposed using the Virtuoso Administrative Interface.

This feature is immensely valuable in situations where organizations are seeking to transform time-tested stored procedures into Web Services without having to upgrade or change databases or host operating systems. In modern enterprises, such stored procedures drive mission-critical solutions; Virtuoso's approach to Web services enables you to maximize current investment while minimizing the need for rework.

Table of Contents

18.1. SOAP
18.1.1. Virtuoso SOAP Support Overview
18.1.2. Handling of SOAP HTTP Requests
18.1.3. Extending Datatypes for SOAP Objects
18.1.4. Inheritance of Datatypes for SOAP Objects
18.1.5. Complex Types in PL Procedure and UDT Method Definition
18.1.6. Complex Types in Procedure Definition using a pre-defined XML Schema datatypes
18.1.7. Default SOAP-SQL Datatype Mappings
18.1.8. Exposing Stored Procedures as SOAP Objects
18.1.9. Creation of SOAP proxy based on User Defined Types
18.1.10. Exposing User Defined Type Methods as SOAP Objects
18.1.11. Exposing Remote Third Party SQL Stored Procedures as SOAP Services
18.1.12. Virtuoso/PL SOAP Client
18.1.13. Execution Privileges
18.1.14. Custom Soap Server Support
18.1.15. PL Procedures and UDT Methods Syntax Affecting WSDL & SOAP Processing
18.1.16. Exposing & Processing SOAP Header Messages
18.1.17. Exposing & Processing SOAP Fault Messages
18.1.18. Document Literal Encoding
18.1.19. DIME encapsulation of SOAP messages
18.1.20. SOAP Endpoint Options
18.2. WSDL
18.2.1. Exposing Stored Procedures as WSDL Services
18.2.2. Exposing SQL Stored Procedures containing complex datatype definitions
18.2.3. Exposing Third Party SQL Stored Procedures as WSDL-Compliant Web Services
18.2.4. WSDL Descriptions of SOAP Header Messages
18.2.5. Importing A WSDL File & SOAP/WSDL Proxying
18.2.6. SOAP/WSDL Interoperability
18.3. WS-Security (WSS) Support in Virtuoso SOAP Server
18.3.1. Client and Server side Certificates & Keys
18.3.2. SOAP Server WS-Security Endpoint
18.3.3. Virtual Directory SOAP WSS Options
18.3.4. Accounting & Accounting Hook
18.3.5. Signature Templates
18.3.6. SOAP Client
18.4. Web Services Routing Protocol (WS-Routing)
18.4.1. Configuration
18.4.2. Traversing Message Paths
18.5. Web Services Reliable Messaging Protocol (WS-ReliableMessaging)
18.5.1. SOAP CLIENT API Extensions
18.5.2. WS-RM Sender API
18.5.3. WSRM Receiver API
18.5.4. WS-RM Protocol Endpoint Configuration
18.5.5. Message Examples
18.5.6. WS-RM Schema
18.6. Web Services Trust Protocol (WS-Trust)
18.7. XML for Analysis Provider
18.8. XML-RPC support
18.9. SyncML
18.10. UDDI
18.10.1. Concepts
18.10.2. Dealing with SOAP
18.10.3. Supported API Calls
18.10.4. Authorization Mechanism
18.10.5. UDDI API Calls
18.10.6. Examples
18.11. Exposing Persistent Stored Modules as Web Services
18.11.1. Publishing Stored Procedures as Web Services
18.11.2. XML Query Templates
18.11.3. Publishing VSE's as Web Services
18.12. Testing Web Published Web Services
18.13. BPEL Reference
18.13.1. Activities
18.13.2. Protocol Support
18.13.3. Process lifecycle
18.13.4. Using virtual directories
18.13.5. Process archiving
18.13.6. Configuration parameters
18.13.7. Process Statistics
18.13.8. Deployment file suitcase format
18.13.9. SQL API
18.13.10. BPEL XPath Functions
18.13.11. Tables
18.13.12. Errors
18.13.13. Samples
18.13.14. References
18.13.15. BPEL4WS VAD Package installation
18.14. XSQL
18.14.1. XSQL Syntax
18.14.2. XSQL Directives