
Maybe we could just simplify that stuff into conventional rules without params temporarily, for the sake of stabilizing this release, then work on it later? I must admit I have never used params in this way, and I had to go away and read the spec to understand what was happening. But having done that, I agree with you that it's right, assuming that what a parameter which has multiple is-a atts pointing at it is constructed in the form of a sequence of the elements found -- is this: $gse[tei:gloss] definitely right? Cheers, Martin On 2021-02-04 11:21 a.m., Bauman, Syd wrote:
Well, then. *That’s* clearly problematic. (And why is it trying to validate against last successful instead of local? Not that it matters for this purpose.)
So it looks like NVDL is validating the ISO Schematron schema before it tries to use it, and (incorrectly) finding it invalid, rejects it. I say “incorrectly” because the schema file being used[1] is valid with respect to $gse:
* according to oXygen (v. 23.0) * against P5/iso-schematron.rnc[2] * against the 2015 ISO Schematron RELAX NG schema[3]
Can we tell what schema oNVDL is using to validate p5odds.isosch?
The parameter “gse” is set in 6 places (lines 318, 322, 326, 330, 404, & 467 in the current version), and referred to only once (line 506), so that must be where the error is being flagged. But (I think) this is /exactly/ the kind of use that is intended. (As evidence, here are excerpts copied from the spec itself:
<sch:pattern abstract="true" id="table"> <sch:rule context="$table"> <sch:assert test="$row"> The element <name/> is a table. Tables contain rows. </sch:assert> </sch:rule> <sch:rule context="$row"> <sch:assert test="$entry"> The element <name/> is a table row. Rows contain entries. </sch:assert> </sch:rule> </sch:pattern>
And
<sch:pattern is-a="table" id="HTML_Table"> <sch:param name="table" value="table"/> <sch:param name="row" value="tr"/> <sch:param name="entry" value="td|th"/> </sch:pattern> <sch:pattern is-a="table" id="CALS_Table"> <sch:param name="table" value="table"/> <sch:param name="row" value=".//row"/> <sch:param name="entry" value="cell"/> </sch:pattern> <sch:pattern is-a="table" id="calendar"> <sch:param name="table" value="calendar/year"/> <sch:param name="row" value="week"/> <sch:param name="entry" value="day"/> </sch:pattern>
) So I am reasonably confident the reference to the $gse parameter in the value of @context is legal.
_Notes_ [1] https://jenkins.tei-c.org/job/TEIP5-dev/lastSuccessfulBuild/artifact/P5/rele... [2] Although for reasons I do not understand, I have to provide the |-i| switch on the commandline, otherwise it bombs with a java trace. [3] I do not know from where I got this schema. It is in my |ISO 19757|/ directory.
------------------------------------------------------------------------
Open a Spec file in Oxygen and validate it. :-)
_______________________________________________ Tei-council mailing list Tei-council@lists.tei-c.org http://lists.lists.tei-c.org/mailman/listinfo/tei-council
-- ------------------------------------- Humanities Computing and Media Centre University of Victoria mholmes@uvic.ca