Schematron:issue with @subject

This should cover W3C XML Schema, Relax NG and DTD related problems.
Patrik
Posts: 231
Joined: Thu Nov 28, 2013 9:32 am
Location: Hamburg/Germany
Contact:

Schematron:issue with @subject

Post by Patrik » Wed Jun 20, 2018 12:45 pm

Hi,

I have created the following simplified test case:

Code: Select all

<root>
<element1>
<child/>
</element1>
<element2/>
</root>

Code: Select all

<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
<sch:pattern>
<sch:rule context="root">
<sch:assert test="false()" subject="element2">Test1</sch:assert>
<sch:assert test="false()" subject="element1[1]/childxxx">Test2</sch:assert>
</sch:rule>
</sch:pattern>
</sch:schema>
When there exists only the second schematron check the error mesage will link with the context element "root" since the xpath within subject won't find anything - which is what I'd expect.
But when using the 1st assert as well the second error mesage will link to element2 (the subject from the previous rule) which seems to be a bug to me.

I noticed this behavior with oXygen 18.1.

Thanks and regards,
Patrik

tavy
Posts: 182
Joined: Thu Jul 01, 2004 12:29 pm

Re: Schematron:issue with @subject

Post by tavy » Wed Jun 20, 2018 2:46 pm

Hi Patrik,

Yes, this seems to be a problem. The location of the context item should be used if the xpath value from the subject attribute won't find anything. I added an issue on out issue tracker for this.
Thanks for your feedback.

Best Regards,
Octavian
Octavian Nadolu
<oXygen/> XML Editor
http://www.oxygenxml.com

sorin_carbunaru
Site Admin
Posts: 240
Joined: Mon May 09, 2016 9:37 am

Re: Schematron:issue with @subject

Post by sorin_carbunaru » Mon Feb 25, 2019 4:39 pm

Hello Patrik,

Just wanted to let you know that this issue has been fixed in oXygen 21, which was released on Friday.

All the best wishes,
Sorin Carbunaru
oXygen XML

Post Reply