[osis-core] ID, IDREF, IDREFS, reference and referenceEnd

Patrick Durusau osis-core@bibletechnologieswg.org
Wed, 10 Apr 2002 07:49:49 -0400


Guys,

A little longer explanation of the ID, IDREF, IDREFS, reference and 
referenceEnd mechanisms I proposed in osis_0106 (to which Todd objects):

ID: optional

Nature of ID requires that they be unique in a document. But, not all 
users will want to include IDs on every element and for many elements, 
such as paragraph, may be seen as unnecessary.

We can derive osisID from ID and enforce the compScriptureRef pattern 
for the ID value (when used). (I think that would be an improvement over 
what appears in osis_0106. (If we do that, we need to allow for a prefix 
of "n" for notes, for example, so we avoid the multiple claims for an ID 
as raised by Todd. I still don't think that is very likely, at least if 
one has a traditional view of the use of IDs but do concede that I have 
not been able to convince Todd to adopt that view. ;-)

IDREF: optional

Nature of IDREF requires that it point to an ID in the document. Since 
we can derive and enforce compScriptureRef pattern, this means that 
IDREFs are also so constrained, although by implication.

Note that any ID can have multiple IDREFs pointing at it.

IDREFS: optional

A space delimited set of IDs.

Usage: What I envisioned was something like the following:

IDREFS = pointers to IDs where note applies

<note IDREFS="Matt.1.2 Matt.1.6a">blah blah blah</note>

(Should we add an "n" attribute for folks who want to record numbers for 
display?)

Note that the use of IDREFS allows us to attach the note to a particular 
span of text, as identified by IDs in the document.

All of the foregoing refers to material contained inside a document 
instance.

To refer outside the document instance, I suggested the use of reference 
and referenceEnd.

Actually I am not sure we need the ability to point outside the document 
on every element anyway. Would favor dropping this in favor of an 
unrestricted pointing attribute on reference.

So, that leave us with:

ID (validated against compScriptureRef or union),

IDREF (mainly for milestones refering to the start ID), and

IDREFS (to attach notes and other materials to particular ranges of text).

Possible new attribute on <reference> for pointing but not sold on that 
idea.

Does that help? Confuse?

Patrick

-- 
Patrick Durusau
Director of Research and Development
Society of Biblical Literature
pdurusau@emory.edu