SOAP-WSDL

 view release on metacpan or  search on metacpan

lib/SOAP/WSDL/Manual/WS_I.pod  view on Meta::CPAN

=head2 R1111

 An INSTANCE SHOULD use a "200 OK" HTTP status code for responses
 that contain a SOAP message that is not a SOAP fault.

SOAP::WSDL::Server::CGI does this.

=head2 R1112

 An INSTANCE SHOULD use either a "200 OK" or "202 Accepted" HTTP
 status code for a response that does do not contain a SOAP message
 but indicates successful HTTP outcome of a request.

SOAP::WSDL::Server::CGI does this.

=head2 R1130

 An INSTANCE MUST use HTTP status code "307 Temporary Redirect"
 when redirecting a request to a different endpoint.

SOAP::WSDL::Server::CGI has no means of redirecting. The web server running
a SOAP::WSDL::Server::CGI script is responsible for redirecting with a 307
HTTP status code.

=head2 R1125

 An INSTANCE MUST use a 4xx HTTP status code for responses that indicate
 a problem with the format of the request.

SOAP::WSDL does this.

=head2 R1113

 An INSTANCE SHOULD use a "400 Bad Request "HTTP status code, if the
 request message is a malformed HTTP request, or not well-formed XML.

SOAP::WSDL does this.

=head2 R1114

 An INSTANCE SHOULD use a "405 Method not Allowed" HTTP status code if the
 request method was not "POST".

SOAP::WSDL does this.

=head2 R1115

 An INSTANCE SHOULD use a "415 Unsupported Media Type" HTTP status code if
 the Content-Type HTTP request header did not have a value consistent with
 the value specified for the corresponding binding of the input message.

SOAP::WSDL::Server::CGI does not support any content type other than text/xml
and application/xml yet.


=head1 RULES NOT CONFIRMED

=head2 R4001

 A RECEIVER MUST accept messages that include the Unicode Byte Order Mark
 (BOM).

May automatically work with XML::Parser::Expat, but is not tested yet.

TODO write test. If not confirmed, add encoding support.

=head2 R1002

 A RECEIVER MUST accept fault messages that have any number of elements,
 including zero, appearing as children of the detail element. Such children
 can be qualified  or unqualified.

Partially confirmed: This only works when the fault detail elements are added to
the deserializer's typemap.

TODO add processing of arbitrary content of faults to SOAP::WSDL::Expat::MessageParser

=head2 R1003

 A RECEIVER MUST accept fault messages that have any number of qualified or
 unqualified attributes, including zero, appearing on the detail element.
 The namespace of qualified attributes can be anything other than
 "http://schemas.xmlsoap.org/soap/envelope/".

TODO add processing of arbitrary attributes to SOAP::WSDL::SOAP::Typelib::Fault11

=head2 R1016

 A RECEIVER MUST accept fault messages that carry an xml:lang attribute on
 the faultstring element.

SOAP::WSDL::Expat::MessageParser currently ignores all attributes.

TODO add processing of the xml:lang attribute to SOAP::WSDL::SOAP::Typelib::Fault11

=head2 R1007

 A MESSAGE described in an rpc-literal binding MUST NOT contain soap:encodingStyle
 attribute on any elements are grandchildren of soap:Body.

SOAP::WSDL::Serializer::SOAP11 does not add soap:encodingStyle attributes on any
element.

However, rpc-literal bindings are not supported, yet.

TODO support rpc-literal bindings.

=head2 R2008

 In a DESCRIPTION the value of the location attribute of a wsdl:import element
 SHOULD be treated as a hint.

The wsdl:import element imports the referenced WSDL definition.

This is rather hard-wired and does not allow one to specify a wsdl:import without
a resolvable location in SOAP::WSDL.

=head2 R4002

 A DESCRIPTION MAY include the Unicode Byte Order Mark (BOM).

TODO Test.

=head2 R4003

 A DESCRIPTION MUST use either UTF-8 or UTF-16 encoding.

TODO Test whether UTF-16 works.

=head2 R2020

 The wsdl:documentation element MAY occur as a child of the wsdl:import
 element in a DESCRIPTION.

Not tested yet.

=head2 R2024

 The wsdl:documentation element MAY occur as a first child of the
 wsdl:definitions element in a DESCRIPTION.

