带有命名空间前缀的 TagSoup 属性
Posted
技术标签:
【中文标题】带有命名空间前缀的 TagSoup 属性【英文标题】:TagSoup attributes with namespace prefix 【发布时间】:2011-05-09 20:50:17 【问题描述】:为了使用 TagSoup 解析 xml 响应,我正在扩展 DefaultHandler,现在我遇到的问题是它忽略了方法中具有限定名称的属性;
public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException
元素如下所示;
<element xmlns:ns2="http://my.ns.url">content</element>
当它到达该元素的 startElement 方法时,atts 参数中没有任何属性。有谁知道如何在不调整 xml 的情况下解决这个问题?
编辑
我尝试对该功能使用setFeature
方法;
http://xml.org/sax/features/namespace-prefixes
但是没有任何结果
【问题讨论】:
不是 html 的 TagSoup 解析器吗?它生成 SAX 事件,但其主要目标是“从野外”解析 HTML 文件。 【参考方案1】:我通过停止使用 TagSoup 来修复它,并解决了标准的 android SAXParser。然后我更改了功能设置如下;
setFeature("http://xml.org/sax/features/namespaces", false);
setFeature("http://xml.org/sax/features/namespace-prefixes", true);
【讨论】:
以上是关于带有命名空间前缀的 TagSoup 属性的主要内容,如果未能解决你的问题,请参考以下文章
Open Graph 命名空间声明:带有 XMLNS 或 head 前缀的 HTML?