<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
xmlns:p ="http://www.mafia.it/pizzas">
<soap:Header>
<p:priority> urgente </p:priority>
<p:origin>pepe@oviedo.es</p:origin>
</soap:Header>
<soap:Body>
<p:order>
<p:pizza nombre="Margarita">
<p:size>familiar</p:size>
<p:comment>con mucho queso
</p:comment>
</p:pizza>
</p:order>
</soap:Body>
</soap:Envelope>
envelope
contiene: header
(opcional) y body
(obligatorio)body
contiene datos en formato XMLheader
contiene meta-informaciónfault
definitions
incluye las siguientes entradas:
types
: Tipos de datos usados en los mensajes (XML Schema)
message
: Definición abstracta de los datos transmitidos.
portType
: Conjunto de operaciones abstractas
binding
: Protocolo concreto y especificaciones
de las operaciones del mensaje
port
: Especifica una dirección para el
enlace definiendo un único punto de destinoservice
: Colección de puntos de destino
<?xml version="1.0"?>
<definitions name="Pizzas"
targetNamespace="http://mafia.it/pizzas.wsdl"
xmlns:tns="http://mafia.it/pizzas.wsdl"
xmlns:xsd1="http://mafia.it/pizzas.xsd"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<schema targetNamespace="http://mafia.it/pizzas.xsd"
xmlns="http://www.w3.org/2000/10/XMLSchema">
<element name="PrecioPizzaRequest">
<complexType>
<all>
<element name="nombrePizza" type="string"/>
</all>
</complexType>
</element>
<element name="PrecioPizza">
<complexType>
<all>
<element name="price" type="float"/>
</all>
</complexType>
</element>
</schema>
</types>
<message name="precioPizzaInput">
<part name="body" element="xsd1:PrecioPizzaRequest"/>
</message>
<message name="precioPizzaOutput">
<part name="body" element="xsd1:precioPizza"/>
</message>
<portType name="PizzasPortType">
<operation name="verPrecio">
<input message="tns:precioPizzaInput"/>
<output message="tns:precioPizzaOutput"/>
</operation>
</portType>
<binding name="PizzasSoapBinding"
type="tns:PizzasPortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="precioPizza">
<soap:operation soapAction="http://mafia.it/Pizzas"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="PizzasService">
<documentation>Ejemplo de servicio</documentation>
<port name="PizzasPort"
binding="tns:PizzasSoapBinding">
<soap:address location="http://mafia.it/Pizzas"/>
</port>
</service>
</definitions>
tModel
: Descripción de especificaciones de servicios