Limit XML output result from SOAP

I have been successfully grabbing data from a server using SOAP. But now I want to take it a step further.

How can I limit the output of items to 10 items for example, rather than the whole catalog?

Here is how I currently grab the data from the server.
<%
Dim objXMLHTTP : SET  objXMLHTTP = Server.CreateObject("Msxml2.XMLHTTP.3.0")
Dim objOutputXMLDoc : Set objOutputXMLDoc = Server.CreateObject("MSXML.DOMDocument")
 
Dim strMethodPkg
Dim strMethodResultXML
 
Dim catID            :      catID = 89
Dim Html_Strip      : Html_Strip = 1
Dim AffiliateID		: AffiliateID = 61
 
 
strMethodPkg ="<?xml version=""1.0"" encoding=""utf-8""?>"
strMethodPkg = strMethodPkg &"<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">"
strMethodPkg = strMethodPkg & "<soap:Body>"
strMethodPkg = strMethodPkg & "<Product_List_Xml xmlns=""http://www.estaronline.com/webservices/"">"
strMethodPkg = strMethodPkg & "<CatalogueID>" & catID & "</CatalogueID>"
strMethodPkg = strMethodPkg & "<Html_Strip>" & Html_Strip & "</Html_Strip>"
strMethodPkg = strMethodPkg & "<AffiliateID>" & AffiliateID &"</AffiliateID>"
strMethodPkg = strMethodPkg & "</Product_List_Xml></soap:Body></soap:Envelope>"
 
objXMLHTTP.open "post", "http://www.servernamegoeshere.com/AffiliateServices.asmx", False
 
objXMLHTTP.setRequestHeader "Content-Type", "text/xml; charset=utf-8"
objXMLHTTP.setRequestHeader "Content-Length", Len(strMethodPkg)
 
 
objXMLHTTP.setRequestHeader "SOAPAction", "http://www.estaronline.com/webservices/Product_List_Xml"
 
Call objXMLHTTP.send(strMethodPkg)
 
strMethodResultXML = objXMLHTTP.responseText
Dim sXml 
objOutputXMLDoc.LoadXml(strMethodResultXML)
sXml = objOutputXMLDoc.SelectSingleNode("//Product_List_XmlResult").ChildNodes(0).xml
 
Dim oXML 
Set oXML = Server.CreateObject("MSXML2.DOMDocument.3.0")
Dim oXSL
Set oXSL= Server.CreateObject("Msxml2.FreeThreadedDOMDocument.3.0")
Dim oTmpl
Set oTmpl= Server.CreateObject("Msxml2.XSLTemplate.3.0")
Dim oProc
 
oXSL.async = false
oXSL.load(Server.MapPath("product.xslt"))
oXML.LoadXml(sXml)
 
oTmpl.stylesheet = oXSL
 
Set oProc= oTmpl.createProcessor()
oProc.input = oXML
 
oProc.addParameter "catID", catID
oProc.output = Response
oProc.transform()
 
%>

Open in new window

LVL 8
Pete_ZedAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

BigRatCommented:
Server Side: Since the SOAP call is for a Web Service, the service *might* offer such a capability. In that case the documenation associated with the service (here Product_List_Xml) might show an extra parameter.

Client Side: you'd have to modify product.xslt not to process too many nodes.

Hope that's a start.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Languages and Standards

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.