From 940b4d1848e8c70ab7642901a68594e8016caffc Mon Sep 17 00:00:00 2001
From: Daniel Baumann <daniel.baumann@progress-linux.org>
Date: Sat, 27 Apr 2024 18:51:28 +0200
Subject: Adding upstream version 1:7.0.4.

Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
---
 officecfg/util/sanity.xsl | 77 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)
 create mode 100644 officecfg/util/sanity.xsl

(limited to 'officecfg/util/sanity.xsl')

diff --git a/officecfg/util/sanity.xsl b/officecfg/util/sanity.xsl
new file mode 100644
index 000000000..a02ba25c2
--- /dev/null
+++ b/officecfg/util/sanity.xsl
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ *   Licensed to the Apache Software Foundation (ASF) under one or more
+ *   contributor license agreements. See the NOTICE file distributed
+ *   with this work for additional information regarding copyright
+ *   ownership. The ASF licenses this file to you under the Apache
+ *   License, Version 2.0 (the "License"); you may not use this file
+ *   except in compliance with the License. You may obtain a copy of
+ *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
+<xsl:transform  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        xmlns:oor="http://openoffice.org/2001/registry"
+        version="1.0">
+
+<xsl:output method="text" indent="no" encoding="ISO-8859-1"/>
+
+<xsl:namespace-alias stylesheet-prefix="xs" result-prefix="xs"></xsl:namespace-alias>
+
+    <!-- match root -->
+    <xsl:template match="/">
+        <xsl:apply-templates/>
+    </xsl:template>
+
+    <!-- match all elements that could possibly contain info/desc elements -->
+    <xsl:template match="group|set|node-ref|prop|enumeration|length|minLength|maxLength|minInclusive|maxInclusive|minExclusive|maxExclusive|whiteSpace">
+
+        <xsl:if test="1>string-length(info/desc)">
+            <!-- print TPF's path to current node -->
+            <xsl:message terminate="yes">
+
+                <!-- print linefeed -->
+                <xsl:text>&#10;</xsl:text>
+                <xsl:text>ERROR: No info/desc element specified or string length of info/desc element is 0.</xsl:text>
+                <xsl:text>&#10;</xsl:text>
+                <xsl:text>       There has to be a reasonable description to be specified for any item.</xsl:text>
+                <xsl:text>&#10;</xsl:text>
+
+                <xsl:text>       - path: </xsl:text>
+                <xsl:for-each select="ancestor-or-self::*"><xsl:text>/</xsl:text>
+                    <xsl:value-of select="local-name(.)"/>
+                    <xsl:choose>
+                        <xsl:when test="@oor:name">[<xsl:value-of select="@oor:name"/>]</xsl:when>
+                        <xsl:when test="@oor:value">[<xsl:value-of select="@oor:value"/>]</xsl:when>
+                    </xsl:choose>
+                </xsl:for-each>
+
+                <xsl:text>&#10;</xsl:text>
+                <xsl:text>       - author: </xsl:text>
+
+                <xsl:for-each select="ancestor-or-self::*">
+                    <!-- print element name -->
+                    <xsl:if test="info/author">
+                        <!-- print arrow -->
+                        <xsl:text>-></xsl:text>
+                        <xsl:value-of select="info/author"/>
+                    </xsl:if>
+                </xsl:for-each>
+
+            </xsl:message>
+
+        </xsl:if>
+
+        <xsl:apply-templates/>
+
+    </xsl:template>
+
+</xsl:transform>
-- 
cgit v1.2.3