+# This function does the following :—
+#
+# • `$(YIELD)`s `$(1)`.
+#
+# • Calls `$(XSLT)` using `$(TRANSFORM)` with the result, providing `$(BASEIRI)` and `$(DATETIME) as params and providing `$(2)` (minus the initial `$(OUTPUT_DIR)/`) as the param `OUTPUTPATH`.
+#
+# • Removes any `xmlns` prefix declarations from output to `.html` files (with `sed`).
+#
+# • Removes any doctype for root elements other than `html` (with `grep -v`).
+#
+# • Saves the output to `$(2)`.
+override makexslt = $(YIELD) $(1)\
+ | $(XSLT) --nonet --novalid $(XSLTOPTS) --stringparam BASEIRI "$(BASEIRI)" --stringparam DATETIME "$(DATETIME)" --stringparam OUTPUTPATH "$(patsubst $(OUTPUT_DIR)/%,/%,$(2))" $(TRANSFORM) -\
+ $(if $(filter %.html,$(2)),| sed 's/ xmlns:[0-9A-Za-z_-]*="[^"]*"//g',)\
+ | grep -v '^<!DOCTYPE \([^h]\|.[^t]\|..[^m]\|...[^l]\|....[^ >]\)'\
+ > $(2)
+
+all: $(content) $(resources) $(feeds);