2010-03-11 3 views
1

Например,
В этом документеКак получить префиксы пространства имен из документа XML, используя MSXML?

< ?xml version="1.0" ? > 

< SOAP-ENV:Envelope 

xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 

xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

xmlns:xsd="http://www.w3.org/2001/XMLSchema" 

xmlns:ns1="http://opcfoundation.org/webservices/XMLDA/1.0/" 

xmlns:ns2="Service"> 

< SOAP-ENV:Body id="_0" > 

, если мне нужно, чтобы выбрать элемент «Body», мне нужно знать префикс «SOAP-ENV». Как я могу это получить? получить корневой элемент и нарезать двоеточие (:) off кажется грязной идеей для меня, я уверен, что должен быть аккуратный способ сделать это. Google не помогает (возможно, я не искал правильную вещь).

ответ

2

Если вы выполняете обработку XML, вам не нужно знать префикс.

Чтобы выбрать узел в документе XML, вам не нужно знать префикс. Вам нужно знать пространство имен, а не префикс.

Если вы обрабатываете документ SOAP, то знаете, что пространство имен равно http://schemas.xmlsoap.org/soap/envelope/. И это все, что вам нужно. В приложении XML вы можете назначить свой собственный префикс пространства имен.

+0

Благодарю вас, позвольте мне попробовать это завтра. –