我正在使用 PyXB 1.2.6 处理多个 XSD 类绑定。我想获取任意元素类型定义的子元素名称的顺序。到目前为止,我想出了这段代码:
from pyxb.binding.basis import element
def get_sub_elements(type_definition):
"""Returns an ordered list of the respective
sub-elements of the given PyXB element.
"""
if isinstance(type_definition, element):
type_definition = type_definition._element__typeDefinition()
element_map = type_definition._ElementMap
return tuple(name.localName() for name in element_map.keys())
但是,由于_ElementMap
是 a dict
,它以随机顺序生成密钥。然而,我需要元素的顺序,因为它在相应的 XSD 中定义。我怎样才能做到这一点?