summaryrefslogtreecommitdiff
path: root/ext/xml/tests
diff options
context:
space:
mode:
Diffstat (limited to 'ext/xml/tests')
-rw-r--r--ext/xml/tests/bug25666.phpt34
-rw-r--r--ext/xml/tests/bug26528.phpt27
-rw-r--r--ext/xml/tests/bug26614.phpt88
-rw-r--r--ext/xml/tests/bug30266.phpt48
-rw-r--r--ext/xml/tests/bug32001.phpt484
-rw-r--r--ext/xml/tests/inc.ent1
-rw-r--r--ext/xml/tests/skipif.inc10
-rw-r--r--ext/xml/tests/xml001.phpt99
-rw-r--r--ext/xml/tests/xml002.phpt100
-rw-r--r--ext/xml/tests/xml003.phpt98
-rw-r--r--ext/xml/tests/xml004.phpt64
-rw-r--r--ext/xml/tests/xml006.phpt12
-rw-r--r--ext/xml/tests/xml007.phpt53
-rw-r--r--ext/xml/tests/xml009.phpt34
-rw-r--r--ext/xml/tests/xml010.phpt38
-rw-r--r--ext/xml/tests/xmltest.xml20
16 files changed, 0 insertions, 1210 deletions
diff --git a/ext/xml/tests/bug25666.phpt b/ext/xml/tests/bug25666.phpt
deleted file mode 100644
index ce67ea8ed4..0000000000
--- a/ext/xml/tests/bug25666.phpt
+++ /dev/null
@@ -1,34 +0,0 @@
---TEST--
-Bug #25666 (XML namespaces broken in libxml-based SAX interface)
---SKIPIF--
-<?php
-if (! @xml_parser_create_ns('ISO-8859-1')) { die("skip xml_parser_create_ns is not supported on this plattform");}
-?>
---FILE--
-<?php
-function start_elem($parser,$name,$attribs) {
- var_dump($name);
-}
-function end_elem()
-{
-}
-
-$xml = <<<HERE
-<foo:a xmlns:foo="http://example.com/foo"
- xmlns:bar="http://example.com/bar"
- xmlns:baz="http://example.com/baz">
- <bar:b />
- <baz:c />
-</foo>
-HERE;
-
-$parser = xml_parser_create_ns("ISO-8859-1","@");
-xml_set_element_handler($parser,'start_elem','end_elem');
-xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0);
-xml_parse($parser, $xml);
-xml_parser_free($parser);
-?>
---EXPECT--
-string(24) "http://example.com/foo@a"
-string(24) "http://example.com/bar@b"
-string(24) "http://example.com/baz@c"
diff --git a/ext/xml/tests/bug26528.phpt b/ext/xml/tests/bug26528.phpt
deleted file mode 100644
index 2fa015a84d..0000000000
--- a/ext/xml/tests/bug26528.phpt
+++ /dev/null
@@ -1,27 +0,0 @@
---TEST--
-Bug #26528 (HTML entities are not being decoded)
---FILE--
-<?php
- $sample = "<?xml version=\"1.0\"?><test attr=\"angle&lt;bracket\"/>";
- $parser = xml_parser_create();
- $res = xml_parse_into_struct($parser,$sample,$vals,$index);
- xml_parser_free($parser);
- var_dump($vals);
-?>
---EXPECT--
-array(1) {
- [0]=>
- array(4) {
- ["tag"]=>
- string(4) "TEST"
- ["type"]=>
- string(8) "complete"
- ["level"]=>
- int(1)
- ["attributes"]=>
- array(1) {
- ["ATTR"]=>
- string(13) "angle<bracket"
- }
- }
-}
diff --git a/ext/xml/tests/bug26614.phpt b/ext/xml/tests/bug26614.phpt
deleted file mode 100644
index 14a4ea8a9f..0000000000
--- a/ext/xml/tests/bug26614.phpt
+++ /dev/null
@@ -1,88 +0,0 @@
---TEST--
-Bug #26614 (CDATA sections skipped on line count)
---FILE--
-<?php
-/*
-this test works fine with Expat but fails with libxml
-which we now use as default
-
-further investigation has shown that not only line count
-is skippet on CDATA sections but that libxml does also
-show different column numbers and byte positions depending
-on context and in opposition to what one would expect to
-see and what good old Expat reported just fine ...
-*/
-
-$xmls = array();
-
-// Case 1: CDATA Sections
-$xmls["CDATA"] ='<?xml version="1.0" encoding="iso-8859-1" ?>
-<data>
-<![CDATA[
-multi
-line
-CDATA
-block
-]]>
-</data>';
-
-// Case 2: replace some characters so that we get comments instead
-$xmls["Comment"] ='<?xml version="1.0" encoding="iso-8859-1" ?>
-<data>
-<!-- ATA[
-multi
-line
-CDATA
-block
--->
-</data>';
-
-// Case 3: replace even more characters so that only textual data is left
-$xmls["Text"] ='<?xml version="1.0" encoding="iso-8859-1" ?>
-<data>
--!-- ATA[
-multi
-line
-CDATA
-block
----
-</data>';
-
-function startElement($parser, $name, $attrs) {
- printf("<$name> at line %d, col %d (byte %d)\n",
- xml_get_current_line_number($parser),
- xml_get_current_column_number($parser),
- xml_get_current_byte_index($parser));
-}
-
-function endElement($parser, $name) {
- printf("</$name> at line %d, col %d (byte %d)\n",
- xml_get_current_line_number($parser),
- xml_get_current_column_number($parser),
- xml_get_current_byte_index($parser));
-}
-
-function characterData($parser, $data) {
- // dummy
-}
-
-foreach ($xmls as $desc => $xml) {
- echo "$desc\n";
- $xml_parser = xml_parser_create();
- xml_set_element_handler($xml_parser, "startElement", "endElement");
- xml_set_character_data_handler($xml_parser, "characterData");
- if (!xml_parse($xml_parser, $xml, true))
- echo "Error: ".xml_error_string(xml_get_error_code($xml_parser))."\n";
- xml_parser_free($xml_parser);
-}
-?>
---EXPECT--
-CDATA
-<DATA> at line 2, col 0 (byte 45)
-</DATA> at line 9, col 0 (byte 90)
-Comment
-<DATA> at line 2, col 0 (byte 45)
-</DATA> at line 9, col 0 (byte 90)
-Text
-<DATA> at line 2, col 0 (byte 45)
-</DATA> at line 9, col 0 (byte 90)
diff --git a/ext/xml/tests/bug30266.phpt b/ext/xml/tests/bug30266.phpt
deleted file mode 100644
index ebc0a270c7..0000000000
--- a/ext/xml/tests/bug30266.phpt
+++ /dev/null
@@ -1,48 +0,0 @@
---TEST--
-Bug #30266 (Invalid opcode 137/1/8)
---FILE--
-<?php
-/*
-
-Currently (Feb 10, 2005) CVS HEAD fails with the following message:
-
-Fatal error: Invalid opcode 137/1/8. in /home/hartmut/projects/php/dev/head/ext/xml/tests/bug30266.php on line 22
-
-*/
-class XML_Parser
-{
- public $dummy = "a";
-
- function parse($data)
- {
- $parser = xml_parser_create();
-
- xml_set_object($parser, $this);
-
- xml_set_element_handler($parser, 'startHandler', 'endHandler');
-
- xml_parse($parser, $data, true);
-
- xml_parser_free($parser);
- }
-
- function startHandler($XmlParser, $tag, $attr)
- {
- $this->dummy = "b";
- throw new Exception("ex");
- }
-
- function endHandler($XmlParser, $tag)
- {
- }
-}
-
-$p1 = new Xml_Parser();
-try {
- $p1->parse('<tag1><tag2></tag2></tag1>');
-} catch (Exception $e) {
- echo "OK\n";
-}
-?>
---EXPECT--
-OK
diff --git a/ext/xml/tests/bug32001.phpt b/ext/xml/tests/bug32001.phpt
deleted file mode 100644
index 26bf58427c..0000000000
--- a/ext/xml/tests/bug32001.phpt
+++ /dev/null
@@ -1,484 +0,0 @@
---TEST--
-Bug #32001 (xml_parse*() goes into infinite loop when autodetection in effect)
---SKIPIF--
-<?php
- if (!extension_loaded('iconv')) print 'skip';
-?>
---FILE--
-<?php
-class testcase {
- private $encoding;
- private $bom;
- private $prologue;
- private $tags;
- private $chunk_size;
-
- function testcase($enc, $chunk_size = 0, $bom = 0, $omit_prologue = 0) {
- $this->encoding = $enc;
- $this->chunk_size = $chunk_size;
- $this->bom = $bom;
- $this->prologue = !$omit_prologue;
- $this->tags = array();
- }
-
- function start_element($parser, $name, $attrs) {
- $attrs = array_map('bin2hex', $attrs);
- $this->tags[] = bin2hex($name).": ".implode(', ', $attrs);
- }
-
- function end_element($parser, $name) {
- }
-
- function run() {
- $data = '';
-
- if ($this->prologue) {
- $canonical_name = preg_replace('/BE|LE/i', '', $this->encoding);
- $data .= "<?xml version=\"1.0\" encoding=\"$canonical_name\" ?>\n";
- }
-
- $data .= <<<HERE
-<テスト:テスト1 xmlns:テスト="http://www.example.com/テスト/" テスト="テスト">
- <テスト:テスト2 テスト="テスト">
- <テスト:テスト3>
- test!
- </テスト:テスト3>
- </テスト:テスト2>
-</テスト:テスト1>
-HERE;
-
- $data = iconv("UTF-8", $this->encoding, $data);
-
- if ($this->bom) {
- switch (strtoupper($this->encoding)) {
- case 'UTF-8':
- case 'UTF8':
- $data = "\xef\xbb\xbf".$data;
- break;
-
- case 'UTF-16':
- case 'UTF16':
- case 'UTF-16BE':
- case 'UTF16BE':
- case 'UCS-2':
- case 'UCS2':
- case 'UCS-2BE':
- case 'UCS2BE':
- $data = "\xfe\xff".$data;
- break;
-
- case 'UTF-16LE':
- case 'UTF16LE':
- case 'UCS-2LE':
- case 'UCS2LE':
- $data = "\xff\xfe".$data;
- break;
-
- case 'UTF-32':
- case 'UTF32':
- case 'UTF-32BE':
- case 'UTF32BE':
- case 'UCS-4':
- case 'UCS4':
- case 'UCS-4BE':
- case 'UCS4BE':
- $data = "\x00\x00\xfe\xff".$data;
- break;
-
- case 'UTF-32LE':
- case 'UTF32LE':
- case 'UCS-4LE':
- case 'UCS4LE':
- $data = "\xff\xfe\x00\x00".$data;
- break;
- }
- }
-
- $parser = xml_parser_create(NULL);
- xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
- xml_set_element_handler($parser, "start_element", "end_element");
- xml_set_object($parser, $this);
-
- if ($this->chunk_size == 0) {
- $success = @xml_parse($parser, $data, true);
- } else {
- for ($offset = 0; $offset < strlen($data);
- $offset += $this->chunk_size) {
- $success = @xml_parse($parser, substr($data, $offset, $this->chunk_size), false);
- if (!$success) {
- break;
- }
- }
- if ($success) {
- $success = @xml_parse($parser, "", true);
- }
- }
-
- echo "Encoding: $this->encoding\n";
- echo "XML Prologue: ".($this->prologue ? 'present': 'not present'), "\n";
- echo "Chunk size: ".($this->chunk_size ? "$this->chunk_size byte(s)\n": "all data at once\n");
- echo "BOM: ".($this->bom ? 'prepended': 'not prepended'), "\n";
-
- if ($success) {
- var_dump($this->tags);
- } else {
- echo "[Error] ", xml_error_string(xml_get_error_code($parser)), "\n";
- }
- }
-}
-$suite = array(
- new testcase("UTF-8", 0, 0, 0),
- new testcase("UTF-8", 0, 0, 1),
- new testcase("UTF-8", 0, 1, 0),
- new testcase("UTF-8", 0, 1, 1),
- new testcase("UTF-16BE", 0, 0, 0),
- new testcase("UTF-16BE", 0, 1, 0),
- new testcase("UTF-16BE", 0, 1, 1),
- new testcase("UTF-16LE", 0, 0, 0),
- new testcase("UTF-16LE", 0, 1, 0),
- new testcase("UTF-16LE", 0, 1, 1),
- new testcase("UTF-8", 1, 0, 0),
- new testcase("UTF-8", 1, 0, 1),
- new testcase("UTF-8", 1, 1, 0),
- new testcase("UTF-8", 1, 1, 1),
- new testcase("UTF-16BE", 1, 0, 0),
- new testcase("UTF-16BE", 1, 1, 0),
- new testcase("UTF-16BE", 1, 1, 1),
- new testcase("UTF-16LE", 1, 0, 0),
- new testcase("UTF-16LE", 1, 1, 0),
- new testcase("UTF-16LE", 1, 1, 1),
- new testcase("EUC-JP" , 0),
- new testcase("EUC-JP" , 1),
- new testcase("Shift_JIS", 0),
- new testcase("Shift_JIS", 1),
- new testcase("GB2312", 0),
- new testcase("GB2312", 1),
-);
-
-if (XML_SAX_IMPL == 'libxml') {
- preg_match("/^libxml2 Version.*\$/im", `$_ENV[TEST_PHP_EXECUTABLE] -i`, $match);
- echo $match[0], "\n";
-} else {
- echo "libxml2 Version => NONE\n";
-}
-
-foreach ($suite as $testcase) {
- $testcase->run();
-}
-
-// vim600: sts=4 sw=4 ts=4 encoding=UTF-8
-?>
---EXPECTF--
-libxml2 Version => %s
-Encoding: UTF-8
-XML Prologue: present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: not present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: present
-Chunk size: all data at once
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: not present
-Chunk size: all data at once
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16BE
-XML Prologue: present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16BE
-XML Prologue: present
-Chunk size: all data at once
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16BE
-XML Prologue: not present
-Chunk size: all data at once
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16LE
-XML Prologue: present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16LE
-XML Prologue: present
-Chunk size: all data at once
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16LE
-XML Prologue: not present
-Chunk size: all data at once
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: not present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-8
-XML Prologue: not present
-Chunk size: 1 byte(s)
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16BE
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16BE
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16BE
-XML Prologue: not present
-Chunk size: 1 byte(s)
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16LE
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16LE
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: UTF-16LE
-XML Prologue: not present
-Chunk size: 1 byte(s)
-BOM: prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: EUC-JP
-XML Prologue: present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: EUC-JP
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: Shift_JIS
-XML Prologue: present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: Shift_JIS
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: GB2312
-XML Prologue: present
-Chunk size: all data at once
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
-Encoding: GB2312
-XML Prologue: present
-Chunk size: 1 byte(s)
-BOM: not prepended
-array(3) {
- [0]=>
- string(128) "e38386e382b9e383883ae38386e382b9e3838831: 687474703a2f2f7777772e6578616d706c652e636f6d2fe38386e382b9e383882f, e38386e382b9e38388"
- [1]=>
- string(60) "e38386e382b9e383883ae38386e382b9e3838832: e38386e382b9e38388"
- [2]=>
- string(42) "e38386e382b9e383883ae38386e382b9e3838833: "
-}
diff --git a/ext/xml/tests/inc.ent b/ext/xml/tests/inc.ent
deleted file mode 100644
index 8f86465c2a..0000000000
--- a/ext/xml/tests/inc.ent
+++ /dev/null
@@ -1 +0,0 @@
-<!ENTITY included-entity "This is text included from an entity">
diff --git a/ext/xml/tests/skipif.inc b/ext/xml/tests/skipif.inc
deleted file mode 100644
index 44898f3da6..0000000000
--- a/ext/xml/tests/skipif.inc
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-// DO NOT dl load extension
-//if (!extension_loaded("xml")) {
-// $dlext = (substr(PHP_OS, 0, 3) == "WIN") ? ".dll" : ".so";
-// @dl("xml$dlext");
-//}
-if (!extension_loaded("xml")) {
- die('skip xml extension not available');
-}
-?>
diff --git a/ext/xml/tests/xml001.phpt b/ext/xml/tests/xml001.phpt
deleted file mode 100644
index 6ee908e46d..0000000000
--- a/ext/xml/tests/xml001.phpt
+++ /dev/null
@@ -1,99 +0,0 @@
---TEST--
-XML parser test, function callbacks
---SKIPIF--
-<?php
-require_once("skipif.inc");
-XML_SAX_IMPL == 'libxml' && die('skip this test is not intended for libxml SAX parser');
-?>
---INI--
-magic_quotes_runtime=0
---FILE--
-<?php
-chdir(dirname(__FILE__));
-
-$xml_parser = xml_parser_create();
-xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 1);
-xml_set_element_handler($xml_parser, "startElement", "endElement");
-xml_set_character_data_handler($xml_parser, "characterData");
-xml_set_processing_instruction_handler($xml_parser, "PIHandler");
-xml_set_default_handler($xml_parser, "defaultHandler");
-xml_set_external_entity_ref_handler($xml_parser, "externalEntityRefHandler");
-
-if (!($fp = @fopen("xmltest.xml", "r"))) {
- die("could not open XML input");
-}
-
-while ($data = fread($fp, 4096)) {
- if (!xml_parse($xml_parser, $data, feof($fp))) {
- die(sprintf("XML error: %s at line %d\n",
- xml_error_string(xml_get_error_code($xml_parser)),
- xml_get_current_line_number($xml_parser)));
- }
-}
-print "parse complete\n";
-xml_parser_free($xml_parser);
-
-function startElement($parser, $name, $attribs)
-{
- print "\{$name";
- if (sizeof($attribs)) {
- while (list($k, $v) = each($attribs)) {
- print " $k=\"$v\"";
- }
- }
- print "}";
-}
-
-function endElement($parser, $name)
-{
- print "\{/$name}";
-}
-
-function characterData($parser, $data)
-{
- print "\{CDATA[$data]}";
-}
-
-function PIHandler($parser, $target, $data)
-{
- print "\{PI[$target,$data]}";
-}
-
-function defaultHandler($parser, $data)
-{
- if (substr($data, 0, 1) == "&" && substr($data, -1, 1) == ";") {
- print "\{ENTREF[$data]}";
- } else {
- print "\{?[$data]}";
- }
-}
-
-function externalEntityRefHandler($parser, $openEntityNames, $base, $systemId, $publicId)
-{
- print "\{EXTENTREF[$openEntityNames,$base,$systemId,$publicId]}\n";
- return true;
-}
-
-?>
---EXPECT--
-{?[<?xml version="1.0" encoding="ISO-8859-1"?>]}{?[
-]}{?[<!DOCTYPE]}{?[ ]}{?[phptest]}{?[ ]}{?[SYSTEM]}{?[ ]}{?["notfound.dtd"]}{?[ ]}{?[[]}{?[
-]}{?[<!ENTITY]}{?[ ]}{?[%]}{?[ ]}{?[incent]}{?[ ]}{?[SYSTEM]}{?[ ]}{?["inc.ent"]}{?[>]}{?[
-]}{?[%incent;]}{?[
-]}{?[]]}{?[>]}{?[
-]}{ROOT ID="elem1"}{CDATA[
-]}{CDATA[ Plain text.]}{CDATA[
-]}{CDATA[ ]}{ELEM1}{CDATA[
-]}{CDATA[ ]}{?[<!-- comment -->]}{CDATA[
-]}{CDATA[ ]}{ELEM2}{CDATA[
-]}{CDATA[ ]}{?[<![CDATA[]}{CDATA[CDATA block]}{?[]]>]}{CDATA[
-]}{CDATA[ ]}{ELEM3}{CDATA[
-]}{CDATA[ ]}{ENTREF[&included-entity;]}{CDATA[
-]}{CDATA[ ]}{ELEM4}{CDATA[
-]}{CDATA[ ]}{PI[test,processing instruction ]}{CDATA[
-]}{CDATA[ ]}{/ELEM4}{CDATA[
-]}{CDATA[ ]}{/ELEM3}{CDATA[
-]}{CDATA[ ]}{/ELEM2}{CDATA[
-]}{CDATA[ ]}{/ELEM1}{CDATA[
-]}{/ROOT}{?[
-]}parse complete
diff --git a/ext/xml/tests/xml002.phpt b/ext/xml/tests/xml002.phpt
deleted file mode 100644
index 9785002926..0000000000
--- a/ext/xml/tests/xml002.phpt
+++ /dev/null
@@ -1,100 +0,0 @@
---TEST--
-XML parser test, object tuple callbacks
---SKIPIF--
-<?php
-require_once("skipif.inc");
-XML_SAX_IMPL == 'libxml' && die('skip this test is not intended for libxml SAX parser');
-?>
---INI--
-magic_quotes_runtime=0
---FILE--
-<?php
-chdir(dirname(__FILE__));
-
-class myclass
-{
- function startElement($parser, $name, $attribs)
- {
- print "\{$name";
- if (sizeof($attribs)) {
- while (list($k, $v) = each($attribs)) {
- print " $k=\"$v\"";
- }
- }
- print "}";
- }
- function endElement($parser, $name)
- {
- print "\{/$name}";
- }
- function characterData($parser, $data)
- {
- print "\{CDATA[$data]}";
- }
- function PIHandler($parser, $target, $data)
- {
- print "\{PI[$target,$data]}";
- }
- function defaultHandler($parser, $data)
- {
- if (substr($data, 0, 1) == "&" && substr($data, -1, 1) == ";") {
- print "\{ENTREF[$data]}";
- } else {
- print "\{?[$data]}";
- }
- }
- function externalEntityRefHandler($parser, $openEntityNames, $base, $systemId, $publicId)
- {
- print "\{EXTENTREF[$openEntityNames,$base,$systemId,$publicId]}\n";
- return true;
- }
-}
-
-$xml_parser = xml_parser_create();
-$obj = new myclass;
-xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 1);
-xml_set_element_handler($xml_parser, array($obj,"startElement"),
-array($obj, "endElement"));
-xml_set_character_data_handler($xml_parser, array($obj, "characterData"));
-xml_set_processing_instruction_handler($xml_parser, array($obj, "PIHandler"));
-xml_set_default_handler($xml_parser, array($obj, "defaultHandler"));
-xml_set_external_entity_ref_handler($xml_parser,
-array($obj, "externalEntityRefHandler"));
-
-if (!($fp = @fopen("xmltest.xml", "r"))) {
- die("could not open XML input");
-}
-
-while ($data = fread($fp, 4096)) {
- if (!xml_parse($xml_parser, $data, feof($fp))) {
- die(sprintf("XML error: %s at line %d\n",
- xml_error_string(xml_get_error_code($xml_parser)),
- xml_get_current_line_number($xml_parser)));
- }
-}
-print "parse complete\n";
-xml_parser_free($xml_parser);
-
-?>
---EXPECT--
-{?[<?xml version="1.0" encoding="ISO-8859-1"?>]}{?[
-]}{?[<!DOCTYPE]}{?[ ]}{?[phptest]}{?[ ]}{?[SYSTEM]}{?[ ]}{?["notfound.dtd"]}{?[ ]}{?[[]}{?[
-]}{?[<!ENTITY]}{?[ ]}{?[%]}{?[ ]}{?[incent]}{?[ ]}{?[SYSTEM]}{?[ ]}{?["inc.ent"]}{?[>]}{?[
-]}{?[%incent;]}{?[
-]}{?[]]}{?[>]}{?[
-]}{ROOT ID="elem1"}{CDATA[
-]}{CDATA[ Plain text.]}{CDATA[
-]}{CDATA[ ]}{ELEM1}{CDATA[
-]}{CDATA[ ]}{?[<!-- comment -->]}{CDATA[
-]}{CDATA[ ]}{ELEM2}{CDATA[
-]}{CDATA[ ]}{?[<![CDATA[]}{CDATA[CDATA block]}{?[]]>]}{CDATA[
-]}{CDATA[ ]}{ELEM3}{CDATA[
-]}{CDATA[ ]}{ENTREF[&included-entity;]}{CDATA[
-]}{CDATA[ ]}{ELEM4}{CDATA[
-]}{CDATA[ ]}{PI[test,processing instruction ]}{CDATA[
-]}{CDATA[ ]}{/ELEM4}{CDATA[
-]}{CDATA[ ]}{/ELEM3}{CDATA[
-]}{CDATA[ ]}{/ELEM2}{CDATA[
-]}{CDATA[ ]}{/ELEM1}{CDATA[
-]}{/ROOT}{?[
-]}parse complete
diff --git a/ext/xml/tests/xml003.phpt b/ext/xml/tests/xml003.phpt
deleted file mode 100644
index fa0984e893..0000000000
--- a/ext/xml/tests/xml003.phpt
+++ /dev/null
@@ -1,98 +0,0 @@
---TEST--
-XML parser test, xml_set_object callbacks
---SKIPIF--
-<?php
-require_once("skipif.inc");
-XML_SAX_IMPL == 'libxml' && die('skip this test is not intended for libxml SAX parser');
-?>
---INI--
-magic_quotes_runtime=0
---FILE--
-<?php
-chdir(dirname(__FILE__));
-
-class myclass
-{
- function startElement($parser, $name, $attribs)
- {
- print "\{$name";
- if (sizeof($attribs)) {
- while (list($k, $v) = each($attribs)) {
- print " $k=\"$v\"";
- }
- }
- print "}";
- }
- function endElement($parser, $name)
- {
- print "\{/$name}";
- }
- function characterData($parser, $data)
- {
- print "\{CDATA[$data]}";
- }
- function PIHandler($parser, $target, $data)
- {
- print "\{PI[$target,$data]}";
- }
- function defaultHandler($parser, $data)
- {
- if (substr($data, 0, 1) == "&" && substr($data, -1, 1) == ";") {
- print "\{ENTREF[$data]}";
- } else {
- print "\{?[$data]}";
- }
- }
- function externalEntityRefHandler($parser, $openEntityNames, $base, $systemId, $publicId)
- {
- print "\{EXTENTREF[$openEntityNames,$base,$systemId,$publicId]}\n";
- return true;
- }
-}
-
-$xml_parser = xml_parser_create();
-$obj = new myclass;
-xml_set_object($xml_parser, $obj);
-xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 1);
-xml_set_element_handler($xml_parser, "startElement", "endElement");
-xml_set_character_data_handler($xml_parser, "characterData");
-xml_set_processing_instruction_handler($xml_parser, "PIHandler");
-xml_set_default_handler($xml_parser, "defaultHandler");
-xml_set_external_entity_ref_handler($xml_parser, "externalEntityRefHandler");
-
-if (!($fp = @fopen("xmltest.xml", "r"))) {
- die("could not open XML input");
-}
-
-while ($data = fread($fp, 4096)) {
- if (!xml_parse($xml_parser, $data, feof($fp))) {
- die(sprintf("XML error: %s at line %d\n",
- xml_error_string(xml_get_error_code($xml_parser)),
- xml_get_current_line_number($xml_parser)));
- }
-}
-print "parse complete\n";
-xml_parser_free($xml_parser);
-?>
---EXPECT--
-{?[<?xml version="1.0" encoding="ISO-8859-1"?>]}{?[
-]}{?[<!DOCTYPE]}{?[ ]}{?[phptest]}{?[ ]}{?[SYSTEM]}{?[ ]}{?["notfound.dtd"]}{?[ ]}{?[[]}{?[
-]}{?[<!ENTITY]}{?[ ]}{?[%]}{?[ ]}{?[incent]}{?[ ]}{?[SYSTEM]}{?[ ]}{?["inc.ent"]}{?[>]}{?[
-]}{?[%incent;]}{?[
-]}{?[]]}{?[>]}{?[
-]}{ROOT ID="elem1"}{CDATA[
-]}{CDATA[ Plain text.]}{CDATA[
-]}{CDATA[ ]}{ELEM1}{CDATA[
-]}{CDATA[ ]}{?[<!-- comment -->]}{CDATA[
-]}{CDATA[ ]}{ELEM2}{CDATA[
-]}{CDATA[ ]}{?[<![CDATA[]}{CDATA[CDATA block]}{?[]]>]}{CDATA[
-]}{CDATA[ ]}{ELEM3}{CDATA[
-]}{CDATA[ ]}{ENTREF[&included-entity;]}{CDATA[
-]}{CDATA[ ]}{ELEM4}{CDATA[
-]}{CDATA[ ]}{PI[test,processing instruction ]}{CDATA[
-]}{CDATA[ ]}{/ELEM4}{CDATA[
-]}{CDATA[ ]}{/ELEM3}{CDATA[
-]}{CDATA[ ]}{/ELEM2}{CDATA[
-]}{CDATA[ ]}{/ELEM1}{CDATA[
-]}{/ROOT}{?[
-]}parse complete
diff --git a/ext/xml/tests/xml004.phpt b/ext/xml/tests/xml004.phpt
deleted file mode 100644
index 78840ee122..0000000000
--- a/ext/xml/tests/xml004.phpt
+++ /dev/null
@@ -1,64 +0,0 @@
---TEST--
-XML parser case folding test
---SKIPIF--
-<?php include("skipif.inc"); ?>
---INI--
-magic_quotes_runtime=0
---FILE--
-<?php
-chdir(dirname(__FILE__));
-
-$xp = xml_parser_create();
-xml_parser_set_option($xp, XML_OPTION_CASE_FOLDING, false);
-xml_set_element_handler($xp, "start_element", "end_element");
-$fp = fopen("xmltest.xml", "r");
-while ($data = fread($fp, 4096)) {
- xml_parse($xp, $data, feof($fp));
-}
-xml_parser_free($xp);
-$xp = xml_parser_create();
-xml_parser_set_option($xp, XML_OPTION_CASE_FOLDING, true);
-xml_set_element_handler($xp, "start_element", "end_element");
-$fp = fopen("xmltest.xml", "r");
-while ($data = fread($fp, 4096)) {
- xml_parse($xp, $data, feof($fp));
-}
-xml_parser_free($xp);
-
-function start_element($xp, $elem, $attribs)
-{
- print "<$elem";
- if (sizeof($attribs)) {
- while (list($k, $v) = each($attribs)) {
- print " $k=\"$v\"";
- }
- }
- print ">\n";
-}
-
-function end_element($xp, $elem)
-{
- print "</$elem>\n";
-}
-?>
---EXPECT--
-<root id="elem1">
-<elem1>
-<elem2>
-<elem3>
-<elem4>
-</elem4>
-</elem3>
-</elem2>
-</elem1>
-</root>
-<ROOT ID="elem1">
-<ELEM1>
-<ELEM2>
-<ELEM3>
-<ELEM4>
-</ELEM4>
-</ELEM3>
-</ELEM2>
-</ELEM1>
-</ROOT>
diff --git a/ext/xml/tests/xml006.phpt b/ext/xml/tests/xml006.phpt
deleted file mode 100644
index c714e85913..0000000000
--- a/ext/xml/tests/xml006.phpt
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-UTF-8<->ISO Latin 1 encoding/decoding test
---SKIPIF--
-<?php include("skipif.inc"); ?>
---FILE--
-<?php
-printf("%s -> %s\n", urlencode("æ"), urlencode(utf8_encode("æ")));
-printf("%s <- %s\n", urlencode(utf8_decode(urldecode("%C3%A6"))), "%C3%A6");
-?>
---EXPECT--
-%E6 -> %C3%A6
-%E6 <- %C3%A6
diff --git a/ext/xml/tests/xml007.phpt b/ext/xml/tests/xml007.phpt
deleted file mode 100644
index 377475bb1c..0000000000
--- a/ext/xml/tests/xml007.phpt
+++ /dev/null
@@ -1,53 +0,0 @@
---TEST--
-xml_parse_into_struct/umlauts in tags
---SKIPIF--
-<?php // vim600: syn=php
-include("skipif.inc");
-if(strtoupper("äöüß") != "ÄÖÜß")
-{
- die("skip strtoupper on non-ascii not supported on this platform");
-}
-?>
---FILE--
-<?php
-function startHandler($parser,$tag,$attr)
-{
- var_dump($tag,$attr);
-}
-
-function endHandler($parser,$tag)
-{
- var_dump($tag);
-}
-
-$xmldata = '<?xml version="1.0" encoding="ISO-8859-1"?><äöü üäß="Üäß">ÄÖÜ</äöü>';
-$parser = xml_parser_create('ISO-8859-1');
-xml_set_element_handler($parser, "startHandler", "endHandler");
-xml_parse_into_struct($parser, $xmldata, $struct, $index);
-var_dump($struct);
-?>
---EXPECT--
-string(3) "ÄÖÜ"
-array(1) {
- ["ÜÄß"]=>
- string(3) "Üäß"
-}
-string(3) "ÄÖÜ"
-array(1) {
- [0]=>
- array(5) {
- ["tag"]=>
- string(3) "ÄÖÜ"
- ["type"]=>
- string(8) "complete"
- ["level"]=>
- int(1)
- ["attributes"]=>
- array(1) {
- ["ÜÄß"]=>
- string(3) "Üäß"
- }
- ["value"]=>
- string(3) "ÄÖÜ"
- }
-}
diff --git a/ext/xml/tests/xml009.phpt b/ext/xml/tests/xml009.phpt
deleted file mode 100644
index 3b64e7b8ba..0000000000
--- a/ext/xml/tests/xml009.phpt
+++ /dev/null
@@ -1,34 +0,0 @@
---TEST--
-XML parser test, default namespaces
---SKIPIF--
-<?php
-if (! @xml_parser_create_ns('ISO-8859-1')) { die("skip xml_parser_create_ns is not supported on this plattform");}
-?>
---FILE--
-<?php
-function start_elem($parser,$name,$attribs) {
- var_dump($name);
-}
-function end_elem()
-{
-}
-
-$xml = <<<HERE
-<a xmlns="http://example.com/foo"
- xmlns:bar="http://example.com/bar"
- xmlns:baz="http://example.com/baz">
- <bar:b />
- <bar:c xmlns:bar="http://example.com/foo"/>
-</a>
-HERE;
-
-$parser = xml_parser_create_ns("ISO-8859-1","@");
-xml_set_element_handler($parser,'start_elem','end_elem');
-xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0);
-xml_parse($parser, $xml);
-xml_parser_free($parser);
-?>
---EXPECT--
-string(24) "http://example.com/foo@a"
-string(24) "http://example.com/bar@b"
-string(24) "http://example.com/foo@c"
diff --git a/ext/xml/tests/xml010.phpt b/ext/xml/tests/xml010.phpt
deleted file mode 100644
index 125e9c7b03..0000000000
--- a/ext/xml/tests/xml010.phpt
+++ /dev/null
@@ -1,38 +0,0 @@
---TEST--
-XML parser test, attributes
---SKIPIF--
-<?php
-if (! @xml_parser_create_ns('ISO-8859-1')) { die("skip xml_parser_create_ns is not supported on this plattform");}
-?>
---FILE--
-<?php
-function start_elem($parser,$name,$attribs) {
- print "$name ";
-
- foreach($attribs as $key => $value) {
- print "$key = $value ";
- }
- print "\n";
-}
-function end_elem()
-{
-}
-
-$xml = <<<HERE
-<a xmlns="http://example.com/foo"
- xmlns:bar="http://example.com/bar">
- <bar:b foo="bar"/>
- <bar:c bar:nix="null" foo="bar"/>
-</a>
-HERE;
-
-$parser = xml_parser_create_ns("ISO-8859-1","@");
-xml_set_element_handler($parser,'start_elem','end_elem');
-xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0);
-xml_parse($parser, $xml);
-xml_parser_free($parser);
-?>
---EXPECT--
-http://example.com/foo@a
-http://example.com/bar@b foo = bar
-http://example.com/bar@c http://example.com/bar@nix = null foo = bar
diff --git a/ext/xml/tests/xmltest.xml b/ext/xml/tests/xmltest.xml
deleted file mode 100644
index c15d6ea1ab..0000000000
--- a/ext/xml/tests/xmltest.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE phptest SYSTEM "notfound.dtd" [
-<!ENTITY % incent SYSTEM "inc.ent">
-%incent;
-]>
-<root id="elem1">
- Plain text.
- <elem1>
- <!-- comment -->
- <elem2>
- <![CDATA[CDATA block]]>
- <elem3>
- &included-entity;
- <elem4>
- <?test processing instruction ?>
- </elem4>
- </elem3>
- </elem2>
- </elem1>
-</root>