1--TEST-- 2SOAP XML Schema 32: Structure (choice) 3--EXTENSIONS-- 4soap 5xml 6--FILE-- 7<?php 8include "test_schema.inc"; 9$schema = <<<EOF 10 <complexType name="testType"> 11 <choice> 12 <element name="int" type="int"/> 13 <element name="str" type="string"/> 14 </choice> 15 </complexType> 16EOF; 17test_schema($schema,'type="tns:testType"',(object)array("int"=>123.5)); 18echo "ok"; 19?> 20--EXPECTF-- 21<?xml version="1.0" encoding="UTF-8"?> 22<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:test><testParam xsi:type="ns1:testType"><int xsi:type="xsd:int">123</int></testParam></ns1:test></SOAP-ENV:Body></SOAP-ENV:Envelope> 23object(stdClass)#%d (1) { 24 ["int"]=> 25 int(123) 26} 27ok 28