Skip to content

Commit 5c4e557

Browse files
committed
Filter copies of base domain extension patterns when filtering domain constraint modules.
Refined debug messages
1 parent 60ded1e commit 5c4e557

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

xsl/rng2ditadtd/mode-filter-not-allowed-patterns.xsl

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545

4646
<xsl:template mode="filter-notallowed-patterns" match="rng:grammar[rngfunc:isDomainConstraintModule(root(.))]//rng:include">
4747
<xsl:param name="doDebug" as="xs:boolean" tunnel="yes" select="false()"/>
48-
48+
4949
<xsl:copy>
5050
<xsl:apply-templates select="@*" mode="#current">
5151
<xsl:with-param name="doDebug" as="xs:boolean" tunnel="yes" select="$doDebug"/>
@@ -64,16 +64,25 @@
6464
/>
6565

6666
<xsl:for-each select="$base-domain-extension-patterns">
67-
<xsl:variable name="doDebug" as="xs:boolean" select="$moduleShortName = ('par_softwareDomain-c')"/>
6867
<xsl:variable name="define-name" as="xs:string" select="@name"/>
6968
<xsl:variable name="local-define" as="element(rng:define)?" select=".//rng:define[@name = $define-name]"/>
7069
<xsl:variable name="effective-define" as="element(rng:define)">
7170
<xsl:choose>
7271
<xsl:when test="empty($local-define)">
7372
<xsl:if test="$doDebug">
74-
<xsl:message>+ [DEBUG] filter-notallowed-patterns: Domain constraint module "{$moduleShortName}": No local pattern for domain extension pattern "{$define-name}"</xsl:message>
73+
<xsl:message>+ [DEBUG] filter-notallowed-patterns: Domain constraint module "{$moduleShortName}": No local pattern for domain extension pattern "{$define-name}", filtering base definition...</xsl:message>
74+
</xsl:if>
75+
<xsl:variable name="filtered-define" as="element(rng:define)">
76+
<xsl:apply-templates select="." mode="filter-notallowed-patterns">
77+
<xsl:with-param name="doDebug" as="xs:boolean" tunnel="yes" select="$doDebug"/>
78+
</xsl:apply-templates>
79+
</xsl:variable>
80+
<xsl:if test="$doDebug">
81+
<xsl:message>+ [DEBUG] filter-notallowed-patterns: Domain constraint module "{$moduleShortName}": Filtered base define is:
82+
<xsl:sequence select="rngfunc:report-element($filtered-define)"/>
83+
</xsl:message>
7584
</xsl:if>
76-
<xsl:sequence select="."/>
85+
<xsl:sequence select="$filtered-define"/>
7786
</xsl:when>
7887
<xsl:otherwise>
7988
<xsl:if test="$doDebug">
@@ -184,7 +193,9 @@
184193
</xsl:copy>
185194
</xsl:when>
186195
<xsl:otherwise>
187-
<xsl:message>+ [DEBUG] filter-notallowed-patterns: Grouping element {name(..)}/{name(.)} in pattern "{ancestor::rng:define[1]/@name}" has empty children after filtering.</xsl:message>
196+
<xsl:if test="$doDebug">
197+
<xsl:message>+ [DEBUG] filter-notallowed-patterns: Grouping element {name(..)}/{name(.)} in pattern "{ancestor::rng:define[1]/@name}" has empty children after filtering.</xsl:message>
198+
</xsl:if>
188199
</xsl:otherwise>
189200
</xsl:choose>
190201

0 commit comments

Comments
 (0)