Edit report at https://bugs.php.net/bug.php?id=55531&edit=1

 ID:                 55531
 Updated by:         paj...@php.net
 Reported by:        brianlm...@php.net
 Summary:            Vertical tabs ignored by XMLWriter
 Status:             Open
 Type:               Bug
 Package:            XML related
 Operating System:   Linux
 PHP Version:        5.3.8
 Block user comment: N
 Private report:     N

 New Comment:

XML 1.0 this character is not valid. Not sure if we should allow it, .net 2.x 
allows them optionally using settings.CheckCharacters = true;.

But that|s something libxml deals with, PHP's xml extensions only rely on it to 
parse input or generate data.


Previous Comments:
------------------------------------------------------------------------
[2011-08-29 15:52:18] brianlm...@php.net

Description:
------------
When text contains vertical tabs, XMLWriter silently ignores them and generates 
invalid XML. This is not an issue where the text is invalid UTF-8. It is valid 
UTF-8 data. Vertical tabs are simply not allowed in XML by rule. I would expect 
XMLWriter to encode it as it would any other character not allowed in XML. I 
suspect that 

Test script:
---------------
<?php

    $xml = new XmlWriter();
    $xml->openMemory();
    $xml->startDocument('1.0', 'UTF-8');
    $xml->writeElement("test", "This data contains a \vvertical tab");
    $xml->endElement();
    $data = $xml->outputMemory(true);

    $sxml = simplexml_load_string($data);

?>

Expected result:
----------------
Either an error or valid XML.

Actual result:
--------------
Invalid XML is silently created. For example, SimpleXML::addchild() throws a 
warning: SimpleXMLElement::asXML(): xmlEscapeEntities : char out of range when 
a vertical tab is present and the node is not added.


------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=55531&edit=1

Reply via email to