1--TEST-- 2XMLReader: libxml2 XML Reader, setRelaxNGSchema 3--SKIPIF-- 4<?php if (!extension_loaded("xmlreader")) print "skip"; ?> 5--FILE-- 6<?php 7 8$xmlstring = '<TEI.2>hello</TEI.2>'; 9$relaxngfile = dirname(__FILE__) . '/relaxNG.rng'; 10$file = dirname(__FILE__) . '/_007.xml'; 11file_put_contents($file, $xmlstring); 12 13$reader = new XMLReader(); 14$reader->open($file); 15 16if ($reader->setRelaxNGSchema($relaxngfile)) { 17 while ($reader->read()); 18} 19if ($reader->isValid()) { 20 print "file relaxNG: ok\n"; 21} else { 22 print "file relaxNG: failed\n"; 23} 24$reader->close(); 25unlink($file); 26 27 28$reader = new XMLReader(); 29$reader->XML($xmlstring); 30 31if ($reader->setRelaxNGSchema($relaxngfile)) { 32 while ($reader->read()); 33} 34if ($reader->isValid()) { 35 print "string relaxNG: ok\n"; 36} else { 37 print "string relaxNG: failed\n"; 38} 39 40$reader->close(); 41 42$reader = new XMLReader(); 43$reader->XML($xmlstring); 44 45if ($reader->setRelaxNGSchema('')) { 46 echo 'failed'; 47} 48$reader->close(); 49?> 50===DONE=== 51--EXPECTF-- 52file relaxNG: ok 53string relaxNG: ok 54 55Warning: XMLReader::setRelaxNGSchema(): Schema data source is required in %s on line %d 56===DONE=== 57