aboutsummaryrefslogtreecommitdiff
path: root/spss.slinterface/res/resources/stylesheets/sl2moa.xsl
diff options
context:
space:
mode:
Diffstat (limited to 'spss.slinterface/res/resources/stylesheets/sl2moa.xsl')
-rw-r--r--spss.slinterface/res/resources/stylesheets/sl2moa.xsl218
1 files changed, 218 insertions, 0 deletions
diff --git a/spss.slinterface/res/resources/stylesheets/sl2moa.xsl b/spss.slinterface/res/resources/stylesheets/sl2moa.xsl
new file mode 100644
index 000000000..a2c43527f
--- /dev/null
+++ b/spss.slinterface/res/resources/stylesheets/sl2moa.xsl
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xmlspysamplexml E:\cio\projekte\basismodule\slinterface\res\resources\stylesheets\simpleVerReq.sl12.locref.xml?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sl12="http://www.buergerkarte.at/namespaces/securitylayer/20031231#" xmlns:sl11="http://www.buergerkarte.at/namespaces/securitylayer/20020831#" xmlns:sl10="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" xmlns:moa="http://reference.e-government.gv.at/namespace/moa/20020822#">
+ <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
+ <xsl:variable name="trustProfileId">TrustProfile1</xsl:variable>
+ <!-- ################################################################################################# -->
+ <!-- # Templates -->
+ <!-- ################################################################################################# -->
+ <!-- =================================================================================================== -->
+ <!-- Template für / -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="/">
+ <xsl:apply-templates select="*"/>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template für sl11:VerifyXMLSignatureRequest -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl11:VerifyXMLSignatureRequest">
+ <moa:VerifyXMLSignatureRequest>
+ <xsl:call-template name="copyNSDeclarations">
+ <xsl:with-param name="sourceElem" select="sl11:VerifyXMLSignatureRequest"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="sl11:DateTime"/>
+ <xsl:apply-templates select="sl11:SignatureInfo"/>
+ <xsl:apply-templates select="sl11:Supplement"/>
+ <moa:ReturnHashInputData/>
+ <moa:TrustProfileID>
+ <xsl:copy-of select="$trustProfileId"/>
+ </moa:TrustProfileID>
+ </moa:VerifyXMLSignatureRequest>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template für sl12:VerifyXMLSignatureRequest -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl12:VerifyXMLSignatureRequest">
+ <moa:VerifyXMLSignatureRequest>
+ <xsl:call-template name="copyNSDeclarations">
+ <xsl:with-param name="sourceElem" select="sl12:VerifyXMLSignatureRequest"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="sl12:DateTime"/>
+ <xsl:apply-templates select="sl12:SignatureInfo"/>
+ <xsl:apply-templates select="sl12:Supplement"/>
+ <moa:ReturnHashInputData/>
+ <moa:Trustprofile>
+ <xsl:copy-of select="$trustProfileId"/>
+ </moa:Trustprofile>
+ </moa:VerifyXMLSignatureRequest>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template für sl11:DateTime -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl11:DateTime">
+ <moa:DateTime>
+ <xsl:value-of select="."/>
+ </moa:DateTime>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template für sl12:DateTime -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl12:DateTime">
+ <moa:DateTime>
+ <xsl:value-of select="."/>
+ </moa:DateTime>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl11:SignatureInfo -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl11:SignatureInfo">
+ <moa:VerifySignatureInfo>
+ <moa:VerifySignatureEnvironment>
+ <xsl:call-template name="content10">
+ <xsl:with-param name="contentElem" select="sl11:SignatureEnvironment"/>
+ </xsl:call-template>
+ </moa:VerifySignatureEnvironment>
+ <moa:VerifySignatureLocation xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
+ <!-- Explicit namespace decl xmlns:dsig above is a workaround since damn Xalan does not correctly copy the namespace declarations -->
+ <xsl:call-template name="copyNSDeclarations">
+ <xsl:with-param name="sourceElem" select="./sl11:SignatureLocation"/>
+ </xsl:call-template>
+ <xsl:value-of select="sl11:SignatureLocation/node()"/>
+ </moa:VerifySignatureLocation>
+ </moa:VerifySignatureInfo>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl12:SignatureInfo -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl12:SignatureInfo">
+ <moa:VerifySignatureInfo>
+ <moa:VerifySignatureEnvironment>
+ <xsl:call-template name="content12">
+ <xsl:with-param name="contentElem" select="sl12:SignatureEnvironment"/>
+ </xsl:call-template>
+ </moa:VerifySignatureEnvironment>
+ <moa:VerifySignatureLocation xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
+ <!-- Explicit namespace decl xmlns:dsig above is a workaround since damn Xalan does not correctly copy the namespace declarations -->
+ <xsl:call-template name="copyNSDeclarations">
+ <xsl:with-param name="sourceElem" select="./sl12:SignatureLocation"/>
+ </xsl:call-template>
+ <xsl:value-of select="sl12:SignatureLocation/node()"/>
+ </moa:VerifySignatureLocation>
+ </moa:VerifySignatureInfo>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl11:Supplement -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl11:Supplement">
+ <xsl:if test="sl10:MetaInfo">
+ <moa:MetaInfo>
+ <xsl:call-template name="metaInfo">
+ <xsl:with-param name="metaInfoElem" select="sl10:MetaInfo"/>
+ </xsl:call-template>
+ </moa:MetaInfo>
+ </xsl:if>
+ <moa:Content>
+ <xsl:call-template name="content10">
+ <xsl:with-param name="contentElem" select="sl10:Content"/>
+ </xsl:call-template>
+ </moa:Content>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl12:Supplement -->
+ <!-- =================================================================================================== -->
+ <xsl:template match="sl12:Supplement">
+ <xsl:if test="sl12:MetaInfo">
+ <moa:MetaInfo>
+ <xsl:call-template name="metaInfo">
+ <xsl:with-param name="metaInfoElem" select="sl12:MetaInfo"/>
+ </xsl:call-template>
+ </moa:MetaInfo>
+ </xsl:if>
+ <moa:Content>
+ <xsl:call-template name="content12">
+ <xsl:with-param name="contentElem" select="sl12:Content"/>
+ </xsl:call-template>
+ </moa:Content>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl10:ContentOptionalRefType and sl10:ContentRequiredRefType -->
+ <!-- =================================================================================================== -->
+ <xsl:template name="content10">
+ <xsl:param name="contentElem">default</xsl:param>
+ <xsl:if test="$contentElem/@Reference">
+ <xsl:attribute name="Reference"><xsl:value-of select="$contentElem/@Reference"/></xsl:attribute>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="$contentElem/sl10:Base64Content">
+ <moa:Base64Content>
+ <xsl:value-of select="$contentElem/sl10:Base64Content/node()"/>
+ </moa:Base64Content>
+ </xsl:when>
+ <xsl:otherwise>
+ <moa:XMLContent>
+ <xsl:if test="$contentElem/sl10:XMLContent/@xml:space">
+ <xsl:attribute name="xml:space"><xsl:value-of select="$contentElem/sl10:XMLContent/@xml:space"/></xsl:attribute>
+ </xsl:if>
+ <xsl:copy-of select="$contentElem/sl10:XMLContent/node()"/>
+ </moa:XMLContent>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl12:ContentOptionalRefType and sl12:ContentRequiredRefType -->
+ <!-- =================================================================================================== -->
+ <xsl:template name="content12">
+ <xsl:param name="contentElem">default</xsl:param>
+ <xsl:if test="$contentElem/@Reference">
+ <xsl:attribute name="Reference"><xsl:value-of select="$contentElem/@Reference"/></xsl:attribute>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="$contentElem/sl12:Base64Content">
+ <moa:Base64Content>
+ <xsl:value-of select="$contentElem/sl12:Base64Content/node()"/>
+ </moa:Base64Content>
+ </xsl:when>
+ <xsl:when test="$contentElem/sl12:LocRefContent">
+ <moa:LocRefContent>
+ <xsl:value-of select="$contentElem/sl12:LocRefContent/node()"/>
+ </moa:LocRefContent>
+ </xsl:when>
+ <xsl:otherwise>
+ <moa:XMLContent>
+ <xsl:if test="$contentElem/sl12:XMLContent/@xml:space">
+ <xsl:attribute name="xml:space"><xsl:value-of select="$contentElem/sl12:XMLContent/@xml:space"/></xsl:attribute>
+ </xsl:if>
+ <xsl:copy-of select="$contentElem/sl12:XMLContent/node()"/>
+ </moa:XMLContent>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for sl10:MetaInfoType -->
+ <!-- =================================================================================================== -->
+ <xsl:template name="metaInfo">
+ <xsl:param name="metaInfoElem">default</xsl:param>
+ <moa:MimeType>
+ <xsl:value-of select="$metaInfoElem/sl10:MimeType/node()"/>
+ </moa:MimeType>
+ <xsl:if test="$metaInfoElem/sl10:Description">
+ <moa:Description>
+ <xsl:value-of select="$metaInfoElem/sl10:Description/node()"/>
+ </moa:Description>
+ </xsl:if>
+ <xsl:if test="$metaInfoElem/*[not(self::sl10:MimeType or self::sl10:Description)]">
+ <xsl:copy-of select="$metaInfoElem/*[not(self::sl10:MimeType or self::sl10:Description)]"/>
+ </xsl:if>
+ </xsl:template>
+ <!-- =================================================================================================== -->
+ <!-- Template for copying all namespace declarations of an element -->
+ <!-- =================================================================================================== -->
+ <xsl:template name="copyNSDeclarations">
+ <xsl:param name="sourceElem">default</xsl:param>
+ <xsl:for-each select="$sourceElem/namespace::*">
+ <xsl:variable name="currentNodeName" select="name(.)"/>
+ <xsl:variable name="currentNodeValue" select="string(.)"/>
+ <xsl:attribute name="xmlns:{$currentNodeName}"><xsl:copy-of select="$currentNodeValue"></xsl:copy-of></xsl:attribute>
+ </xsl:for-each>
+ </xsl:template>
+</xsl:stylesheet>