<div style="font-family: Arial, sans-serif; font-size: 14px;">Thanks, that's actually reassuring. This case presents as a warning in Oxygen which I could ignore because the end result is that the node doesn't match and that's the outcome I want. I don't want to ignore it because it's annoying, but I could. I was more concerned that maybe there are other cases where it does the wrong thing and I would have no way of knowing that. Judging from the issue you linked I don't need to worry about that.</div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;">Thanks,</div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;">-- <br></div><div style="font-family: Arial, sans-serif; font-size: 14px;">Danny MacMillan<br></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div>
<div class="protonmail_signature_block" style="font-family: Arial, sans-serif; font-size: 14px;">
<div class="protonmail_signature_block-user protonmail_signature_block-empty">
</div>
<div class="protonmail_signature_block-proton">
Sent with <a target="_blank" href="https://proton.me/" rel="noopener noreferrer">Proton Mail</a> secure email.
</div>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div><div class="protonmail_quote">
------- Original Message -------<br>
On Thursday, May 18th, 2023 at 00:30, Octavian Nadolu <octavian_nadolu@sync.ro> wrote:<br><br>
<blockquote class="protonmail_quote" type="cite">
<div class="moz-cite-prefix">Hello Danny,</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">It seems that this is a known issue in
Saxon. The short explanation is this: "<span style="color: rgb(61,
69, 76); font-family: ProximaNova-Regular, helvetica, arial,
sans-serif; font-size: 14px; font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); text-decoration-thickness: initial; text-decoration-style:
initial; text-decoration-color: initial; display: inline
!important; float: none;">When we find an<span> </span></span><code style="font-family: Hack; font-weight: 400; font-style: normal;
font-size: 11.9px; padding: 0.1em; margin: 0px; background:
rgba(62, 91, 118, 0.08); overflow-wrap: break-word;
border-radius: 0.1em; color: rgb(61, 69, 76);
font-variant-ligatures: normal; font-variant-caps: normal;
letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; white-space: normal;
widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px;
text-decoration-thickness: initial; text-decoration-style:
initial; text-decoration-color: initial;">element</code><span style="color: rgb(61, 69, 76); font-family: ProximaNova-Regular,
helvetica, arial, sans-serif; font-size: 14px; font-style:
normal; font-variant-ligatures: normal; font-variant-caps:
normal; font-weight: 400; letter-spacing: normal; orphans: 2;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); text-decoration-thickness: initial; text-decoration-style:
initial; text-decoration-color: initial; display: inline
!important; float: none;">, then to see if the pattern matches
we have to test (a) that its parent is named<span> </span></span><code style="font-family: Hack; font-weight: 400; font-style: normal;
font-size: 11.9px; padding: 0.1em; margin: 0px; background:
rgba(62, 91, 118, 0.08); overflow-wrap: break-word;
border-radius: 0.1em; color: rgb(61, 69, 76);
font-variant-ligatures: normal; font-variant-caps: normal;
letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; white-space: normal;
widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px;
text-decoration-thickness: initial; text-decoration-style:
initial; text-decoration-color: initial;">relevant</code><span style="color: rgb(61, 69, 76); font-family: ProximaNova-Regular,
helvetica, arial, sans-serif; font-size: 14px; font-style:
normal; font-variant-ligatures: normal; font-variant-caps:
normal; font-weight: 400; letter-spacing: normal; orphans: 2;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); text-decoration-thickness: initial; text-decoration-style:
initial; text-decoration-color: initial; display: inline
!important; float: none;">, and (b) that the predicate matches.
There's nothing in the spec that says which of these tests
should be done first, and we try to make a decision about which
approach is likely to perform better.</span>"</div>
<div class="moz-cite-prefix">For more details you can check the
issue: <a href="https://saxonica.plan.io/issues/6040" class="moz-txt-link-freetext" rel="noreferrer nofollow noopener" target="_blank">https://saxonica.plan.io/issues/6040</a><br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Best Regards,</div>
<div class="moz-cite-prefix">Octavian<br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">On 5/17/2023 3:57 PM, Oxygen XML Editor
Support (Octavian Nadolu) wrote:<br>
</div>
<blockquote type="cite">
<div class="moz-cite-prefix">Hello Danny,</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Thanks again for your feedback.</div>
<span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-97-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-97-0"><span style="box-sizing: border-box;" data-text="true"> It</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-98-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-98-0"><span style="box-sizing: border-box;" data-text="true"> appears</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-99-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-99-0"><span style="box-sizing: border-box;" data-text="true"> that</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-100-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-100-0"><span style="box-sizing: border-box;" data-text="true"> Sax</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-101-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-101-0"><span style="box-sizing: border-box;" data-text="true">on</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-102-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-102-0"><span style="box-sizing: border-box;" data-text="true"> is</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-103-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-103-0"><span style="box-sizing: border-box;" data-text="true"> evaluating</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-104-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-104-0"><span style="box-sizing: border-box;" data-text="true"> the</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-105-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-105-0"><span style="box-sizing: border-box;" data-text="true"> map</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-106-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-106-0"><span style="box-sizing: border-box;" data-text="true">:</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-107-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-107-0"><span style="box-sizing: border-box;" data-text="true">cont</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-108-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-108-0"><span style="box-sizing: border-box;" data-text="true">ains</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-109-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-109-0"><span style="box-sizing: border-box;" data-text="true">()</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-110-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-110-0"><span style="box-sizing: border-box;" data-text="true"> function</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-111-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-111-0"><span style="box-sizing: border-box;" data-text="true"> when</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-112-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-112-0"><span style="box-sizing: border-box;" data-text="true"> it</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-113-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-113-0"><span style="box-sizing: border-box;" data-text="true"> should</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-114-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-114-0"><span style="box-sizing: border-box;" data-text="true"> not</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-115-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-115-0"><span style="box-sizing: border-box;" data-text="true">.</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-116-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-116-0"><span style="box-sizing: border-box;" data-text="true"> We</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-117-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-117-0"><span style="box-sizing: border-box;" data-text="true"> have</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-118-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-118-0"><span style="box-sizing: border-box;" data-text="true"> added</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-119-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-119-0"><span style="box-sizing: border-box;" data-text="true"> an</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-120-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-120-0"><span style="box-sizing: border-box;" data-text="true"> issue</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-121-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-121-0"><span style="box-sizing: border-box;" data-text="true"> to</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-122-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-122-0"><span style="box-sizing: border-box;" data-text="true"> the</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-123-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-123-0"><span style="box-sizing: border-box;" data-text="true"> Sax</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-124-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-124-0"><span style="box-sizing: border-box;" data-text="true">onica</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-125-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-125-0"><span style="box-sizing: border-box;" data-text="true"> issue</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-126-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-126-0"><span style="box-sizing: border-box;" data-text="true"> tracker</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-127-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-127-0"><span style="box-sizing: border-box;" data-text="true"> to</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-128-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-128-0"><span style="box-sizing: border-box;" data-text="true"> verify</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-129-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-129-0"><span style="box-sizing: border-box;" data-text="true"> the</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-130-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-130-0"><span style="box-sizing: border-box;" data-text="true"> situation</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-131-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-131-0"><span style="box-sizing: border-box;" data-text="true"> and</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-132-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-132-0"><span style="box-sizing: border-box;" data-text="true"> will</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-133-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-133-0"><span style="box-sizing: border-box;" data-text="true"> let</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-134-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-134-0"><span style="box-sizing: border-box;" data-text="true"> you</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-135-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-135-0"><span style="box-sizing: border-box;" data-text="true"> know</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-136-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-136-0"><span style="box-sizing: border-box;" data-text="true"> when</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-137-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-137-0"><span style="box-sizing: border-box;" data-text="true"> the</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-138-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-138-0"><span style="box-sizing: border-box;" data-text="true"> fix</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-139-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-139-0"><span style="box-sizing: border-box;" data-text="true"> is</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-140-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-140-0"><span style="box-sizing: border-box;" data-text="true"> integrated</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-141-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-141-0"><span style="box-sizing: border-box;" data-text="true"> in</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-142-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-142-0"><span style="box-sizing: border-box;" data-text="true"> Oxy</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-143-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-143-0"><span style="box-sizing: border-box;" data-text="true">gen</span></span></span><span style="box-sizing: border-box; color: rgb(53, 55, 64); font-family: ColfaxAI, helvetica, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: break-spaces; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: var(--green-100);" data-offset-key="6lgv3-144-0"><span style="box-sizing: border-box;" data-offset-key="6lgv3-144-0"><span style="box-sizing: border-box;" data-text="true">.</span></span></span>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Best Regards,</div>
<div class="moz-cite-prefix">Octavian<br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">On 5/15/2023 8:04 PM, Danny MacMillan
wrote:<br>
</div>
<blockquote type="cite">
<div style="font-family: Arial, sans-serif; font-size: 14px;">I
meant the context attribute of course.</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">I
can also silence the warning by defining a variable holding
the appropriate elements and using the variable in my rules.
This is what I will do in practice. It does look broken to me
though.</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Thanks,</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">--
<br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;">Danny
MacMillan<br>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div style="font-family:
Arial, sans-serif; font-size: 14px;" class="protonmail_signature_block">
<div class="protonmail_signature_block-user
protonmail_signature_block-empty"> </div>
<div class="protonmail_signature_block-proton"> Sent with <a rel="noreferrer nofollow noopener" href="https://proton.me/" target="_blank">Proton Mail</a> secure
email. </div>
</div>
<div style="font-family: Arial, sans-serif; font-size: 14px;"><br>
</div>
<div class="protonmail_quote"> ------- Original Message -------<br>
On Monday, May 15th, 2023 at 10:36, Danny MacMillan <a href="mailto:dm-bulk-oxygenxml@mail-eh.ca" class="moz-txt-link-rfc2396E" rel="noreferrer nofollow noopener" target="_blank"><dm-bulk-oxygenxml@mail-eh.ca></a>
wrote:<br>
<br>
<blockquote type="cite" class="protonmail_quote">
<div style="font-family: Arial, sans-serif; font-size:
14px;">Hello,</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">Consider the following XML:</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><span><?xml version="1.0"?></span>
<div><span><root></span></div>
<div><span> <relevant></span></div>
<div><span> <element relevant-attribute="this
attribute exists only on elements under relevant"/></span></div>
<div><span> </relevant></span></div>
<div><span> <irrelevant></span></div>
<div><span> <element/></span></div>
<div><span> </irrelevant></span></div>
<div><span></root></span></div>
<div><span><br>
</span></div>
<span></span></div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">And the following Schematron:</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><span><?xml version="1.0" encoding="UTF-8"?></span>
<div><span><schema xmlns="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://purl.oclc.org/dsdl/schematron">http://purl.oclc.org/dsdl/schematron</a>"
queryBinding="xslt3" xmlns:xsl="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/1999/XSL/Transform">http://www.w3.org/1999/XSL/Transform</a>"
xmlns:map="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/2005/xpath-functions/map">http://www.w3.org/2005/xpath-functions/map</a>"></span></div>
<div><span> <ns prefix="map" uri="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/2005/xpath-functions/map">http://www.w3.org/2005/xpath-functions/map</a>"/></span></div>
<div><span> <let name="some-map" value="map {}"/></span></div>
<div><span> <pattern></span></div>
<div><span> <rule
context="/*/relevant/element[map:contains($some-map,
@relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> </pattern></span></div>
<div><span></schema></span></div>
<span></span></div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">When I validate the XML with the Schematron, Oxygen
prints a warning that an empty sequence is not allowed as
the second argument to map:contains, which I've determined
is because it is testing the "element" elements under
"irrelevant". I know this because if I add a second such
element, the error prints twice. If I have 9, the error
prints 9 times. But why is it testing that element? I
deliberately used xpath that navigates via the parent
because I want to include only elements under that parent,
but it seems that it's looking at all elements, anywhere
in the document, named 'element'. Is this expected?</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">I can silence the warning if I explicitly check for
the presence of the attribute:</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><span></span></div>
<span><?xml version="1.0" encoding="UTF-8"?></span>
<div><span><schema xmlns="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://purl.oclc.org/dsdl/schematron">http://purl.oclc.org/dsdl/schematron</a>"
queryBinding="xslt3" xmlns:xsl="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/1999/XSL/Transform">http://www.w3.org/1999/XSL/Transform</a>"
xmlns:map="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/2005/xpath-functions/map">http://www.w3.org/2005/xpath-functions/map</a>"></span></div>
<div><span> <ns prefix="map" uri="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/2005/xpath-functions/map">http://www.w3.org/2005/xpath-functions/map</a>"/></span></div>
<div><span> <let name="some-map" value="map {}"/></span></div>
<div><span> <pattern></span></div>
<div><span> <rule
context="/*/relevant/element[@relevant-attribute and
map:contains($some-map, @relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> </pattern></span></div>
<div><span></schema></span></div>
<div><span><br>
</span></div>
<span></span>
<div style="font-family: Arial, sans-serif; font-size:
14px;">But not if I precede the broken rule with a rule
that should equivalently prevent the broken rule from
firing on those elements:</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><span></span><span><?xml version="1.0"
encoding="UTF-8"?></span>
<div><span><schema xmlns="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://purl.oclc.org/dsdl/schematron">http://purl.oclc.org/dsdl/schematron</a>"
queryBinding="xslt3" xmlns:xsl="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/1999/XSL/Transform">http://www.w3.org/1999/XSL/Transform</a>"
xmlns:map="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/2005/xpath-functions/map">http://www.w3.org/2005/xpath-functions/map</a>"></span></div>
<div><span> <ns prefix="map" uri="<a class="moz-txt-link-freetext" target="_blank" rel="noreferrer nofollow noopener" href="http://www.w3.org/2005/xpath-functions/map">http://www.w3.org/2005/xpath-functions/map</a>"/></span></div>
<div><span> <let name="some-map" value="map {}"/></span></div>
<div><span> <pattern></span></div>
<div><span> <rule
context="/*/relevant/element[not(@relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> <rule
context="/*/relevant/element[map:contains($some-map,
@relevant-attribute)]"></span></div>
<div><span> <assert
test="true()">Impossible</assert></span></div>
<div><span> </rule></span></div>
<div><span> </pattern></span></div>
<div><span></schema></span></div>
<span></span><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">Thanks,</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">-- <br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;">Danny MacMillan<br>
</div>
<div style="font-family: Arial, sans-serif; font-size:
14px;"><br>
</div>
<div class="protonmail_signature_block" style="font-family: Arial, sans-serif; font-size:
14px;">
<div class="protonmail_signature_block-proton"> Sent with
<a target="_blank" href="https://proton.me/" rel="noreferrer nofollow noopener">Proton Mail</a> secure email. </div>
</div>
</blockquote>
<br>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre">_______________________________________________
oXygen-user mailing list
<a href="mailto:oXygen-user@oxygenxml.com" class="moz-txt-link-abbreviated moz-txt-link-freetext" rel="noreferrer nofollow noopener" target="_blank">oXygen-user@oxygenxml.com</a>
<a href="https://www.oxygenxml.com/mailman/listinfo/oxygen-user" class="moz-txt-link-freetext" rel="noreferrer nofollow noopener" target="_blank">https://www.oxygenxml.com/mailman/listinfo/oxygen-user</a>
</pre>
</blockquote>
<p><br>
</p>
<pre cols="72" class="moz-signature">--
Octavian Nadolu
<oXygen/> XML Editor
<a href="http://www.oxygenxml.com" class="moz-txt-link-freetext" rel="noreferrer nofollow noopener" target="_blank">http://www.oxygenxml.com</a></pre>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre">_______________________________________________
oXygen-user mailing list
<a href="mailto:oXygen-user@oxygenxml.com" class="moz-txt-link-abbreviated" rel="noreferrer nofollow noopener" target="_blank">oXygen-user@oxygenxml.com</a>
<a href="https://www.oxygenxml.com/mailman/listinfo/oxygen-user" class="moz-txt-link-freetext" rel="noreferrer nofollow noopener" target="_blank">https://www.oxygenxml.com/mailman/listinfo/oxygen-user</a>
</pre>
</blockquote>
<p><br>
</p>
<pre cols="72" class="moz-signature">--
Octavian Nadolu
<oXygen/> XML Editor
<a href="http://www.oxygenxml.com" class="moz-txt-link-freetext" rel="noreferrer nofollow noopener" target="_blank">http://www.oxygenxml.com</a></pre>
</blockquote><br>
</div>