mirror of
https://github.com/php/php-src.git
synced 2024-11-25 10:54:15 +08:00
112 lines
3.3 KiB
Plaintext
112 lines
3.3 KiB
Plaintext
General
|
|
-------
|
|
- rename soapobject to soapclient
|
|
- make sure soapserver.map(), soap_encode_to_xml() and soap_encode_to_zval() are really need
|
|
- reimplement SoapObject::__getfunctions() and SoapObject::__gettypes()
|
|
to return structures instead of strings
|
|
- memory leaks (libxml and WSDL/Schema use malloc to cache WSDL)
|
|
|
|
|
|
SOAP
|
|
----
|
|
- SOAP message MUST NOT contain Processing Instructions <?xml-stylesheet ... ?> (XML_PI_NODE)
|
|
- support for SOAP headers
|
|
- actor attribute
|
|
- mustUnderstend attribute
|
|
- root attribute
|
|
- make sure soap 1.1 and 1.2 are supported fully
|
|
|
|
Encoding
|
|
--------
|
|
? full support for standard simple types (
|
|
? language, (pattern: "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*")
|
|
? NMTOKEN, (pattern: "\c+") (\c: [a-zA-Z0-9.\-_:])
|
|
? NMTOKENS, (list: NMTOKEN, minLength: 1)
|
|
? Name, (pattern: "\i\c*") (\i: [a-zA-Z_:]
|
|
? NCName, (pattern: "[\i-[:]][\c-[:]]*")
|
|
? ID, (base: NCName)
|
|
? IDREF, (base: NCName)
|
|
? IDREFS, (list: IDREF; minLength: 1)
|
|
? ENTITY, (base: NCName)
|
|
? ENTITIES, (list: ENTITY; minLength: 1)
|
|
? duration)
|
|
? full support for standard date/time types (
|
|
? dateTime,
|
|
? time,
|
|
? date,
|
|
? gYearMonth,
|
|
? gYear,
|
|
? gMonthDay,
|
|
? gDay,
|
|
? gMonth)
|
|
? proper encoding of standard hexBinary type
|
|
? proper encoding of standard base64Binary type
|
|
? full support for arrays
|
|
- SOAP 1.1 encoding of arrays with holes (partially transmitted and sparse arrays)
|
|
SOAP 1.2 doesn't support partially transmitted and sparse arrays
|
|
- references to external resources
|
|
? support for "nillable" and "nil"
|
|
- default values of <element>
|
|
? provide schema 1999/2001 support???
|
|
? make internal refrences for soap encoding (use seralization logic)???
|
|
? provide user space overriding of serialization certin objects and types???
|
|
|
|
WSDL
|
|
----
|
|
- support for portType operation parameterOrder attribute
|
|
- support for binding operation input/output name attribute (part of overloading)
|
|
- support for <opperation> <fault>
|
|
- support for style "rpc"/"document" encoding (server part)
|
|
How to get function name from request? May be SoapAction HTTP header?
|
|
- function/method overloading/redeclaration (test(int); test(string))
|
|
- wsdl caching
|
|
- wsdl auto generation
|
|
? SOAP binding
|
|
- <soap:body> parts attribute
|
|
- <soap:fault>
|
|
- <soap:header> and <soap:headerfault>
|
|
- HTTP GET/POST binding
|
|
- MIME binding
|
|
- SOAP 1.2 bindings???
|
|
|
|
Schema
|
|
------
|
|
- <redefine>
|
|
? support for user defined simple types
|
|
? restiction
|
|
? enumeration
|
|
? length (for string, anyURI, hexBinary, base64Binary and derived) list???
|
|
? minLength (for string, hexBinary, base64Binary and derived) list???
|
|
? maxLength (for string, hexBinary, base64Binary and derived) list???
|
|
+ whiteSpace (preserve, replace [#x9,#xA,#xD=>#x20], collapse [replace+?])
|
|
- pattern
|
|
- minExclusive (for numeric, date types)
|
|
- minInclusive (for numeric, date types)
|
|
- maxExclusive (for numeric, date types)
|
|
- maxInclusive (for numeric, date types)
|
|
- totalDigits (for decimal)
|
|
- fractionDigits (for decimal)
|
|
? union
|
|
? support for user defined complex types
|
|
? full support for content model encoding/decoding
|
|
|
|
Error Handling
|
|
--------------
|
|
- ???
|
|
|
|
Transport
|
|
---------
|
|
? HTTP status codes
|
|
? HTTP chunked Transfer-Encoding
|
|
- support for HTTP compression (gzip,x-gzip,defalte)
|
|
- transport abstraction layer???
|
|
|
|
UDDI
|
|
----
|
|
- ???
|
|
|
|
Interop Testing
|
|
---------------
|
|
- more rounds/groups
|
|
- ???
|