TODO Test.

=head2 R2027

 If during the processing of an element in the WSDL namespace in a
 description, a consumer encounters a WSDL extension element amongst
 its element children, that has a wsdl:required attribute with a boolean
 value of "true" that the consumer does not understand or cannot process,
 the CONSUMER MUST fail processing of that element in the WSDL namespace.

TODO Implement support for wsdl:required

=head2 R2750

 A CONSUMER MUST ignore a SOAP response carried in a response from a
 one-way operation.

SOAP::WSDL does not ignore the SOAP response from a one way operation yet.

TODO Define operation type signature, and ignore result from one way operations.

=head2 R2747

 A CONSUMER MUST understand and process all WSDL 1.1 SOAP Binding extension
 elements, irrespective of the presence or absence of the wsdl:required
 attribute on an extension element; and irrespective of the value of the
 wsdl:required attribute, when present.

SOAP::WSDL does not implement all WSDL 1.1 SOAP Binding extension yet.

TODO check and implement.

=head2 R2800

 A DESCRIPTION MAY use any construct from XML Schema 1.0.

SOAP::WSDL's WSDL parser doen not allow all constructs from XML Schema 1.0 to
be used.

lib/SOAP/WSDL/Manual/WS_I.pod  view on Meta::CPAN


SOAP::WSDL::Server::CGI does not use cookies. A web server running a
SOAP::WSDL::Server::CGI script may use cookies.

=head2 R2028

 A DESCRIPTION using the WSDL namespace (prefixed "wsdl" in this Profile)
 MUST be valid according to the XML Schema found at
 "http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd".

See 2029.

=head2 R2029

 A DESCRIPTION using the WSDL SOAP binding namespace (prefixed "soapbind"
 in this Profile) MUST be valid according to the XML Schema found at
 "http://schemas.xmlsoap.org/wsdl/soap/2003-02-11.xsd".

Although the Profile requires WSDL descriptions to be Schema valid,
it does not require consumers to validate WSDL documents.

It is the responsibility of a WSDL document's author to assure that it
is Schema valid.

=head2 R2001

 A DESCRIPTION MUST only use the WSDL "import" statement to import another
 WSDL description.

SOAP::WSDL (partially) supports the wsdl:import statement. The wsdl:include
statement is not supported.

It's the responsibility of the WSDL author to use only the wsdl:import
statement for importing WSDL descriptions.

=head2 R2002

 To import XML Schema Definitions, a DESCRIPTION MUST use the XML Schema
 "import" statement.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2003

 A DESCRIPTION MUST use the XML Schema "import" statement only within the
 xsd:schema element of the types section.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2004

 A DESCRIPTION MUST NOT use the XML Schema "import" statement to import a
 Schema from any document whose root element is not "schema" from the
 namespace "http://www.w3.org/2001/XMLSchema".

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2009

 An XML Schema directly or indirectly imported by a DESCRIPTION MAY include
 the Unicode Byte Order Mark (BOM).

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2010

 An XML Schema directly or indirectly imported by a DESCRIPTION MUST
 use either UTF-8 or UTF-16 encoding.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2011

 An XML Schema directly or indirectly imported by a DESCRIPTION MUST use
 version 1.0 of the eXtensible Markup Language W3C Recommendation.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2007

 A DESCRIPTION MUST specify a non-empty location attribute on the wsdl:import
 element.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2022

 When they appear in a DESCRIPTION, wsdl:import elements MUST precede all
 other elements from the WSDL namespace except wsdl:documentation.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2023

 When they appear in a DESCRIPTION, wsdl:types elements MUST precede all
 other elements from the WSDL namespace except wsdl:documentation and
 wsdl:import.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R4004

 A DESCRIPTION MUST use version 1.0 of the eXtensible Markup Language W3C
 Recommendation.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2005

 The targetNamespace attribute on the wsdl:definitions element of a
 description that is being imported MUST have same the value as the
 namespace attribute on the wsdl:import element in the importing
 DESCRIPTION.

SOAP::WSDL has no means of generating WSDL definitions.

=head2 R2021

 The wsdl:documentation element MAY occur as a child of the wsdl:part
 element in a DESCRIPTION.



( run in 2.028 seconds using v1.01-cache-2.11-cpan-437f7b0c052 )