From: thomas dot wetzler at siemens dot com Operating system: SUN OS PHP version: 5.0.4 PHP Bug Type: DOM XML related Bug description: Bug in function "schemaValidate"
Description: ------------ To validate a dataset, I try to generate a XML-Schema with the help of an database-definition. The Schema-file is correctly build. XMLSpy works with it fine... but if I try to run the same files with php, php reports a failure. Reproduce code: --------------- test.php: #!/wir/webadmin/share/php504/bin/php <? $xml = new DOMDocument(); $xml->load('gd.xml'); if ($xml->schemaValidate("gd.xsd")) { echo "Validated OK"; } else { echo "Validate FAILED"; } ?> -------------------------------------------- gd.xml: <?xml version="1.0" encoding="iso-8859-1"?> <!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) --> <element xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="D:\gp.xsd"> <subelement> <header>PN</header> <content> 10149764</content> </subelement> <subelement> <header>DT</header> <content> DEB4 PATENTSCHRIFT</content> </subelement> <subelement> <header>PA</header> <content> Huettlin, Herbert, Dr.h.c., 79539 Loerrach, DE.</content> </subelement> <subelement> <header>IN</header> <content> Huettlin, Herbert, Dr.h.c., 79539 Loerrach, DE.</content> </subelement> </element> -------------------------------------------------------- gd.xsd: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:attributeGroup name="controlsequences"> <xs:attribute name="pre" type="xs:string"/> <xs:attribute name="post" type="xs:string"/> </xs:attributeGroup> <xs:complexType name="type_subelement"> <xs:choice> <xs:sequence> <xs:element name="header" type="columns" fixed="AN"/> <xs:element name="content" type="type_an"/> </xs:sequence> <xs:sequence> <xs:element name="header" type="columns" fixed="PN"/> <xs:element name="content" type="type_pn"/> </xs:sequence> <xs:sequence> <xs:element name="header" type="columns" fixed="IN"/> <xs:element name="content" type="type_in"/> </xs:sequence> <xs:sequence> <xs:element name="header" type="columns" fixed="PA"/> <xs:element name="content" type="type_pa"/> </xs:sequence> <xs:sequence> <xs:element name="header" type="columns" fixed="DT"/> <xs:element name="content" type="type_dt"/> </xs:sequence> </xs:choice> </xs:complexType> <xs:simpleType name="columns"> <xs:restriction base="xs:string"> <xs:enumeration value="AN"/> <xs:enumeration value="PN"/> <xs:enumeration value="IN"/> <xs:enumeration value="PA"/> <xs:enumeration value="DT"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="type_an"> <xs:restriction base="xs:string"> <xs:maxLength value="80"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="type_pn"> <xs:restriction base="xs:string"> <xs:maxLength value="1600"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="type_in"> <xs:restriction base="xs:string"> <xs:maxLength value="1600"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="type_pa"> <xs:restriction base="xs:string"> <xs:maxLength value="1600"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="type_dt"> <xs:restriction base="xs:string"> <xs:maxLength value="1600"/> </xs:restriction> </xs:simpleType> <xs:element name="subelement" type="type_subelement"/> <xs:element name="element"> <xs:complexType> <xs:sequence> <xs:element ref="subelement" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> Expected result: ---------------- Validated OK Actual result: -------------- Warning: Element decl. 'subelement': The content model is not determinist. in /wir/searchservertest/src/load_db/xml_parser/test.php on line 6 Warning: Invalid Schema in /wir/searchservertest/src/load_db/xml_parser/test.php on line 6 Validate FAILED -- Edit bug report at http://bugs.php.net/?id=33880&edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=33880&r=trysnapshot4 Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=33880&r=trysnapshot50 Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=33880&r=trysnapshot51 Fixed in CVS: http://bugs.php.net/fix.php?id=33880&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=33880&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=33880&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=33880&r=needscript Try newer version: http://bugs.php.net/fix.php?id=33880&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=33880&r=support Expected behavior: http://bugs.php.net/fix.php?id=33880&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=33880&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=33880&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=33880&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=33880&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=33880&r=dst IIS Stability: http://bugs.php.net/fix.php?id=33880&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=33880&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=33880&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=33880&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=33880&r=mysqlcfg