Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

@context should be required for Schematron rules in ODD #2510

Open
martindholmes opened this issue Nov 29, 2023 · 1 comment
Open

@context should be required for Schematron rules in ODD #2510

martindholmes opened this issue Nov 29, 2023 · 1 comment

Comments

@martindholmes
Copy link
Contributor

martindholmes commented Nov 29, 2023

Following discussion by the ATOP group and by a larger group of attendees at the TEI Members Meeting in 2023, there is a general consensus that the current practice of allowing Schematron rules to be written without an explicit @context and then having an ODD processor attempt to infer a suitable context for the rule is unworkable. Therefore <sch:rule> should be required when there is <sch:assert> or <sch:report>, and @context should be required on it (as it is by the Schematron schema itself).

@sydb
Copy link
Member

sydb commented Nov 29, 2023

@martindholmes and I discussed the caveat that only <constraintSpec scheme="schematron">s that contain an assertion (via either <sch:assert> or <sch:report>) are required to have an explicit context (via <sch:rule> with @context). At first blush, it might seem unnecessary. When would there be a <constraintSpec> that does not contain an assertion, other than one that contains only namespace declarations (which soon enough will be in a separate element altogether — see #2330)? Turns out there are at least two answers to that question:

  • Abstract patterns do not have assertions in them. (And soon the TEI Guidelines themselves will be using abstract patterns.)
  • On occasion folks use <constraintSpec> to contain only some combination of <sch:let> and <sqf:fix> (which itself contains XSLT). There are 2 cases in the set of ODDs people contributed to ATOP for testing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants