问题标签 [relaxng]

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 投票
1 回答
984 浏览

xml - 如何在 Relax NG 中实现约束/条件运算符?

考虑以下用紧凑语法编写的Relax NG模式

特此任何 XML 文档,如

将被确认为格式正确。现在我想设置一些约束,例如元素值之间的一些依赖关系。例如

这将过滤掉一些无效的文档,例如

Relax NG 的语法没有提供一个明确的机制来编写条件运算符,所以我的问题是如何模拟这种行为并实现某些元素和属性的值之间的依赖关系?

如果您向我展示一种使用经典 DTD 执行此操作的方法,我将不胜感激。

任何帮助将不胜感激。提前致谢。

0 投票
1 回答
212 浏览

xml - 如何在 Relax NG 中定义自己的类型?

考虑以下正则表达式

此模式以 MM/DD/YYYY 格式表示日期字符串。现在,如果我想创建几个这种类型的属性,我显然可以这样写:

但是每次我想以这种格式定义日期时,写模式线是非常不方便的。我想定义自己的类型,例如MyDateFormat,并在必要时使用它,attribute someDate { MyDateFormat }而不是多次重写相同的代码,但我找不到使用Relax NG compact syntax定义自己的类型的方法。我的问题是如何实现这种行为并避免代码两次重写。

任何帮助将不胜感激。提前致谢。

0 投票
1 回答
515 浏览

relaxng - 在 Windows 上放松 NG

我猜我的问题可能源于与 UTF8 相关的 Windows 文件问题。但话又说回来,代码是基于 Java 的,所以问题可能是任何问题。

我运行了 MSV 和 JING 验证器,两者都给出了与下面相同的结果。但是同一个文件在它的内部验证器上确实验证得很好。我错过了什么?请注意,它在第一个字符上失败,因此解析器不太可能是问题所在。尝试在管理员模式下运行它以消除任何可能的权限问题。结果相同。

0 投票
1 回答
220 浏览

validation - RelaxNG - *任何*属性?

有没有办法定义任何名称属性?我正在验证用户可以并且确实将自己的属性应用于标签等的代码,这不会影响我的项目。

0 投票
1 回答
1219 浏览

xml - 为什么 Jing 不允许在 id 属性中使用冒号(“:”)?

我一直在抨击 xsd:ID 不允许在 id 属性中使用冒号(“:”)。我在 Emacs 中使用 James Clark 的 nxml-mode 时首先注意到这一点,因为它验证了我正在使用的 XHTML 文件。然后我使用 Jing 对 RNG(提供 nxml-mode-20041004)运行 XHTML 文件并收到以下错误:

我见过的大多数 W3 页面都表明冒号是有效的。然后我发现了这个,http://www.w3.org/XML/xml-19980210-errata#E98,我的意思是:“你不应该在 id 属性中使用冒号,但你应该被允许。” 鉴于这种解释,我很困惑为什么静说我不能。

谢谢你,
扎卡里

0 投票
1 回答
227 浏览

c - 分析 XML 解析(和验证)C 程序

感谢 Stack Overflow 的 jmbr,我终于找到了一种通过 C 程序针对 RELAX NG 验证 xml 的方法。程序如下...

}

从那时起,我对程序进行了重大调整,以便找出解析和验证 xml 文件的“处理时间”。有没有办法找出这个程序的最佳情况和最坏情况。最坏的情况是,任何 xml 文件作为输入所花费的时间总是最高的。最好的情况是,花费的时间总是最少的。我真的被困在这一点上。真的很感激,如果你们中的任何人可以帮助我。

0 投票
1 回答
573 浏览

c++ - 如何针对 libxml++ 中的relaxNG 模式验证 xml 文档

我对在 C++ 中解析 xml 和一般的 xml 比较陌生。我正在尝试使用 libxml++ 库中的 SAXParser 解析我的文档,但是,我还希望它能够针对一个 RelaxNG 模式验证我的文档。我发现 libxml++ 下面的 libxml2 有一个 RelaxNG 模块,但我无法找到如何使用它的 libxml++ 绑定。任何线索或代码片段将不胜感激。

0 投票
2 回答
1714 浏览

java - 使用 RNOM 从 RelaxNG 模式生成对象模型 - 如何开始?

我想从一个 RelaxNG 模式中生成一个对象模型。

因此,我想使用RNGOM 对象模型/解析器(主要是因为我找不到任何替代方案 - 尽管我什至不关心解析器编写/生成的语言)。现在我从 SVN 查看了RNGOM 源代码,我不知道如何使用 RNGOM,因为没有任何关于使用的信息。

一个有用的提示如何开始使用 RNGOM - 一个链接、示例或任何使我不必阅读理解 RNGOM 的整个源代码的描述 - 将作为答案授予。更好的是如何使用解析器从 RNG 文件生成对象模型的简单示例。

更多信息:

我想从以下 RelaxNG Schema 生成 Java 类:
http ://libvirt.org/git/?p=libvirt.git;a=tree;f=docs/schemas;hb=HEAD

我发现 Glassfish 的人正在使用 rgom 来生成我需要的相同对象模型,但我还不知道他们是如何使用 rgom 的。

0 投票
1 回答
434 浏览

xml - 放松:包含

在 RelaxNG 中,我想描述一个类似这样的结构:

或者:

我尝试使用以下 rng:

但是lxml在 Python 中验证时,我只收到错误消息Did not expect element subelem1 there

那里有什么问题?

0 投票
2 回答
674 浏览

php - 在 PHP 中验证 XHTML5?

背景

我已决定将我的网站提供application/xhtml+xml给任何愿意接受它的人。我明白会有后果,我愿意接受这些后果。

问题

我正在尝试在 PHP 中验证 XHTML5。这样,我可以像text/html验证失败一样提供文件(嘿,没有人是完美的)。不过,即使在我的情况之外,我的问题也是有价值的。

那么我有哪些选择来验证 XHTML5?


我做了什么:

我已经DOMDocument在我的源代码中使用 PHP 作为模板形式,所以我希望能够使用DOMDocument::relaxNGValidateDOMDocument::schemaValidate。我既找不到.xsd.rng无法使用。但是,我想我已经找到了一个制作 rng 语法的目录。在今天之前,我什至从未听说过 Relax NG。对这个方向有帮助吗?