Subject: [bug#72060] [PATCH] gnu: Add xml-namespace-xsd.

From: gemmaro <[email-masked]>
Date: Thu, 11 Jul 2024 22:13:17 +0900

* gnu/packages/xml.scm (xml-namespace-xsd): New variable.

Change-Id: Iec2d68f1d9190ba9e1723ca10adf1de0dfd2d722
---
 gnu/packages/xml.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index c6ddae50ae..dee2b3287b 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -1953,3 +1953,40 @@ (define-public python-xmltodict
     (description "This package provides a Python library to convert XML to
 @code{OrderedDict}.")
     (license license:expat)))
+
+(define-public xml-namespace-xsd
+  (package
+    (name "xml-namespace-xsd")
+    (version "2009-01")
+    (source
+     (origin
+       (method url-fetch)
+       (uri "https://www.w3.org/2009/01/xml.xsd")
+       (sha256
+        (base32 "0agqmxbhk2q9xa38m02z7ggbb124z6avnqyhz8k43iicqhv1fw6c"))))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:install-plan #~'(("xml.xsd" "/xml/dtd/namespace/xml.xsd"))
+      #:phases #~(modify-phases %standard-phases
+                   (add-before 'install 'create-catalog
+                     (lambda* (#:key inputs #:allow-other-keys)
+                       (let ((out (string-append #$output "/xml/dtd/namespace")))
+                         (mkdir-p out)
+                         (invoke (search-input-file inputs "/bin/xmlcatalog")
+                                 "--noout"
+                                 "--create"
+                                 "--add"
+                                 "uri"
+                                 "http://www.w3.org/2001/xml.xsd"
+                                 (string-append out "/xml.xsd")
+                                 (string-append out "/catalog.xml"))))))))
+    (native-inputs (list libxml2))
+    (home-page "https://www.w3.org/XML/1998/namespace")
+    (synopsis "XML Schema for XML namespace")
+    (description
+     "This package provides an XML Schema fragment and its catalog.  The schema
+constrains the syntax of @code{xml:lang}, @code{xml:spec}, @code{xml:base}, and
+@code{xml:id} in the schema language defined by the XML Schema Recommendation Second
+Edition of 28 October 2004.")
+    (license license:w3c)))

base-commit: af4c90dc736295b19fda88cd8652f67f138409a1
prerequisite-patch-id: 89c3b2360d6de55e0ffcf0e9fd2bd04c0674be62
prerequisite-patch-id: 62fc54ed554df985530503c8e8c5b718c16b709b
prerequisite-patch-id: c22785847e70bf2f4c94547dd7851ad7de06b92a
-- 
2.45.2