You're inside a template matching /
so the
<xsl:value-of select="Response" />
and similar expressions are looking for a root-level element named Response
in no namespace, which doesn't exist (the document element is named Envelope
and is in the http://schemas.xmlsoap.org/soap/envelope/
namespace).
You would need to declare the http://services.test.com/schema/MainData/V1
namespace with a prefix in your stylesheet:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:md1="http://services.test.com/schema/MainData/V1"
exclude-result-prefixes="md1">
and fix up your xpaths to match the structure:
<xsl:value-of select="soap:Envelope/soap:Body/md1:insertDataResponse/md1:Response"/>
However given how similar your inputs and outputs are you might be better off structuring things differently, basing your stylesheet on the identity transformation instead (of which there are hundreds of examples in other questions on this site).