I have the following xml:
<GetPurchaseContractResponse xmlns="http://payments.amazon.com/checkout/v2/2010-08-31/"> <GetPurchaseContractResult> <PurchaseContract> <Id>amzn1.contract.1.1.1.d6779be6bf481167fe945</Id> <State>ACTIVE</State> <MerchantId>XXXXXXXXXX</MerchantId> <ExpirationTimeStamp>2012-07-19T10:55:28.134Z</ExpirationTimeStamp> <MarketplaceId>A1SDFERWERSDF</MarketplaceId> </PurchaseContract> </GetPurchaseContractResult> <ResponseMetadata> <RequestId>0db53477-d17a-11e1-ac3e-fd3e0de62222</RequestId> </ResponseMetadata> </GetPurchaseContractResponse>
I want to extract the contents of an ExpirationTimeStamp element.
Here is the corresponding snippet of my code (yes, we use jscript, not vbscript):
var xmlDoc = Server.CreateObject("Msxml2.DOMDocument.6.0"); xmlDoc.loadXML(xml); var expNode = xmlDoc.getElementsByTagName("ExpirationTimeStamp"); if (expNode) Response.Write(expNode.text);
I also tried selectSingleNode instead of getElementsByTagName
I tried GetPurchaseContractResponse / GetPurchaseContractResult / PurchaseContract / ExpirationTimeStamp as an xpath string without a draw, one or two leading slashes
Response.Write (xmlDoc.xml) outputs the entire document, so it loads fine.
The variable expNode does not receive anything.
My knowledge of xpath costs almost nothing, so I’m sure that some expert can point out a simple error that I am making.
source share