I encountered a strange behavior, at least from my point of view, when generating a RelaxNG schema from an ODD file. We added a datatype for degrees in our definition of MEI and would like to limit its values from -360 to 360. The definition we are using looks like this:
<macroSpec ident="data.DEGREES" module="MEI" type="dt">
<desc>360th-unit measure of a circle's circumference; optionally signed decimal number between -360 and 360.</desc>
While generating the schema (I used odds2/odd2relax.xsl directly after generating a compiled ODD) this datatype is dropped, because of a test in odds2/teiodds.xsl in line 1142 (rev. 10595) which prohibits values in macroSpec/content//* starting with a "-" (here "-360.0"). It is easy to solve by changing the order of the rng:param elements, then the positive one is first and things work as expected. But this is a kind of a workaround, I would like to omit.
So, what is the meaning of this test and is it possible to rewrite the test so it won't drop our datatype definition?
Thanks in advance,
Dipl. Wirt. Inf. Daniel R÷wenstrunk
Projektleiter / Wiss. Mitarbeiter
Musikwiss. Seminar Detmold/Paderborn
Tel.: +49 5231 975665
Mail: [log in to unmask]