Я был бы очень признателен за любые указания по этому вопросу.
Мне нужно преобразовать мои данные в файл на основе SOAP запроса XML. У меня есть два файла XSD: SOAP XSD с настраиваемыми заголовками и переводом XSD (который содержит данные). В настоящее время я думаю об использовании пакета python l xml для добавления конверта SOAP, но я хотел посмотреть, есть ли другой способ сделать это.
Вот что у меня есть сейчас:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:testFile xmlns:nametest="http://testxyz.com/nametest" xmlns:ns0="http://testxyz.com/nametest2" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<Transaction>
<TransactionType>1</TransactionType>
<Demographics>
<ns0:PersonInfo>
<PersonId>
<nametest:SSN>SocialSecurityNo865</nametest:SSN>
</PersonId>
<PersonIdType>A</PersonIdType>
<FirstName>Empl</FirstName>
<LastName>EmployeeLastName863</LastName>
</ns0:PersonInfo>
</Demographics>
</Transaction>
<Transaction>
<TransactionType>1</TransactionType>
<Demographics>
<ns0:PersonInfo>
<PersonId>
<nametest:SSN>SocialSecurityNo1008</nametest:SSN>
</PersonId>
<PersonIdType>A</PersonIdType>
<FirstName>Empl</FirstName>
<LastName>EmployeeLastName1006</LastName>
</ns0:PersonInfo>
</Demographics>
</Transaction>
</ns0:testFile>
Это то, что мне нужно:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ SoapEnvelope.xsd">
<soap:Header>
<nametest:HeaderInfo xmlns:nametest="http://testxyz.com/nametest">
<nametest:InterfaceTypeId>50031</nametest:InterfaceTypeId>
<nametest:BusinessPartnerId>1234567890</nametest:BusinessPartnerId>
<nametest:SchemaVersion>1.0</nametest:SchemaVersion>
<nametest:DateTime>2018-11-13</nametest:DateTime>
<nametest:ContactEmail>contact@email.com</nametest:ContactEmail>
</nametest:HeaderInfo>
</soap:Header>
<soap:Body>
<n1:testFile xsi:schemaLocation=""http://testxyz.com/nametest2 nametest2.xsd" xmlns:nametest="http://testxyz.com/nametest" xmlns:n1="http://testxyz.com/nametest2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Transaction>
<TransactionType>1</TransactionType>
<Demographics>
<n1:PersonInfo>
<PersonId>
<nametest:SSN>SocialSecurityNo865</nametest:SSN>
</PersonId>
<PersonIdType>A</PersonIdType>
<FirstName>Empl</FirstName>
<LastName>EmployeeLastName863</LastName>
</n1:PersonInfo>
</Demographics>
</Transaction>
<Transaction>
<TransactionType>1</TransactionType>
<Demographics>
<n1:PersonInfo>
<PersonId>
<nametest:SSN>SocialSecurityNo1008</nametest:SSN>
</PersonId>
<PersonIdType>A</PersonIdType>
<FirstName>Empl</FirstName>
<LastName>EmployeeLastName1006</LastName>
</n1:PersonInfo>
</Demographics>
</Transaction>
</n1:testFile>
</soap:Body>
</soap:Envelope>
Я искал уже несколько часов, но не смог найти много.