X-Git-Url: https://git.ladys.computer/Shushe/blobdiff_plain/d71cc3861468e5ce418a3cf3ace5730689e41dce..15648b660cd14e2834629ad52b65ceb313362c9b:/lib/literally.xslt diff --git a/lib/literally.xslt b/lib/literally.xslt index 5dc60c8..d929f2f 100644 --- a/lib/literally.xslt +++ b/lib/literally.xslt @@ -6,7 +6,7 @@ SPDX-License-Identifier: MPL-2.0 <!-- ⁌ ⛩📰 书社 ∷ lib/literally.xslt -© 2024 Lady [@ Lady’s Computer]. +© 2024 Lady [@ Ladys Computer]. This Source Code Form is subject to the terms of the Mozilla Public License, v 2.0. If a copy of the M·P·L was not distributed with this file, You can obtain one at <https://mozilla.org/MPL/2.0/>. @@ -18,8 +18,9 @@ If a copy of the M·P·L was not distributed with this file, You can obtain one version="1.0" > <template match="node()" mode="书社:literally"> + <param name="extension-element-namespaces"/> <choose> - <when test="self::*"> + <when test="self::* and contains(concat(' http://www.w3.org/1999/XSL/Transform ', normalize-space($extension-element-namespaces), ' '), concat(' ', namespace-uri(), ' '))"> <xslt:element name="{name()}" namespace="{namespace-uri()}"> <for-each select="@*"> <xslt:attribute name="{name()}" namespace="{namespace-uri()}"> @@ -31,6 +32,23 @@ If a copy of the M·P·L was not distributed with this file, You can obtain one <apply-templates mode="书社:literally"/> </xslt:element> </when> + <when test="self::*"> + <element name="{name()}" namespace="{namespace-uri()}"> + <for-each select="@*[not(contains(., '{') or contains(., '}'))]"> + <attribute name="{name()}" namespace="{namespace-uri()}"> + <value-of select="."/> + </attribute> + </for-each> + <for-each select="@*[contains(., '{') or contains(., '}')]"> + <xslt:attribute name="{name()}" namespace="{namespace-uri()}"> + <xslt:text> + <value-of select="."/> + </xslt:text> + </xslt:attribute> + </for-each> + <apply-templates mode="书社:literally"/> + </element> + </when> <when test="self::text()"> <xslt:text> <value-of select="."/>