General ------- - 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) - error handling??? SOAP ---- + support for SOAP headers ? actor attribute + mustUnderstend attribute - SOAP routing - 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 ? 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 ? server part support for "document" style encoding - function/method overloading/redeclaration (test(int); test(string)) - wsdl caching - wsdl auto generation ? SOAP binding - parts attribute - - - HTTP GET/POST binding - MIME binding - SOAP 1.2 bindings??? Schema ------ - ? 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 Transport --------- ? HTTP status codes ? HTTP chunked Transfer-Encoding - support for HTTP compression (gzip,x-gzip,defalte) - transport abstraction layer??? Interop Testing --------------- - more introp rounds/groups UDDI ---- - ???