<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[
I'd like to introduce to Zend Framework a new layer to check/validates values returned in a SOAP response against what user declared in the schema through auto discovery system.Zend Framework: Zend_Soap_SimpleTypeValuesValidator Component Proposal
Proposed Component Name
Zend_Soap_SimpleTypeValuesValidator
Developer Notes
http://framework.zend.com/wiki/display/ZFDEV/Zend_Soap_SimpleTypeValuesValidator
Proposers
Jeannie BOFFEL
Zend Liaison
TBD
Revision
1.0 - 07 December 2010: Initial Draft. (wiki revision: 5)
Table of Contents
1. Overview
2. References
3. Component Requirements, Constraints, and Acceptance Criteria
- This component will add support for checking validity of values against XSD declaration from auto discovery support.
- This component will not make sure values are meaningful.
- This component will not validate the XSD generated. Meanning we don't prevent user from doing wrong XSD by adding unexisting attribute to an element for example.
- This component will not be exhaustive and will not support all XSD features immediately.
4. Dependencies on Other Framework Components
- PHP >= 5.3.0
- Zend_Soap
- Zend_Soap_AutoDiscovery
- Zend_Soap_Zend_Soap_Wsdl_Strategy_DefaultComplexType (modified by proposal)
5. Theory of Operation
The component is instantiated through extending of class.
6. Milestones / Tasks
- Feature Request 1: Support more XSD base type than just PHP variable base set type.
- Milestone #: [DONE] Design
- Milestone #: [DONE] Proof of concept by implement new complex type and simple type value checking
- Milestone #: [DONE] Start support of all base type compatible with PHP variable base set type
- Milestone #: [DONE] Start support of user defined type through SimpleType in XSD
- Milestone 1: Working prototype checked into the incubator supporting use cases #1.
- Milestone 2: Unit tests exist, work, and are checked into SVN.
- Milestone 3: Initial documentation exists.
7. Class Index
- Zend_Soap_SimpleTypeValuesValidator
8. Use Cases
| UC-01 |
|---|
Definition of one simple type and call its extended test method.
Output should be like:
boolean true
boolean false
| UC-02 |
|---|
Again with an union of simple type.
Output should be like:
boolean true
boolean true
boolean false
| UC-03 |
|---|
Again with a list of simple type (using previous union definition too).
Output should be like:
boolean true
boolean false