Я бы хотел
а) генерировать XML-запросы
б) и разбор ответов
на основе схемы (.xsd), полученной от одного из OEM.
Я исследовал сеть, и, кажется, именно то, что я искал, генерировал DS, однако я изо всех сил стараюсь заставить его работать.
Мне удалось создать классы Python, но я не уверен, что это правильный подход.
1) Я пытаюсь сгенерировать XML-запросы во время выполнения, используя модули Python, созданные из XSD, является ли этот подход правильным для производственных приложений.
ИЛИ ЖЕ
Должен ли я генерировать XML-запросы через xml.etree.ElementTree (я понимаю, что в фоновом режиме generateDS также использует это).
2) Когда я создаю экземпляр класса, он не генерирует полный вывод xml.
конечный результат должен выглядеть примерно так:
<BroadsoftDocument protocol = "OCI" xmlns="C" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<sessionId xmlns="">10.21.197.17,22307196,1562598749074</sessionId>
<command xsi:type="AuthenticationRequest" xmlns="">
<userId>provadmin_main@alpha.haystack.amazon.com</userId>
</command>
</BroadsoftDocument>```
Help on class AuthenticationRequest in module OCISchemaLogin_gds:
class AuthenticationRequest(OCIRequest)
| AuthenticationRequest(echo=None, userId=None, **kwargs_)
|
| AuthenticationRequest is 1st stage of the 2 stage OCI login process.
|
| Method resolution order:
| AuthenticationRequest
| OCIRequest
| OCICommand
| GeneratedsSuper
| builtins.object
|
| Methods defined here:
|
| __init__(self, echo=None, userId=None, **kwargs_)
| Initialize self. See help(type(self)) for accurate signature.
|
CODE:
auth_req = OCISchemaLogin_gds.AuthenticationRequest(userId = self.userId,)
command =[OCISchemaLogin_gds.OCICommand(extensiontype_='AuthenticationRequest') ]
message = OCISchemaLogin_gds.OCIMessage(protocol='OCI',sessionId=session, userId=self.userId, command= command)
message.export(sys.stdout,1)
OUTPUT:
<OCIMessage xmlns:None="C" protocol="OCI"> <sessionId>992df876f417bc9215e68dffdac436b7b5fb485bc2dfb5cf8cf324c0ff143c0f</sessionId>
<userId>chaadars_admin_lab</userId>
<OCICommand xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="AuthenticationRequest"/>
</OCIMessage>
SUCCESSFUL
Я даже правильно его использую?