I feel like there are some silent premises in your e-mail that make it
difficult for me to understand what you mean when you say that something
works, and something else fails.
It might help in the process of finding some solutions if you could
answer the following:
* when you say that "string-range(#abc,0,4)" is effectively OK, what do
you mean by that? Do you actually resolve the string-range() by means of
some tool or do you use it as notation alone?
* what tool do you use to resolve the "wd" (or "wd:"?) prefix into
"../folder/text.xml#" -- or is that just shorthand notation? Where do
you define that prefix?
* more importantly, how do you know that string-range(wd:abc,0,4) is not
OK? If it's oXygen, does it say anything (for example something about
':' not being permitted in anyURI) ?
Finally, @corresp takes a data-pointer value, which is anyURI --
you have to be sure that your @corresp attributes are URIs. The TEI
scheme string-range() does not appear to return URI values (it's
defined to return sequences of characters, I believe), so you need to
perform something to make it so. A minimal operation would seem to
consist in prefixing it with '#' to turn it into a fragment identifier
(for the sake of the declaration of @corresp). But if you do that then
you can't, as Syd points out, reach out to another document.
And at this point, the only hope is that string-range() with an URI used
as the first argument, will return an URI (maybe a sequence of URIs).
But unless I'm completely outdated on that fragment on the Guidelines,
getting string-range() to return anything is not even lottery, I'm
afraid (as Martin points out at the end of his message).
Let me stress that the above is offered while I'm still not clear on the
premises of your initial message. For one thing, my guess is as above,
that your validator/parser complains about the ':' in @corresp -- but
solving that need not help your overall task.
On 23/02/15 22:33, Hayim Lapin wrote:
> Dear TEI-ers,
> I recently encountered a problem and I don't know if it is an encoding
> error on my part or a validation problem under TEI-all.
> I am developing markup of morphological segments from a classical Hebrew
> text. Since the markup stands off from the source text, I want to use
> string-range on the element m to designate the segment, thus:
> <w xml:id="abc">postprandial</w>
> and then, elsewhere,
> <m type="prefix" corresp="string-range(#abc,0,4)" ana="...">post</m>
> So far so good.
> The problem arises because the particular <w> is in another file, and I
> want to use a prefix definition to abbreviate the path to the file. So,
> if the path to the file is "../folder/text.xml", and the prefix is "wd",
> the following is valid,
> <m type="prefix" corresp="string-range( ../folder/text.xml#abc,0,4)"
> but the following, using the prefix, is not
> <m type="prefix" corresp="string-range(wd:abc,0,4)" ana="...">post</m>
> Am I doing something wrong?
> Please advise!
> Hayim Lapin
> Robert H. Smith Professor of Jewish Studies
> Professor of History
> University of Maryland
> College Park, MD 20742
> 301 405 4296
> www.digitalmishnah.org | dev.digitalmishnah.org