xml - XML 模式:如何在任何地方允许一个特定元素,openContent?
问题描述
我有一个xml
文件,它基本上是一篇文章的数据。我想写一个xml schema
来验证那个文件。在 xml 文章的文件中,我在文本中间使用了一些标签,例如:
<p>The dog is <em>brown</em><p>
我em
也在其他地方使用该标签,在其他类型的元素中,所以问题不仅仅是允许它在p
.
我的问题: 我如何允许它在我的架构的任何元素中使用?我的研究给了我这些主题:
我并不真正理解这些答案(我是初学者),但它似乎openContent
可能是我正在寻找的解决方案。
最小的工作示例:
<?xml version="1.0"?>
<doc>
<foo>text <bar /> anything</foo>
<tag>text <bar /> </tag>
</doc>
架构:
<?xml version="1.0"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="subclass">
<xs:complexType>
<xs:sequence>
<xs:element name="foo">
</xs:element>
<xs:element name="tag">
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
我的真实文档涉及到一些嵌套的sequence
and choice
,而我创建的其他文档会有所不同,所以我正在寻找一个通用的解决方案。
可选问题: 如果解决方案不涉及openContent
,有人可以解释一下它是如何工作的吗?与我查找的所有内容不同,搜索结果奇怪地缺乏示例和解释(针对初学者)。
解决方案
推荐阅读
- android - LinearLayout 无法正确对齐
- java - 使用嵌套目录将文件名转换为完整目录路径的优化方法用于大文件存储
- java - 从存储库中解析插件“spring:boot”的版本时出错
- java - Cucable 插件:如何避免运行“[CUCABLE:FEATURE].feature”(java 模板文件)?
- javascript - React 组件只更新一次
- typescript - 无法在 Typescript 中创建 DOMPoint
- powershell - Powershell - 根据修改时间同步文件
- powershell - 使用函数时无法查看新的 AD 属性
- javascript - 无法在使用 Array.filter 和 Vanilla JavaScript 的函数中输出对象一次
- java - HttpClientBuilder 问题:无法初始化类 sun.security.ssl.SSLContextImpl$CustomizedTLSContext