using System.Collections;
public static void Main()
string strXml1 = @"<?xml version=""1.0"" encoding=""UTF-8""?>
<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/""
xmlns:urn=""urn:sap-com:document:sap:rfc:functions"">
<urn:Z_GET_BATCH_QUANTITY>
<I_BATCH>2095109</I_BATCH>
</urn:Z_GET_BATCH_QUANTITY>
string strXml2 = @"<?xml version=""1.0"" encoding=""ISO-8859-1""?>
<soap-env:Envelope xmlns:soap-env=""http://schemas.xmlsoap.org/soap/envelope/"">
<p1:Z_PROCESS_MESS_UPLOAD xmlns:p1=""urn:sap-com:document:sap:rfc:functions"">
<RFC_DESTINATION_FOR_TRFC>NONE</RFC_DESTINATION_FOR_TRFC>
<SEDAT>2022-09-07</SEDAT>
<ATNAM>PPPI_PROCESS_ORDER</ATNAM>
<ATWRT>000010393115</ATWRT>
<ATNAM>PPPI_EVENT_DATE</ATNAM>
<ATNAM>PPPI_EVENT_TIME</ATNAM>
<ATNAM>PPPI_BATCH</ATNAM>
<ATNAM>PPPI_CONTROL_RECIPE</ATNAM>
<ATNAM>PPPI_OPERATION</ATNAM>
<ATNAM>PPPI_PHASE</ATNAM>
<ATNAM>OP_QTY_AUTOM</ATNAM>
<ATNAM>OP_UNIT_AUTOM</ATNAM>
<ATNAM>PPPI_MATERIAL</ATNAM>
<ATWRT>000000000000108260</ATWRT>
<ATNAM>PPPI_MATERIAL_ITEM</ATNAM>
<ATNAM>PPPI_RESERVATION</ATNAM>
<ATWRT>0165629370</ATWRT>
<ATNAM>PPPI_RESERVATION_ITEM</ATNAM>
<ATNAM>OP_ORI_RES_ITEM</ATNAM>
<ATWRT>0000000032</ATWRT>
</p1:Z_PROCESS_MESS_UPLOAD>
string strXml3 = @"<?xml version=""1.0"" encoding=""UTF-8""?>
<soap-env:Envelope xmlns:soap-env=""http://schemas.xmlsoap.org/soap/envelope/"">
<ZPROCORDCONF_CREATETIME201>
<DOCNUM>bfef8819-83be-4fd9-85db-af0902c0bf30</DOCNUM>
<IDOCTYP>ZPROCORDCONF_CREATETIME201</IDOCTYP>
<MESTYP>ZPROCORDCONF_CREATETIME2</MESTYP>
<SNDPRN>MES_1010</SNDPRN>
<Z1ZPROCORDCONF_CREATETIME2 SEGMENT=""1"">
<Z1BP_PI_TIMETICKET1 SEGMENT=""1"">
<ORDERID>000010393112</ORDERID>
</Z1ZPROCORDCONF_CREATETIME2>
</ZPROCORDCONF_CREATETIME201>
string strXml = "<soap-env:Envelope></soap-env:Envelope";
XDocument xDoc = XDocument.Parse(strXml);
XNamespace soapenv="http://schemas.xmlsoap.org/soap/envelope/";
XElement root = xDoc.Element(soapenv + "Envelope");
if (root.Element(soapenv + "Header") != null) {
XElement elemBody = root.Element(soapenv + "Body");
XElement elemFunc = elemBody.Elements().FirstOrDefault();
if (XElement.Parse(elemFunc.ToString()).GetPrefixOfNamespace("urn:sap-com:document:sap:rfc:functions") != null) {
} else if (elemBody.Descendants("IDOC").FirstOrDefault().Element("EDI_DC40") != null) {