我正在尝试定义一个只包含换行符(
)的XML ENTITY。但不幸的是,这似乎并不奏效:
<?xml version="1.0"?>
<!DOCTYPE my_doc [
<!ENTITY newline " ">
]>
<root attr="hello &newline; world !!!" attr1="hello world !!!" ></root>
在上面的例子中,我希望属性attr和attr1具有相同的值。但是在&#39; attr&#39;实体&#39;换行符&#39;由解析器替换为空格:
attr => hello world !!!
attr1 => hello
world !!!
我正在使用python来解析它,但我不认为这是相关的:
import xml.etree.ElementTree as ET
data_as_string = """<?xml version="1.0"?>
<!DOCTYPE my_doc [
<!ENTITY newline " ">
]>
<root attr="hello &newline; world !!!" attr1="hello world !!!" ></root>
"""
root = ET.fromstring(data_as_string)
print root
print root.attrib
for k,v in root.attrib.items():
print "%s => %s" % (k, v)
知道解决方案吗?
谢谢, 杰拉德