Re: @xml:base with @rendition (and maybe other pointers)

Martin Holmes <[email protected]> Tue, 2 May 2017 08:19:47 -0700
Newsgroups gmane.text.tei.general
Message-ID <[email protected]>
I think the same rules should apply to all pointer types. John is right 
to remind us of something I've been guilty of many times over: writing 
pointer-handling code that doesn't think to look at @xml:base. But 
that's my fault, not the fault of XML or TEI. I think the semantics of 
@xml:base and the semantics of pointers are clear and should be 
consistently implemented for all attributes and ids. If there's an 
@xml:base, all pointers in the document should be resolved based on it.

Cheers,
Martin

On 2017-05-02 06:46 AM, Piotr BaƄski wrote:
> One thought is to introduce a tei.localref datatype that would be
> defined as an XML name prepended with a '#'. That could help in cases
> where one would like to create (by means of Schematron[1]) an analogy to
> the IDREF mechanism. And since the type wouldn't be defined as an URI,
> xml:base expansion wouldn't apply to it.
>
> [1] Maybe the Schematron check should even be an internal part of the
> definition of that datatype, to force document() -- except I am not so
> sure how "document()" would behave in such cases. I'd love to be
> enlightened.
>
> Musing aloud,
>   Piotr
>
> On 05/02/17 14:46, John P. McCaskey wrote:
>> @rendition has datatype teidata.pointer. Pointers can point to locations
>> either within the current document or elsewhere. They should be expanded
>> with any @xml:base attributes up the XML tree.
>>
>> But @rendition is supposed to point to an element in the tagsDecl
>> element, normally within the same document, though presumably it could
>> be the tagsDecl in some other document.
>>
>> My question: Is it really the case that a rendition pointer should honor
>> parent @xml:base attributes?
>>
>> I guess the theoretical answer is yes, but I can imagine cases where the
>> @xml:base attributes are primarily for setting image paths, .xml
>> directories, and http addresses, and the coder does not really intend
>> the @rendition attributes to point externally.
>>
>> Thoughts?
>>
>> John
>>