On Oct 10, 2005, at 10:28 AM, Christian Wenz wrote:
Hi George,
unfortunately, the list server strips attachments :-(
Inlining here. Basically, test 81 tests an empty restriction, which
gsoap and .Net both interperet as the child being a copy of the base
class. My test49 seems to comply with the XMLSchema defintion of
restriction (which is that children via restriction results in the
child being a subset of the base).
George
# Test 49
--TEST--
SOAP XML Schema 49: Restriction of complex type (2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
include "test_schema.inc";
$schema = <<<EOF
<complexType name="testType2">
<sequence>
<element name="int" type="int"/>
<element name="int2" type="int"/>
</sequence>
</complexType>
<complexType name="testType">
<complexContent>
<restriction base="tns:testType2">
<sequence>
<element name="int"
type="int"/>
</sequence>
</restriction>
</complexContent>
</complexType>
EOF;
test_schema($schema,'type="tns:testType"',(object)array("int"=>123.5,
"int2"=>123.5));
echo "ok";
?>
--EXPECTF--
<?xml version="1.0" encoding="UTF-8"?>
<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</int2></testParam></ns1:test></SOAP-ENV:Body></
SOAP-ENV:Envelope>
object(stdClass)#%d (1) {
["int2"]=>
int(123)
}
ok
# Test 81
--TEST--
SOAP XML Schema 81: Deriviation by restriction from acomplex type
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
include "test_schema.inc";
$schema = <<<EOF
<complexType name="testType2">
<sequence>
<element name="int" type="int"/>
</sequence>
</complexType>
<complexType name="testType">
<complexContent>
<restriction base="tns:testType2"/>
</complexContent>
</complexType>
EOF;
test_schema($schema,'type="tns:testType"',(object)array("int"=>123.5));
echo "ok";
?>
--EXPECTF--
<?xml version="1.0"?>
<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>
object(stdClass)#%d (2) {
["int"]=>
int(123)
}
ok
--
PHP Soap Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php