xsl-list
[Top] [All Lists]

[xsl] XSLT3 deep-equal() question

2020-03-27 11:43:18
Hello XSLT Community,

I'm Using XSLT3 (Saxon 9.9 HE).

I'm wondering if it's reasonable to expect deep-equal() to always return
true in the following scenario.  I suspect "yes" but wondering what corner
cases that I might encounter.

We'll be pushing some data-oriented source documents, with no external
entities, through templates which are all in a mode defined from
"shallow-copy" similar to the below.

What I'm wondering under what conditions of source documents that the
following stylesheet would return "false" rather than "true".  (Again,
excluding external entities.) I'm hoping that the list of conditions is nil
or very small.

Thanks for any help.

<xsl:stylesheet
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
    xmlns:xs="http://www.w3.org/2001/XMLSchema";
    version="3.0">

  <xsl:mode name="a" on-no-match="shallow-copy"/>

  <xsl:output method="text" />

  <xsl:template match="/" >
      <xsl:variable name="afterApply">
          <xsl:apply-templates select="/" mode="a"/>
      </xsl:variable>
      <xsl:sequence select="deep-equal(/, $afterApply) => string()" />
  </xsl:template>

</xsl:stylesheet>

Alan Painter
Confined in France
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--
<Prev in Thread] Current Thread [Next in Thread>