Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在没有DOCTYPE、CDATA或转义的情况下将XHTML嵌入XML?_Xml_Xhtml_Schema_Doctype_Dtd - Fatal编程技术网

如何在没有DOCTYPE、CDATA或转义的情况下将XHTML嵌入XML?

如何在没有DOCTYPE、CDATA或转义的情况下将XHTML嵌入XML?,xml,xhtml,schema,doctype,dtd,Xml,Xhtml,Schema,Doctype,Dtd,有没有办法在没有DOCTYPE DTD声明的情况下将XHTML实体引用嵌入到XML文本中?DOCTYPE行在其目标java服务器上造成问题 逃离&;序列是不可接受的,在CDATA中嵌入也是不可接受的。参考资料需要验证 可以从模式定义而不是XML数据文件引用DTD 更广泛地说,在XML中嵌入XHTML(或至少实体引用)并进行验证的常见做法是什么 一种可能的解决方案是将整个XHTML1.0DTD转换为模式,但这听起来不是最好的主意。您尝试过没有公共或系统标识符的DOCTYPE吗 您可以将实体声明直接

有没有办法在没有DOCTYPE DTD声明的情况下将XHTML实体引用嵌入到XML文本中?DOCTYPE行在其目标java服务器上造成问题

逃离&;序列是不可接受的,在CDATA中嵌入也是不可接受的。参考资料需要验证

可以从模式定义而不是XML数据文件引用DTD

更广泛地说,在XML中嵌入XHTML(或至少实体引用)并进行验证的常见做法是什么


一种可能的解决方案是将整个XHTML1.0DTD转换为模式,但这听起来不是最好的主意。

您尝试过没有公共或系统标识符的DOCTYPE吗

您可以将实体声明直接添加到内部子集:

<!DOCTYPE foo [
<!ENTITY nbsp   "&#160;">
<!ENTITY copy   "&#169;">
<!ENTITY laquo  "&#171;">
<!ENTITY reg    "&#174;">
<!ENTITY deg    "&#176;">
<!ENTITY plusmn "&#177;">
<!ENTITY sup2   "&#178;">
<!ENTITY sup3   "&#179;">
<!ENTITY frac14 "&#188;">
<!ENTITY frac12 "&#189;">
<!ENTITY frac34 "&#190;">
]>
<foo/>

]>
或者,您可以使用参数实体指向具有实体声明的外部文件:

<!DOCTYPE foo [
<!ENTITY % ents SYSTEM "xhtml-lat1.ent">
%ents;
]>
<foo/>

您是否尝试过没有公共或系统标识符的DOCTYPE

您可以将实体声明直接添加到内部子集:

<!DOCTYPE foo [
<!ENTITY nbsp   "&#160;">
<!ENTITY copy   "&#169;">
<!ENTITY laquo  "&#171;">
<!ENTITY reg    "&#174;">
<!ENTITY deg    "&#176;">
<!ENTITY plusmn "&#177;">
<!ENTITY sup2   "&#178;">
<!ENTITY sup3   "&#179;">
<!ENTITY frac14 "&#188;">
<!ENTITY frac12 "&#189;">
<!ENTITY frac34 "&#190;">
]>
<foo/>

]>
或者,您可以使用参数实体指向具有实体声明的外部文件:

<!DOCTYPE foo [
<!ENTITY % ents SYSTEM "xhtml-lat1.ent">
%ents;
]>
<foo/>

如果您有5个预定义实体引用以外的实体引用,并且没有doctype,则XML的格式不正确

如果使用数字字符引用而不是命名实体引用,则可以大大简化工作,因此请使用

 而不是


可以通过修改原始生成(如果可以控制),也可以通过使用任何xml解析器或简单的文本替换(使用perl或等效工具)来扩展实体。您可以在此处获得dtd或json或其他格式的html(5)实体集的完整列表

如果您有5个预定义实体引用以外的实体引用,并且没有doctype,则XML的格式不正确

如果使用数字字符引用而不是命名实体引用,则可以大大简化工作,因此请使用

 而不是

可以通过修改原始生成(如果可以控制),也可以通过使用任何xml解析器或简单的文本替换(使用perl或等效工具)来扩展实体。您可以在这里获得dtd、json或其他格式的html(5)实体集的完整列表