允许任何内容的 XML 架构 (xsd:any)

2024-05-04

我需要一个允许任何事情的 XML 模式示例。

这可能听起来很奇怪,但我需要它来调试我当前的模式。问题是,我有一个在函数(我无法控制的 DLL 的一部分)中使用的复杂对象以及模式,并且该函数返回 XML。目前,该函数会抛出异常,因为在验证模式时出现错误,但不应该出现错误。因此,我想要一个空白架构,一个不会导致任何验证错误的架构,这样我就可以看到函数输出的 XML。

我尝试采用当前的架构,并仅保留 xs:schema 标记来创建空架构,但这显然不起作用。


XML 模式无法指定文档无论其内容如何都是有效的。

但是,如果您能够指定根元素,则可以使用xs:anyAttribute and xs:any允许根元素上的任何属性以及根下的任何 XML:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="root">
    <xs:complexType>
      <xs:sequence>
        <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:anyAttribute processContents="skip"/>
    </xs:complexType>
  </xs:element>
</xs:schema>

在您的情况下,只要您可以确保有限数量的可能根元素名称,您就可以使用此技术来允许具有已知名称的根元素下的任何 XML 内容。


Update: This can be written much more concisely [Credit: C. M. Sperberg-McQueen https://stackoverflow.com/users/1477421/c-m-sperberg-mcqueen]:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="root"/>
</xs:schema>

请注意,这允许,但不要求,root为空。 https://stackoverflow.com/a/20754138/290085

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

允许任何内容的 XML 架构 (xsd:any) 的相关文章

随机推荐

  • 使用Redis从有限范围内生成唯一ID

    我有一些数据库项目 除了主键之外 还需要项目所属组的唯一索引 我们来调用属性nbr 以及将项目分组在一起并定义唯一范围的属性nbr 我们会打电话group This nbr必须在 1 N 范围内 并且may从外部源导入项目时进行设置 由于所
  • SQL 错误:字符串或二进制数据将被截断

    我正在一个名为 Telligent 的社区平台上进行集成 我正在使用名为 BlogML 的第 3 方插件将博客文章从 XML 文件 BlogML 格式 导入到我的本地 Telligent 站点中 Telligent 平台在其 SDK 中附带
  • 类型错误:无法读取未定义的属性“_id”

    我在将文档保存到名为的集合的简单发布请求中收到错误 TypeError 无法读取未定义的属性 id books 我的有效负载如下所示 name practical view author DN location room 50 而我只是在做
  • iPhone 拒绝了发布请求 未说明

    iPhone 拒绝了发布请求 内部启动错误 进程启动失败 未指定 这个错误让我抓狂 我似乎无法解决它 我从发现的所有地方都做了以下操作 刷新证书 注销并进入开发者苹果帐户 下载手动证书 删除 Apple 全球证书 重新启动 Mac 和 iP
  • 使用 MVVM 绑定 Xamarin.Forms 中的属性

    我在使用 Xamarin Forms 和 MVVM 制作游戏时遇到问题 游戏中有一艘由用户控制的潜艇 并且有水雷掉落 因此用户必须避开这些水雷 这些地雷是在运行时使用 2 个计时器生成的 因此我用 XAML 中的 CollectionVie
  • 是否值得购买 Mahout in Action 以跟上 Mahout 的速度,或者还有其他更好的来源吗?

    我目前是一个非常随意的用户阿帕奇马胡特 http mahout apache org 我正在考虑购买这本书象夫在行动 http www manning com owen 不幸的是 我很难理解这本书的价值 并且认为它是一本曼宁早期访问计划 h
  • 如何在ArangoDB中设置集群和分片?

    我想在arangoDB中使用分片 我已经制作了协调器 DBServers 如文档2 8 5中所述 但仍然有人可以详细解释它 以及我如何能够在分片之后和之前检查查询的性能 可以测试您的应用程序对于本地集群 所有实例都在一台机器上运行吗 htt
  • 来自 Toplink 表达式的 SQL 查询

    我有一个 oracle toplink expressions Expression 表达式对象 它是使用 oracle toplink expressions ExpressionBuilder 创建的 我想找到它的等效 SQL 查询 比
  • 智能表 - 预选特定行

    我正在使用智能表 我需要预先选择特定行 因此 在加载我的列表后 我循环进入它并设置isSelected当我到达我想要选择的项目时属性 Preselect a row for var i 0 len scope displayCollecti
  • 多线程文件写入

    我正在尝试使用多个线程写入大文件的不同部分 就像分段文件下载器所做的那样 我的问题是 执行此操作的安全方法是什么 我是否打开文件进行写入 创建线程 将 Stream 对象传递给每个线程 我不希望发生错误 因为多个线程可能同时访问同一个对象
  • 如何使用ajax从服务器接收返回的数据?

    基本上我有一个带有用户名文本框和提交按钮的表单 现在我想要的是 当用户在文本框中输入文本时 它应该获取文本框值并将用户名发送到服务器 以便服务器可以检查该用户名是否被任何其他用户占用 我可以将文本值发送到服务器 但我不知道如何接收回一些数据
  • 精简 Liferay:删除 Hibernate 和其他未使用的应用程序

    我有一些有关 Liferay 与 hibernate 交互的问题 由于某些原因 我们希望从应用程序中消除这一层 因此有以下问题 我知道Liferay是与Hibernate一起打包的 并且通过使用Hibernate API简化了对Lifera
  • ContentPane 和 JPanel 之间有什么关系?

    我发现了一个示例 其中将按钮添加到面板 实例JPanel 然后将面板添加到容器中 由getContentPane 然后容器通过构造被包含到JFrame 窗户 我尝试了两件事 我把容器扔掉了 更详细地说 我向面板添加了按钮 实例JPanel
  • ServletContext 和 Session 对象

    我们从请求对象 HttpServletRequest 获得的 ServletContext 和 Session 对象的行为是否相同 会话是特定于用户的 Servlet 上下文本质上是全局的 在该 Servlet 的上下文内 这意味着访问该
  • 在 Java 中从字符串中提取第一个单词的最佳方法是什么?

    尝试编写一个简短的方法 以便我可以解析字符串并提取第一个单词 我一直在寻找最好的方法来做到这一点 我想我会用str split 但是我想从字符串中获取第一个单词 并将其保存在一个变量中 然后将其余的标记放入另一个变量中 有没有一种简洁的方法
  • 是否可以使 font-weight:bold 等于 500 而不是 700?

    我刚刚使用 Google Fonts 并发现了 Fira Sans 字体 很好 但我不喜欢 Bold 700 风格 它太大胆了 不符合我的喜好 但是 如果我选择中 500 样式 浏览器不会将其用于任何设置为font weight bold
  • 在python中求Legendre多项式的根

    我正在编写一个程序 通过勒让德 高斯求积求解积分 n 阶求积算法需要在某一时刻找到 n 阶勒让德多项式 Pn x 的根 并将它们分配给数组 Absc 表示 横坐标 Pn 是一个 n 阶多项式 在区间 1 1 上有 n 个独立的实根 我希望能
  • 在 Woocommerce 中以编程方式创建新产品属性

    如何通过插件为 WooCommerce 创建属性 我只找到 wp set object terms object id terms taxonomy append From 这个堆栈问题 https stackoverflow com qu
  • 将动态库 (.dylib) 复制到框架 (.framework)

    我有两个 XCode 项目 一个框架和一个客户端应用程序 我的应用程序依赖于我的框架 一切都运行良好 每次应用程序都会重新编译框架 项目构建路径设置正确 完全没问题 现在框架开始使用第 3 方 dylib 文件 并且它与 dylib 链接
  • 允许任何内容的 XML 架构 (xsd:any)

    我需要一个允许任何事情的 XML 模式示例 这可能听起来很奇怪 但我需要它来调试我当前的模式 问题是 我有一个在函数 我无法控制的 DLL 的一部分 中使用的复杂对象以及模式 并且该函数返回 XML 目前 该函数会抛出异常 因为在验证模式时