我正在尝试使用 kml 架构http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd和 gx 扩展架构https://developers.google.com/kml/schema/kml22gx 创建绑定。 xsd
我可以毫无问题地生成和使用从 ogckml22 模式生成的绑定。我不清楚如何将扩展模式合并到这些绑定中。
我正在尝试使用 kml 架构http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd和 gx 扩展架构https://developers.google.com/kml/schema/kml22gx 创建绑定。 xsd
我可以毫无问题地生成和使用从 ogckml22 模式生成的绑定。我不清楚如何将扩展模式合并到这些绑定中。
您不会将架构合并到这些绑定中。您为扩展模式(具有自己的命名空间)生成一个新的绑定模块,并确保它引用现有的绑定。像这样[*]:
pyxbgen \
--archive-path='&pyxb/bundles/opengis//' \
--schema-location=http://code.google.com/apis/kml/schema/kml22gx.xsd \
--module=kml22gx
的绑定kml22gx
将pyxb.bundles.opengis.ogckml22
是正在扩展的绑定的子类。
查看在pyxb/bundles/opengis/scripts/genbind
PyXB 本身中生成绑定的文件。一些命名空间扩展了其他 OpenGIS 命名空间,在之前的 pyxbgen 调用中为其生成了绑定。
([*] 当你这样做时,你可能会得到一个 AssertionError。注释掉断言;它似乎太严格了。)