Did you know ... Search Documentation:
Pack wsdl -- prolog/wsdl.pl
PublicShow source

This library reads WSDL files using wsdl_read/1, which asserts facts about the WSDL interface in the calling module. The provided interface can be queried using wsdl_function/6.

The current version concentrates on the SOAP binding. There is partial support for other bindings.

We assume (but verify) that:

  • SOAP bindings use style document and transport http
  • Parameters use literal
 wsdl_ensure_loaded(:File) is det
True if File is loaded into the context.
 wsdl_read(:File) is det
Read operations from a WSDL file. This operation creates a number of predicates in the calling module:
  • wsdl_operation(PortType, Operation, Input, Output) Where PortType is `library', Operation is the concrete operation and Input/Output are message names that describes the input and output types.
  • wsdl_message(Type, Params) Defines the message types for input and output. Params is a list Name:Type.
  • wsdl_binding(PortType, Binding, Style, Transport) General properties of the binding. Style must be document and Transport must be http.
  • wsdl_binding_operation(Binding, Operation, Action, Version, Input, Output) Binding for a specific Operation. Action is the URL, and Input/Output document the encoding style. This is always literal
  • wsdl_port(Binding, URL) HTTP location to contact for Binding.
 wsdl_function(:Name, -Version, -URL, -Action, -Input, -Output) is nondet