1--TEST--
2Attribute entity expansion in a legacy document
3--EXTENSIONS--
4dom
5--FILE--
6<?php
7$doc = new DOMDocument;
8$elt = $doc->createElement('elt');
9$doc->appendChild($elt);
10$elt->setAttribute('a','&');
11print $doc->saveXML($elt) . "\n";
12
13$attr = $elt->getAttributeNode('a');
14$attr->value = '&amp;';
15print "$attr->value\n";
16print $doc->saveXML($elt) . "\n";
17
18$attr->removeChild($attr->firstChild);
19print $doc->saveXML($elt) . "\n";
20
21$attr->nodeValue = '&';
22print "$attr->nodeValue\n";
23print $doc->saveXML($elt) . "\n";
24
25$attr->nodeValue = '&amp;';
26print "$attr->nodeValue\n";
27print $doc->saveXML($elt) . "\n";
28
29$elt->removeAttributeNode($attr);
30$elt->setAttributeNS('http://www.w3.org/2000/svg', 'svg:id','&amp;');
31print $doc->saveXML($elt) . "\n";
32
33$attr = $elt->getAttributeNodeNS('http://www.w3.org/2000/svg', 'id');
34$attr->value = '&lt;&amp;';
35print "$attr->value\n";
36print $doc->saveXML($elt) . "\n";
37?>
38--EXPECTF--
39<elt a="&amp;"/>
40&
41<elt a="&amp;"/>
42<elt a=""/>
43
44Warning: main(): unterminated entity reference                 in %s on line %d
45
46<elt a=""/>
47&
48<elt a="&amp;"/>
49<elt xmlns:svg="http://www.w3.org/2000/svg" svg:id="&amp;amp;"/>
50<&
51<elt xmlns:svg="http://www.w3.org/2000/svg" svg:id="&lt;&amp;"/>
52