Мой поставщик услуг дал мне данные, используя файлы XML и XSD, и я пытаюсь проанализировать эти данные, используя PYXB library в Python.
Я могу получить доступ к корневым и дочерним элементам и атрибутам, за исключением элемента grandchild. Я хотел бы знать, как я могу получить доступ к значению элемента внука (GenderValue).
Вот часть XML-файла:
<Person id="10441" recordaction="add" date="10-Jul-2018">
<GenderDetails>
<Gender>
<ReferenceGroup ReferenceGroupCode="DJ"/>
<GenderValue>Male</GenderValue>
</Gender>
</GenderDetails>
Вот мой код теста Python и результат:
>>> for person in dj.Records.Person:
... if person.GenderDetails is not None:
... if person.GenderDetails.Gender is not None:
... print(person.GenderDetails.Gender)
... print(person.GenderDetails.Gender.GenderValue)
...
[<schema_DJ.CTD_ANON_14 object at 0x11b97afd0>]
Traceback (most recent call last):
File "<stdin>", line 5, in <module>
AttributeError: '_PluralBinding' object has no attribute 'GenderValue'
Результат показывает, что объект Gender находится в памяти и AttributeError. Я не знаю, почему он искал атрибут вместо элемента. Спасибо за вашу помощь заранее.