Module Wsdl_ast

module Wsdl_ast: sig .. end
@(#)wsdl_ast.mli

Syntax tree representation of a wsdl description.

NOTE: For the time being, it is only a partial representation of the WSDL specifications. The "import" element is not supported. All the HTTP and SOAP bindings are not fully implemented.
Author(s): Nicola Onose
See also wsdl_load.mlp wsdl_load.mlp


type soapStyleChoice = 
| Soap_RPC
| Soap_Document
type soap_binding = {
   nms_prefix : Namespace_names.prefix;
   transport : Datatypes.xs_anyURI option;
   soap_binding_style : soapStyleChoice option;
   encodingStyleDefault : Datatypes.xs_anyURI option;
}
type soapUseChoice = 
| Literal
| Encoded
type soap_body = {
   soap_body_encodingStyle : Datatypes.xs_anyURI option;
   use : soapUseChoice option;
   soap_body_nms : Datatypes.xs_anyURI option;
}
type soap_header = {
   soap_header_element : Namespace_names.uqname option;
   soap_header_type : Namespace_names.uqname option;
   soap_header_localname : string option;
   soap_header_nms : Datatypes.xs_anyURI option;
   soap_header_encodingStyle : Datatypes.xs_anyURI option;
   soap_header_role : Datatypes.xs_anyURI option;
}
type soap_headerfault = {
   soap_headerfault_message : Namespace_names.uqname;
   soap_headerfault_part : string;
   soap_headerfault_nms : Datatypes.xs_anyURI option;
   soap_headerfault_encodingStyle : Datatypes.xs_anyURI option;
}
type soap_inout = soap_body option * soap_header list *
soap_headerfault list
type soap_fault = {
   soap_fault_prefix : Namespace_names.prefix;
   soap_fault_name : string;
   soap_fault_nms : Datatypes.xs_anyURI option;
   soap_fault_encodingStyle : Datatypes.xs_anyURI option;
}
type soap_operation = {
   nms_soap_operation : Namespace_names.prefix;
   soapAction : Datatypes.xs_anyURI option;
   soap_operation_style : soapStyleChoice option;
}
type soap_address = {
   nms_soap_address : Namespace_names.prefix;
   location : Datatypes.xs_anyURI;
}
type part_type_decl = 
| PartType of (Namespace_names.uri * Namespace_names.uqname)
| PartElement of (Namespace_names.uri * Namespace_names.uqname)
type part = {
   part_name : Namespace_names.ncname;
   part_type : part_type_decl;
}
type message = {
   message_name : Namespace_names.ncname;
   mutable message_parts : part list;
}
type operation_in_port_type = {
   operation_name : Namespace_names.ncname;
   input : Namespace_names.rqname option;
   output : Namespace_names.rqname option;
   faults : Namespace_names.rqname list;
}
type port_type = {
   port_type_name : Namespace_names.ncname;
   mutable operations : operation_in_port_type list;
   mutable extends : string option;
}
type operation_in_binding = {
   operation_in_binding_name : Namespace_names.ncname;
   binding_input : soap_inout option;
   binding_output : soap_inout option;
   binding_faults : soap_fault list;
   binding_soap_operation : soap_operation option;
   http_relative_uri : string option;
}
type service_binding = {
   binding_name : string;
   binding_type : Namespace_names.rqname;
   mutable bind_soap : soap_binding option;
   mutable binding_operations : operation_in_binding list;
   http_method : string;
}
type service_port = {
   service_port_name : Namespace_names.ncname;
   service_port_binding : Namespace_names.rqname;
   port_soap_address : soap_address option;
   http_base_uri : string option;
}
type service = {
   service_name : string;
   mutable ports : service_port list;
}
type service_schema = Xquery_type_ast.xschema 
type wsdl_module = {
   wsdl_name : string;
   mutable global_xmlns : Namespace_context.binding_table;
   mutable targetNamespace : Datatypes.xs_anyURI;
   mutable wsdl_services : service list;
   mutable wsdl_types : service_schema option;
   mutable wsdl_bindings : service_binding list;
   mutable wsdl_port_types : port_type list;
   mutable wsdl_messages : message list;
   mutable soapenv_prefix_name : Namespace_names.ncname;
   mutable xsi_prefix_name : Namespace_names.ncname;
   mutable xsd_prefix_name : Namespace_names.ncname;
}
wsdl_module contains all the information in the definitions element that is considered significant