| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479 | <?xml version="1.0" encoding="UTF-8"?><!--Licensed Materials - Property of IBMIBM Cognos Products: AGS(C) Copyright IBM Corp. 2005, 2008US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.--><xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/AGS.xml,messages/portal.xml, messages/portalRL.xml" resolverBase="prompting" includeConfig="true" requiredCapability="canUseEventStudio">    <!--	    ================================================================================    decode the parameter context    ===============================================================================================    -->    <xts:block id="decodeContext" processor="XSLT" type="exec">        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xsl xtsext xts">            <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>            <xsl:template match="/">                <xts:sequence>                    <!-- decode the agent items -->                    <xts:append select="/root">                        <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap_settemplatename_decodeagentdefinition_settemplateid_dialogadapter001', string( /root/env/param[@name = 'context'])), true() )" disable-output-escaping="yes"/>                    </xts:append>                    <!-- get rid of the blob for the time being -->                    <xts:delete select="/root/env/param[@name = 'context']"/>                </xts:sequence>            </xsl:template>        </xsl:stylesheet>    </xts:block>    <!--	    ================================================================================    decode the agent items     ===============================================================================================    -->    <xts:block id="moveContext" processor="XSLT" type="exec" dependency="decodeContext">        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xsl xtsext xts">            <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>            <xsl:template match="/">                <xts:sequence>                    <!-- decode the agent items -->                    <xts:append select="/root/env">                        <xsl:copy-of select="/root/context/env/*"/>                    </xts:append>                </xts:sequence>            </xsl:template>        </xsl:stylesheet>    </xts:block>    <!--	================================================================================	whip out the parameters that were saved off previously	===============================================================================================	-->    <xts:block id="decodeExistingParameters" path="/ags/parameters/decodeExistingParameters.xslt" dependency="moveContext" processor="XSLT" type="exec" mandatory="false">        <xts:logicsheet path="logicsheets/portal.xsl"/>        <xts:logicsheet path="logicsheets/buslogic.xslt"/>    </xts:block>    <!--	================================================================================	If we have been through this dialog before we will have saved or unsaved parameter values to display, so whip them out	from the parameter named taskParameters. this contains the previously saved param values retrieved in loadAgent and any unsaved updates	from previous passes through this dialog		===============================================================================================	-->    <xts:block id="checkExistingParameters" path="/ags/parameters/checkExistingParameters.xslt" dependency="decodeExistingParameters" processor="XSLT" type="exec" mandatory="false">        <xts:logicsheet path="logicsheets/buslogic.xslt"/>    </xts:block>    <!--	===============================================================================================     appendMetadataToDocument - add the results of the requests into the right place 	===============================================================================================	-->    <xts:block id="extractProcedureDetails" mode="interpret" processor="XSLT" type="exec" dependency="checkExistingParameters" mandatory="false">        <xts:logicsheet path="logicsheets/buslogic.xslt"/>        <xts:logicsheet path="logicsheets/portal.xsl"/>        <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:bus="http://developer.cognos.com/schemas/bibus/3/" xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/" xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/">            <xsl:output method="xml" version="1.0" encoding="UTF-8"/>            <xsl:template match="/root">                <xts:sequence>                    <xts:append select="/root">                        <xsl:choose>                            <xsl:when test="/root/env/param[@name='procedureDetails']">                                <xsl:value-of select="/root/env/param[@name='procedureDetails']" disable-output-escaping="yes"/>                            </xsl:when>                            <xsl:otherwise>                                <procedureDetails>                                    <ResponseRoot>                                        <xsl:element name="folder"> <!--folder _path="[pubsds]" _ref="[pubsds]"-->                                            <xsl:element name="updateSubject">                                                <xsl:attribute name="_path"><xsl:value-of select="/root/env/param[@name='sql_procedure_name']"/></xsl:attribute>                                                <xsl:attribute name="_ref"><xsl:value-of select="/root/env/param[@name='sql_procedure_name']"/></xsl:attribute>                                                <xsl:attribute name="canonicalName">                                                    <xsl:variable name="canonicalName">                                                      <xsl:call-template name="substring-after-last">                                                        <xsl:with-param name="string" select="/root/env/param[@name='sql_procedure_name']" />                                                        <xsl:with-param name="delimiter" select="'.['" />                                                      </xsl:call-template>                                                    </xsl:variable>                                                    <xsl:value-of select="substring-before($canonicalName,']')"/>                                                </xsl:attribute>                                                <xsl:apply-templates select="/root/agent_item//name"/>                                                <xsl:apply-templates select="/root/agent_item//parameterName"/>                                            </xsl:element>                                        </xsl:element>                                    </ResponseRoot>                                </procedureDetails>                            </xsl:otherwise>                        </xsl:choose>                    </xts:append>                </xts:sequence>            </xsl:template>            <xsl:template name="substring-after-last">              <xsl:param name="string" />              <xsl:param name="delimiter" />              <xsl:choose>                <xsl:when test="contains($string, $delimiter)">                  <xsl:call-template name="substring-after-last">                    <xsl:with-param name="string"                      select="substring-after($string, $delimiter)" />                    <xsl:with-param name="delimiter" select="$delimiter" />                  </xsl:call-template>                </xsl:when>                <xsl:otherwise><xsl:value-of select="$string" /></xsl:otherwise>              </xsl:choose>            </xsl:template>            <xsl:template match="name">                <xsl:element name="procParameter">                    <xsl:attribute name="parameterName"><xsl:value-of select="."/></xsl:attribute>                    <xsl:attribute name="value">?<xsl:value-of select="."/>?</xsl:attribute>                </xsl:element>            </xsl:template>            <xsl:template match="parameterName">                <xsl:element name="procParameter">                    <xsl:attribute name="parameterName"><xsl:value-of select="."/></xsl:attribute>                    <xsl:attribute name="value">?<xsl:value-of select="."/>?</xsl:attribute>                </xsl:element>            </xsl:template>            <pf:serialize-xml/>        </xsl:stylesheet>    </xts:block>    <!--	===============================================================================================     appendMetadataToDocument - add the results of the requests into the right place 	===============================================================================================	-->    <xts:block id="extractPassedParameterValues" mode="interpret" processor="XSLT" type="exec" dependency="extractProcedureDetails" mandatory="false">        <xts:logicsheet path="logicsheets/buslogic.xslt"/>        <xts:logicsheet path="logicsheets/portal.xsl"/>        <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:bus="http://developer.cognos.com/schemas/bibus/3/" xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/" xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/">            <xsl:output method="xml" version="1.0" encoding="UTF-8"/>            <xsl:template match="/root">                <xts:sequence>                    <xts:append select="/root">                        <connectionParameterValues>                            <xsl:value-of select="/root/env/param[@name='parameterValues']" disable-output-escaping="yes"/>                        </connectionParameterValues>                    </xts:append>                </xts:sequence>            </xsl:template>            <pf:serialize-xml/>        </xsl:stylesheet>    </xts:block>          <!--	===============================================================================================     appendMetadataToDocument - add the results of the requests into the right place 	===============================================================================================	-->    <xts:block id="clearStaleConnectionParameterValues" mode="interpret" processor="XSLT" type="exec" dependency="extractPassedParameterValues" mandatory="false">        <xts:logicsheet path="logicsheets/buslogic.xslt"/>        <xts:logicsheet path="logicsheets/portal.xsl"/>        <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:bus="http://developer.cognos.com/schemas/bibus/3/" xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/" xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/">            <xsl:output method="xml" version="1.0" encoding="UTF-8"/>            <xsl:template match="/root">                <xts:sequence>                    <xts:append select="/root">                        <xsl:for-each select="/root/agent_item/parameterData/parameterValues/item[starts-with(./*[local-name() = 'name'], 'credential:')]">                            <xsl:variable name="name" select="./*[local-name() = 'name']"/>                            <xsl:if test="not(/root/connectionParameterValues/item[./*[local-name() = $name]])">                                <xts:delete select="/root/agent_item/parameterData/parameterValues/item[./*[local-name()='name'] = '{$name}']"/>                            </xsl:if>                        </xsl:for-each>                    </xts:append>                </xts:sequence>            </xsl:template>            <pf:serialize-xml/>        </xsl:stylesheet>    </xts:block>    <!--	===============================================================================================	ProcessResponse - Process the response of the call and transform it into a standard xml structure	===============================================================================================	-->    <xts:block id="processResponse" mode="interpret" dependency="clearStaleConnectionParameterValues" mandatory="false" processor="XSLT" type="exec">        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bus="http://developer.cognos.com/schemas/bibus/3/">            <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>            <xsl:template match="/root">                <xsl:variable name="storedProc">                    <xsl:choose>                        <xsl:when test="/root/env/param[@name='sql_procedure_name'] and /root/env/param[@name='sql_procedure_name']!=''">                            <xsl:value-of select="/root/env/param[@name='sql_procedure_name']"/>                        </xsl:when>                        <xsl:otherwise>                            <xsl:value-of select="/root/*[local-name()='procedureDetails']/*[local-name()='ResponseRoot']/*[local-name()='folder']/descendant::updateSubject[1]/@_ref"/>                        </xsl:otherwise>                    </xsl:choose>                </xsl:variable>                <!-- This will need to change when QF fix the bug with the getParametersSpecification method-->                <xts:sequence>                    <xts:append>                        <parametersResponse>                            <parameter>                                <xsl:for-each select="/root/procedureDetails/ResponseRoot/folder//updateSubject[@_ref=$storedProc]/procParameter">                                    <item>                                        <xsl:for-each select="./@*">                                            <xsl:variable name="name">                                                <xsl:value-of select="translate(local-name(),'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')"/>                                            </xsl:variable>                                            <xsl:element name="{$name}">                                                <xsl:value-of select="."/>                                            </xsl:element>                                        </xsl:for-each>                                        <name>                                            <xsl:value-of select="@parameterName"/>                                        </name>                                        <type>                                            <xsl:value-of select="@datatype"/>                                        </type>                                    </item>                                </xsl:for-each>                                <!--no sneak in the passed connection parameter values -->                                <xsl:for-each select="/root/connectionParameterValues/*/item">                                    <item>                                        <value>                                            <xsl:value-of select="substring-after(./bus:name, ':')"/>                                        </value>                                        <name>                                            <xsl:value-of select="./bus:name"/>                                        </name>                                        <type>credential</type>                                    </item>                                </xsl:for-each>                            </parameter>                        </parametersResponse>                    </xts:append>                </xts:sequence>            </xsl:template>        </xsl:stylesheet>    </xts:block>        <!--	================================================================================	check that we have all the parameters, even those without saved values	and produce a block of xml to be used by the display that contains all the parameters and any parameter values that may have been	saved or recently generated by this page via the rs or the model insert button	remove any saved params that are no longer valid	===============================================================================================	-->    <xts:block id="mergeParameters" path="/ags/parameters/mergeParameters.xslt" dependency="processResponse" processor="XSLT" type="exec" mandatory="false">    </xts:block>		<!--	================================================================================	    Append the credential param vals	===============================================================================================	-->    <xts:block id="appendCredentialParams" dependency="mergeParameters" processor="XSLT" type="exec" mandatory="false">        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xts="http://developer.cognos.com/schemas/xts/" exclude-result-prefixes="xts xsl">            <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>            <xsl:template match="/">                <xts:sequence>                    <xts:append select="/root/agent_item/parameterData/parameterValues">                        <xsl:for-each select="/root/connectionParameterValues/*/item">                            <xsl:variable name="parmName" select="./*[local-name()='name']"/>                            <xsl:if test="not(/root/agent_item/parameterData/parameterValues/item[./*[local-name()='name'] = $parmName])">                                <!--now sneak in the passed connection parameter values (if its not there) -->                                <xsl:copy-of select="."/>                            </xsl:if>                        </xsl:for-each>                    </xts:append>                </xts:sequence>            </xsl:template>        </xsl:stylesheet>    </xts:block>    <!--	================================================================================	if We have just come back from a jaunt round the report server, update the agent task blob	===============================================================================================	-->    <xts:block id="createParametersBlob" path="/ags/parameters/createParametersBlob.xslt" dependency="appendCredentialParams" processor="XSLT" type="exec">        <xts:logicsheet path="logicsheets/portal.xsl"/>        <xts:logicsheet path="logicsheets/buslogic.xslt"/>    </xts:block>    <!--	===============================================================================================	get connection parameter info for the display	===============================================================================================	-->    <xts:block id="expandCredentialInfomation" path="/ags/parameters/expandCredentialInformation.xslt" dependency="createParametersBlob" processor="XSLT" type="exec" mandatory="false" condition=".[/root/agent_item/parameterData/*[local-name()='parameterValues']]">        <xts:logicsheet path="logicsheets/buslogic.xslt"/>    </xts:block>    <!--	===============================================================================================	retrieve datasource connection information for the display	===============================================================================================	-->    <xts:block id="getCredentialInformation" path="/ags/parameters/getCredentialInformation.xslt" dependency="expandCredentialInfomation" processor="XSLT" type="exec" mandatory="false" condition=".[/root/credentialParameters/credentialParameter]">        <xts:logicsheet path="logicsheets/buslogic.xslt"/>    </xts:block>    <!--	================================================================================	    Append the report path to the agent path.	===============================================================================================	-->    <xts:block id="appendDisplayedPageType" dependency="getCredentialInformation" processor="XSLT" type="exec" mandatory="false">        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xts="http://developer.cognos.com/schemas/xts/" exclude-result-prefixes="xts xsl">            <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>            <xsl:template match="/">                <xts:sequence>                    <xts:append select="/root">                        <displayedPage quote-string="">sql</displayedPage>                    </xts:append>                </xts:sequence>            </xsl:template>        </xsl:stylesheet>    </xts:block>    <!--	================================================================================	create a data structure for the display to work on....	take the report server parameters as the basis and include the default literal summary and model values		format:	    <parametersDisplay>	        <parameter name="... identifier" caption="localised dislpay name"  multivalued="true/false" required="true/false" type="" literalValue="" modelValue=""/>	    </parametersDisplay>	===============================================================================================	-->    <xts:block id="createDisplayData" path="/ags/parameters/createDisplayData.xslt" dependency="appendDisplayedPageType" processor="XSLT" type="exec" mandatory="false">        <xts:logicsheet path="logicsheets/portal.xsl"/>        <xts:logicsheet path="ags/logicsheets/dialogs.xsl"/>    </xts:block>    <!--	===============================================================================================	genMarkup - 	===============================================================================================	-->    <xts:block id="genMarkup" type="exec" processor="XSLT" dependency="createDisplayData" mandatory="false">        <!-- logicsheets -->        <xts:logicsheet path="logicsheets/portal.xsl"/>        <!-- agent studio logicsheets -->        <xts:logicsheet path="ags/logicsheets/arguments.xslt"/>        <xts:logicsheet path="ags/logicsheets/dialogs.xsl"/>        <!-- Dialog specific logicsheets -->        <xts:logicsheet path="logicsheets/presentation/dialog/ui-templates.xsl"/>        <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>        <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>        <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>        <!-- Generic logicsheets -->        <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>        <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>        <!-- apply the form logic -->        <!-- Prevent the href from appearing in the status bar. -->        <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:agsarg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/arguments/" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:out="http://www.w3.org/1999/XSL/Transform" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/" xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/" xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/" xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/" xmlns:req-params="http://developer.cognos.com/schemas/request/params" xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/" xmlns:xos="http://developer.cognos.com/schemas/xts/output/" xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/" xmlns:agsdlg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/dialog/" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:x="x" exclude-result-prefixes="agsarg xts xsl cm pf xtsext lyt dp df cf cp xos utml agsdlg x">            <xsl:output method="xml" encoding="utf-8" indent="no"/>            <xsl:key name="request-param" match="/root/*[local-name()='requestParams']/*[local-name()='param']" use="@name"/>            <pf:variables/>            <xsl:variable name="ags_image_root">../ags/images/summary/</xsl:variable>            <xsl:variable name="jobDefinition" select="false()"/>            <xsl:variable name="spacer">                <img height="10" width="10">                    <xsl:attribute name="src"><xsl:value-of select="$webcontent"/>/images/space.gif</xsl:attribute>                </img>            </xsl:variable>            <!-- declared a variable to determine if a report has been selected, used for validation purposes-->            <!-- determine which dialog to show when the set... options link is clicked-->            <xsl:template match="/">                <xts:sequence>                    <xts:append select="/root/output">                        <xos:part>                            <xos:entityHeader>                                <xos:param name="Content-Type">text/xml; charset=utf-8</xos:param>                            </xos:entityHeader>                            <xos:entityBody>                                <asyncReply>                                    <xts:transform name="XMLEncode">                                        <getParametersResponse>                                            <markup>                                                <xts:transform name="XMLEncode">                                                    <dp:list width="100%">                                                        <dp:section>                                                            <dp:label>                                                                <xts:string id="DIALOG_SQL_STOREDPROC"/>                                                            </dp:label>                                                        </dp:section>                                                        <dp:section>                                                            <xsl:choose>                                                                <xsl:when test="/root/procedureDetails/ResponseRoot/folder//updateSubject">                                                                    <select id="sql_procedure_name" name="sql_procedure_name" style="width:40%" onchange="reload();">                                                                        <xsl:for-each select="/root/procedureDetails/ResponseRoot/folder//updateSubject">                                                                            <option>                                                                                <xsl:attribute name="value"><xsl:value-of select="@_ref"/></xsl:attribute>                                                                                <xsl:if test="string(@_ref) = string(/root/env/param[@name='sql_procedure_name'])">                                                                                    <xsl:attribute name="selected">selected</xsl:attribute>                                                                                </xsl:if>                                                                                <xsl:value-of select="@canonicalName"/>                                                                            </option>                                                                        </xsl:for-each>                                                                    </select>                                                                </xsl:when>                                                                <xsl:when test="/root/soapFault">                                                                    <xsl:text>                                                                        <xts:string id="DIALOG_MESSAGE_NOT_AVAILABLE"/>                                                                    </xsl:text>                                                                </xsl:when>                                                                <xsl:otherwise>                                                                    <xsl:text>                                                                        <xts:string id="DIALOG_MESSAGE_NONE"/>                                                                    </xsl:text>                                                                </xsl:otherwise>                                                            </xsl:choose>                                                        </dp:section>                                                    </dp:list>                                                                                                        <!--as the contents of the sql promptDiv contains two elements, ive separated them with raw html as nested layouts cause                                                     indentation problems and layouts and their sections must be parsed at the same time-->                                                    <table border="0" cellpadding="0" cellspacing="0" width="100%">                                                    <tr>                                                        <td  height="10"  width="100%">                                                            <img height="10" width="1">                                                                <xsl:attribute name="src"><xsl:value-of select="'{$webcontent}'"/>/images/space.gif</xsl:attribute>                                                            </img>                                                        </td>                                                    </tr>                                                </table>			                                                    <xsl:if test="/root/procedureDetails/ResponseRoot/folder//updateSubject">                                                        <dp:section>                                                            <xsl:variable name="storedProc">                                                                <xsl:choose>                                                                    <xsl:when test="/root/env/param[@name='sql_procedure_name'] and /root/env/param[@name='sql_procedure_name']!=''">                                                                        <xsl:value-of select="/root/env/param[@name='sql_procedure_name']"/>                                                                    </xsl:when>                                                                    <xsl:otherwise>                                                                        <xsl:value-of select="/root/*[local-name()='procedureDetails']/*[local-name()='ResponseRoot']/*[local-name()='folder']/descendant::updateSubject[1]/@_ref"/>                                                                    </xsl:otherwise>                                                                </xsl:choose>                                                            </xsl:variable>                                                            <agsarg:arguments>                                                                <displayedPage>sql</displayedPage>                                                            </agsarg:arguments>                                                        </dp:section>												                                                    </xsl:if>                                                </xts:transform>                                            </markup>                                            <!-- take a copy of the parameter display element - which is very nicely formatted -->                                            <xsl:copy-of select="/root/parametersDisplay"/>                                            <sp_name>                                                <xsl:value-of select="/root/env/param[@name='sql_procedure_name']"/>                                            </sp_name>                                        </getParametersResponse>                                    </xts:transform>                                </asyncReply>                            </xos:entityBody>                        </xos:part>                    </xts:append>                </xts:sequence>            </xsl:template>        </xsl:stylesheet>    </xts:block></xts:morphlet>
 |