问题标签 [dtd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
172 浏览

xml - 任何允许指定约束(如无循环引用)的 XML 模式语言?

是否有任何 XML 模式语言允许指定元素之间不能存在循环引用的约束。

作为一个玩具示例:

会验证,但是

不会验证。

0 投票
4 回答
3811 浏览

java - 如何判断 XML 文档是针对 DTD 还是 XSD 进行验证?

在 Java 中,我可以使用 javax.xml.validation.Validator 针对 XSD 模式验证 XML 文档,或者通过使用 org.xml.sax.XMLReader 简单地解析文档来针对 DTD 验证 XML 文档。

不过,我需要的是一种以编程方式确定文档本身是否针对 DTD(即它包含一条<!DOCTYPE ...>语句)或 XSD 进行验证的方法。理想情况下,我需要在不将整个 XML 文档加载到内存的情况下执行此操作。有人可以帮忙吗?

(或者,如果有一种Java 中验证 XML 文档的方法既适用于 XSD 也适用于 DTD - 并且允许自定义资源解析 - 那会更好!)

非常感谢,

一种

0 投票
3 回答
11187 浏览

java - 如何在编写 XML 文件时忽略 DTD 验证但保留 Doctype?

我正在开发一个系统,该系统应该能够读取任何(或至少任何格式良好的)XML 文件,操作一些节点并将它们写回到同一个文件中。我希望我的代码尽可能通用,我不希望

  • 在我的代码中的任何位置对 Schema/Doctype 信息的硬编码引用。doctype 信息在源文档中,我想准确地保留该 doctype 信息,而不是在我的代码中再次提供它。如果一个文档没有 DocType,我不会添加一个。我根本不关心这些文件的形式或内容,除了我的几个节点。
  • 自定义 EntityResolvers 或 StreamFilters 以省略或以其他方式操作源信息(很遗憾,命名空间信息似乎无法从声明它的文档文件中访问,但我可以通过使用更丑的 XPaths 来管理)
  • DTD 验证。我没有引用的 DTD,我不想包含它们,并且在不知道它们的情况下完全可以进行节点操作。

目的是使源文件完全不变,除了通过 XPath 检索的已更改节点。我想摆脱标准的 javax.xml 东西。

到目前为止我的进展:

这会成功地将 XML 源加载到 org.w3c.dom.Document 中,而忽略 DTD 验证。我可以做我的替换,然后我使用

把它写回来。这几乎是完美的。但是无论我做什么,Doctype 标签都消失了。在调试的时候,看到解析后的Document对象中有一个DeferredDoctypeImpl [log4j:configuration: null]对象,但是不知怎么的,它是错误的,为空或被忽略。我测试的文件是这样开始的(但其他文件类型也是如此):

<?xml 版本="1.0" 编码="UTF-8"?>

<!DOCTYPE log4j:配置系统“log4j.dtd”>

<log4j:配置 xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">

[...]

我认为有很多(简单的?)方法涉及黑客或将额外的 JAR 拉入项目。但我更愿意将它与我已经使用的工具一起使用。

0 投票
5 回答
28088 浏览

xml - Android 项目中 XML 文件的架构在哪里?

Android 上使用的 XML 文件(如 AndroidManifest.xml 或布局)的架构(DTD 或 XML 架构)在哪里?

0 投票
2 回答
4624 浏览

xml - 我可以从 Java 中的 dtd 文件创建 XML 文档吗?

我有一个包含元素和属性规范的简单 DTD 文件。我可以创建一个合适的 XML 文件(带有 DOM),用 Java 解析这个 DTD 而没有外部 API?

提前致谢

0 投票
1 回答
4684 浏览

xml - 如何在 Oracle DB 中禁用 XML DTD 验证?

我在查询的选择部分使用以下语句:

如果doc.payload包含XML没有DTD声明,它工作得很好,但是当声明存在时引发错误,DTD因为 Oracle 尝试验证文档但找不到DTD.

如何禁用XML此查询的验证?我不想在这件事上影响我的会话设置或全局系统设置。

0 投票
2 回答
763 浏览

.net - 在 .net 中使用 XML 文档类型定义

是否可以将 XML DTD 导入 Visual Studio 以生成代理类?

我有一个需要与之交互的第三方 .dll,它的设计类似于 XML 服务。.dll 的接口全部由 XML 输入驱动,并以 XML 形式返回输出。它的好处是所有输入和输出类型都定义良好。坏消息是他们使用 DTD(文档类型定义)。

我真的不想手动构建 XML,但我只知道如何使用 XSD 文件.Net

0 投票
0 回答
240 浏览

xsd - 是否有任何免费使用 XSD (DTD) 用于 Rx 文档(药物处方)

我想探索并可能使用(重用)开放 XML 格式/方案(DTD/XSD),用于由医生签发的药物(药物)处方文件(Rx),然后由持牌药剂师和健康保险公司处理。

是否有任何这样的免费 XSD 可用,在考虑和纳入医疗保健信息系统时我必须注意什么?

应使用哪些国际标准(ISO、ISO/IEC、EN)来实现最高水平的互操作性

0 投票
2 回答
9776 浏览

xml - 使用带有 XML 的文档类型

我使用单独的 .dtd 文件作为自定义 xml 文件的 doctype:

名称.xml

名称.dtd

但是,当尝试访问 names.xml 时,出现以下错误:

XML 解析错误:未定义实体位置: http://localhost/.../names.xml第 5 行,第 18 列:

只是为了澄清,names.xml 和 names.dtd 位于同一目录中,使用http://localhost/.../names.dtd也不起作用。

<!ENTITY但是,当将内部 a<!DOCTYPE放入时,这似乎确实有效names.xml。有人可以就此提出建议吗?

0 投票
2 回答
460 浏览

xsd - DTD 和 XMLSchema 的等价性

我一直认为 XMLSchema 和 DTD 是等价的,但后者在建模复杂关系(如继承)时使用起来更麻烦。

最近我想构建一个模式来验证具有如下结构的文档:

<data> 中的元素可以按任何顺序出现,每个元素的基数为 0..* 使用 XMLSchema,如果我使用 <xs:all> 定义复杂类型,我可以让元素乱序,但最大基数为 1。 < xs:sequence > 和 < xs:choice > 是其他明显的候选者,但它们比我想要的更严格。

然后我注意到 DTD 似乎能够像这样实现这一点:

有什么方法可以构建一个等效的模式,还是我必须在这里使用 DTD?