【问题标题】:Usage behind the pound symbol in XMLXML 中英镑符号后面的用法
【发布时间】:2013-12-04 23:39:25
【问题描述】:

XML 文档中的符号 # 有什么用途(参见下面的示例)?这些 # 符号是否表示对另一个节点的引用,在搜索节点以查找此匹配属性文本之前,我要删除 # 符号?还是这些用于在解析 XML 文档后以某种方式跳转到内存寻址节点,这是解析器的引用?

Sample XML:

    <vertices id="Plane_003-mesh-vertices">
      <input semantic="POSITION" source="#Plane_003-mesh-positions"/>
    </vertices>
    <polylist count="2">
      <input semantic="VERTEX" source="#Plane_003-mesh-vertices" offset="0"/>
      <input semantic="NORMAL" source="#Plane_003-mesh-normals" offset="1"/>
      <vcount>3 3 </vcount>
      <p>0 0 3 0 2 0 0 1 2 1 1 1</p>
    </polylist>

【问题讨论】:

    标签: xml xml-parsing


    【解决方案1】:

    这完全取决于 XML 语言。英镑本身在 XML 中没有特殊含义。 (请记住,XML 是一种“元语言”,即基本上是一种语言构建工具包。)但是当一种 XML 语言(例如 XHTML)决定赋予其背后的意义时,它就可以这样做。

    在您的情况下,看起来有问题的 XML 语言决定让 id 属性和 source 属性通过“URL 片段标识符”链接到它们。

    【讨论】:

    • 您是否会知道 rapidxml-1.13+ 是否有任何可以利用此“URL 片段标识符”的搜索方法,还是我需要手动进行搜索?
    • 乍一看,RapidXML 似乎只是一个 XML 解析器。也就是说,它对所解析的特定 XML 语言没有深入的了解。所以我的猜测是,这取决于你搜索。如果您可以将 XML 传递到任何创建 DOM 的内容中,则可以使用 document.getElementById(substring(id, 1)) 来获取相关元素。 (DOM 不一定只有 HTML。)
    • 谢谢...我也检查了文档,发现也注意到...我已经完成了搜索过程,而且效果很好...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-12
    • 2013-04-06
    • 1970-01-01
    相关资源
    最近更新 更多