当前位置: 首页 > 知识库问答 >
问题:

用于Domparser的HTML5 Doctype

连乐
2023-03-14

这和预期的一样有效,因为DOMParser似乎已经预加载了这个doctype和连接的实体列表。但是,这个doctype已经过时了。因此,我尝试了新的<!Docytpe html>,但这不起作用。这也是意料之中的,因为新的html5 doctype标记与旧的基于XML/SGML的标记的工作方式不同。

问题:是否有一些标准的!doctype用于html(5),浏览器可以识别并包含预加载的html实体。(我不想将所有实体作为单独的实体定义复制到列表中,浏览器在某个地方有它们,我只是不知道如何通过XML/SGML样式的html5 DTD激活它们)

共有1个答案

赫连泰宁
2023-03-14

如果您想继续使用XML,但不想使用XHTML doctype,那么您必须直接在文档中(在内部子集或外部声明集中)通过实体声明来声明XHTML的字符实体,因为只有HTML有nbsp和许多其他的预定义实体(XML只有quotampaposltgt)。您可以使用https://www.w3.org/2003/entities/2007/htmlMathml-f.ent中的HTML5实体集(其中包括大型MathML实体集),也可以使用小得多的经典HTML4实体集。

但是我会首先检查DomParser是否真的处理了标记声明和/或带有标记声明的外部声明集。尝试解析以下内容

<?xml version="1.0"?>
<!DOCTYPE test [
  <!ENTITY nbsp "&#xA0;">
]>
<test>
  &nbsp;
</test>

并检查控制台中的错误消息。

HTML没有“正式的”DTD(事实上,根本没有正式的语法),但是我的SGML DTD for W3C HTML 5.1提供了更多关于解析HTML5的信息,包括关于HTML5预定义实体的信息。

 类似资料:
  • Examples var parser = new tinymce.html.DomParser({validate: true}, schema); var rootNode = parser.parse('<h1>content</h1>'); Methods name summary defined by addAttributeFilter() Adds a attribute filte

  • 这是我正在使用的DomParser的代码片段,我正在使用的DomParser是Oracle的。 最近,我们的安全团队提出了一个问题,即上述DOM解析器容易受到安全攻击,并建议设置两个属性 但在设置这些属性时,我得到以下错误, 请告诉我如何防止XML实体扩展注入和XXE攻击。我曾尝试查看OWASP XEE备忘单并浏览XXE攻击的各种问题和答案,但找不到解决方案。

  • 问题内容: 尝试在我的js代码中使用DOMParser时遇到问题。在我的代码中,我通过xmlhttp.responseText soap响应检索了一个xml文件。我希望能够以JSON格式访问其元素,因此我的代码如下所示: 我收到此错误消息:ReferenceError:未定义DOMParser 编辑:此链接对我不起作用,因为我的JavaScript不在HTML页面中,因为它是一个node.js文件

  • 我正在尝试使用DOMParser解析带有HTML字符串的XML文件。问题是getTextContent()方法只获取文本,而不获取其中的任何HTML标记。我希望字符串按原样返回,而不是按解析后的版本返回。我搜索了整个网络,却找不到任何对我有帮助的东西。顺便说一句,我无法对HTML字符串进行任何更改,因为在大约500个文件中有超过100k个Sting。 测验xml文件 Java模块 实际输出 这里有

  • 问题内容: 我正在使用以下代码将字符串解析为DOM: 哪里是这样的。 给我。如果我做类似的事情,我会得到一个DOM对象。但是,如果像往常一样尝试访问任何属性,它将为我提供: 其他属性也是如此,例如。另一方面,属性检索很好。 是否有魔术功能可以访问这些属性? 问题答案: 您的当前方法失败,因为未为给定XML文档定义HTML属性。如果提供MIME类型,则该方法应该起作用。 下面的代码为尚不支持它的浏览

  • 问题 我有一组客户端计算机,它们是企业web应用程序的一部分。每台机器运行相同的软件,这是一个连接到服务器的基于PYQT的web客户端。这个客户端软件是定期更新的,我希望有一些配置/供应工具,允许在每台机器上有相同的环境,从而提供软件在每个客户端机器上的轻松部署和配置。 是否可以使用Docker为基于GUI的应用程序(PyQt/Qt)提供开发/生产环境?如果是的话,要实现这一目标的第一步是什么?