问题标签 [pyxb]

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 回答
2146 浏览

python - 使用 PYXB 解析 XML。无法访问嵌套的匿名元素

我使用以下命令在以下 xsd 文件上使用 PYXB(pyxbgen) 创建了 Python 绑定:

使用生成的绑定,我可以访问所有“事件”数据,但看不到如何访问“详细信息”元素和数据。具体来说,来自形状元素的椭圆和多边形(带有顶点数据)。detail 元素是匿名类型。这是我到目前为止的代码:

这是我正在使用的 Event.xsd 和 Shape.xsd 文件。它们不是我的,所以如果它们有问题,我无法修改它们。

事件.xsd:

形状.xsd:

流标签.xsd:

提前感谢您的帮助!

0 投票
1 回答
293 浏览

python - PyXB - AssertionError:http://www.w3.org/1999/xhtml 中没有元素绑定

我正在尝试使用 PyXB 为 WSDL 生成绑定,并且它在标题中给出了 AssertionError 异常。

根据 PyXB 文档,我的理解是http://www.w3.org/1999/xhtml的捆绑存档的捆绑包存档包含在 PyXB 中。然而,似乎有些不对劲。它要么没有被使用,要么内容不正确。

我使用以下命令行尝试生成绑定:

追溯:

此外,我将 PYXB_ARCHIVE_PATH 环境变量设置为:

我不确定这是否是正确的方法。我也尝试指定 --archive-path 命令行选项,但我得到了同样的错误。

0 投票
2 回答
1527 浏览

python - XSD 解析文档和元素

我有一个xsd用于pyxb生成对象类的对象。到目前为止,一切正常,我能够接收文档,错误处理等工作正常。我唯一的问题是,我的 xsd 中有以下内容:

我在user别处定义了复杂类型。有时我想user从主 xml 文档中获取一个,我想从中创建 python 类绑定......但我做不到。pyxb只允许我从整个文档创建(使用CreateFromDocument函数)。反正有没有得到那一个user元素?

我阅读了以下内容:

https://developer.yahoo.com/python/python-xml.html

http://pyxb.sourceforge.net/api/pyxb.binding.basis.element-class.html

http://pyxb.sourceforge.net/userref_pyxbgen.html

0 投票
1 回答
537 浏览

python - PyXB 将 anyAttribute 属性添加到生成的 Python 类

给定架构:

运行pyxb -u <filename> -m person命令后,如何使用生成的绑定创建具有任意属性的 XML。

但是无论我尝试什么,我都无法在调用时显示临时属性p.toxml()

这不支持吗?还是我忽略了什么?

编辑:脏话被删除。

编辑:做了一个解决方法(语法和变量名很遥远,但希望它足以帮助其他人弄清楚)

0 投票
1 回答
524 浏览

python - PYXB:忽略缺少的属性

我正在使用 Pyxb 解析一些 XML,并且 XML 中没有必需的属性。我捕获了 MissingAttributeError 异常,它告诉我:

我的问题是,即使 XML 数据中缺少必需的属性,是否有办法在缺少此属性的情况下仍解析此 XML 数据?其余的 XML 数据是有效的并且仍然有用。

0 投票
1 回答
626 浏览

python - PyXB:创建更多匿名类型的刚性实例

是否可以使用 PyXB 从具有匿名复杂类型的 XSD 生成模块,这些类型可以进行一些基本的类型和约束检查?



这是我到目前为止所管理的:

使用第 3 方(匿名)XSD:

我生成了一个python模块:

然后在 python 解释器中,我能够创建一个ResultSet实例并在下面创建条目Bar

并且我能够与 的成员互动rs.Bar[0]

但困扰我的是我也可以:

它会接受它,即使code匿名complexType中的元素具有minOccurs="1". 我通过阅读文档和 StackOverflow 上的其他一些问题收集到 PyXB 正在尝试动态地对数据类型进行逆向工程,因此这可能解释了许可性。

如果可能的话,我想在整个过程中覆盖一些东西,让我基本上可以说:

并让它抱怨任何缺少的参数。到目前为止,我已经在考虑编写自己的函数来返回pyxb.BIND()具有适当参数的结果,但这意味着相当程度的手动干预。

PyXB 有没有办法自动创建这样的智能?

0 投票
1 回答
61 浏览

schema - PyXB kml 和 gx 扩展

我正在尝试使用 kml 架构http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd和 gx 扩展架构https://developers.google.com/kml/schema/kml22gx 创建绑定。 xsd

我可以毫无问题地生成和使用从 ogckml22 模式生成的绑定。我不清楚如何将扩展模式合并到这些绑定中。

0 投票
1 回答
185 浏览

python - PYXB - 命名空间组的生成需要生成到文件

PYXB - 在运行时生成类定义时,我面临以下期望

上面的代码给出了这个错误

0 投票
1 回答
229 浏览

python - 有什么办法可以解决 Pyxb 引起的导入版本冲突问题

我有 3 个 python 项目。项目A、项目B和项目C。项目C依赖于项目A和B

项目 A 和项目 B 都依赖于PyXB,它们使用一些生成的模式模块。不幸的是,项目 A 使用 PyXB 1.2.2,项目 B 使用 PyXB 1.2.3

如果您阅读这些模块,您将看到

因此,目前,项目 C 存在版本冲突问题

而且由于这些模式模块是手动修改的。很难重新生成它们并应用相同的修改。所以我想知道是否可以在 Python 中导入具有不同版本的相同模块。例如,我设想可能是这样的

有这样的工具吗?或者在这种情况下我可以使用其他解决方法吗?

0 投票
1 回答
63 浏览

python - DOMGenerationError:绑定值与内容模型不一致

使用 pyxb 模块构建 xml 时,我收到错误消息“DOMGenerationError:绑定值与内容模型不一致”。

是否有可能知道导致上述问题的确切错误消息是什么?