after all necessary parsing and embedding has taken place.
⛩️📰 书社 comes with some transforms; namely :—
+- **`transforms/attributes.xslt`:**
+ Applies transforms to the children of any `<书社:apply-attributes>`
+ elements, and then applies the attributes of the
+ `<书社:apply-attributes>` to each result child, replacing the
+ element with the result.
+ This is useful in combination with image embeds to apply alt‐text to
+ the resulting `<html:img>`.
+
- **`transforms/asset.xslt`:**
Converts `<html:object>` elements which correspond to recognized
media types into the appropriate H·T·M·L elements, and deletes
--- /dev/null
+<?xml version="1.0"?>
+<!--
+⁌ ⛩️📰 书社 ∷ transforms/attributes.xslt
+
+© 2024 Lady [@ Lady’s 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/>.
+-->
+<transform
+ xmlns="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ xmlns:书社="urn:fdc:ladys.computer:20231231:Shu1She4"
+ exclude-result-prefixes="exsl"
+ version="1.0"
+>
+ <书社:id>urn:fdc:ladys.computer:20231231:Shu1She4:attributes.xslt</书社:id>
+ <template match="书社:apply-attributes">
+ <for-each select="node()">
+ <choose>
+ <when test="self::*">
+ <variable name="original" select="."/>
+ <variable name="result">
+ <apply-templates select="."/>
+ </variable>
+ <for-each select="exsl:node-set($result)/*">
+ <copy>
+ <for-each select="@*|$original/../@*">
+ <copy/>
+ </for-each>
+ <apply-templates/>
+ </copy>
+ </for-each>
+ </when>
+ <otherwise>
+ <apply-templates select="."/>
+ </otherwise>
+ </choose>
+ </for-each>
+ </template>
+</transform>