[osis-core] reference systems: my thoughts - issues

Patrick Durusau osis-core@bibletechnologieswg.org
Sat, 31 Aug 2002 16:27:33 -0400


Todd,

Let me take a stab at answering your issues (although I think others 
have done a better job than I will probably do here).

<snip>

> 
> QUESTION:
> 1) Is the workID attribute in <work> supposed to act as an alias when
> forming a reference?
> 
> ISSUES:
> 1) In the above examples I used Bible.French to imply that a French
> reference system is in use.  I did not use FrenchBible without a "."
> because I was trying to imply that they are works from the same type
> (Bibles).  To me this means that there must be a mapping between the
> Bible.French general reference system and the Bible general reference
> system.  The trouble I am having is that when I see
> Bible.NIV.1993.en:Ps.45.3 I assume that I can "fall back" to Bible and
> still use the Ps.45.3 without having to worry about mapping.  However,
> Bible.French:Ps.44.3 is equivalent to Bible:Ps.45.3.  In some cases we
> seem to mean that the identifier to the right of the ":" could be used
> with any level of "granularity" of the identifier to the left of the
> ":".  (When we say Bible.NIV.1993.en:Ps.45.3 we could fall back to
> Bible.NIV:Ps.45.3 or Bible:Ps.45.3 or Bible.NIV.1993:Ps.45.3.)
> 


The crux of the problem is the assumption that the "fall back" problem 
can be solved as a matter of syntax. That would be the case if there was 
a universal mapping system to which any know bible reference could be 
mapped, sort of like a BPS (Biblical Positioning System) that any other 
reference could be translated to and from.

The ability of software, Logos for example, to "fall back" has nothing 
to do with the syntax they have used for markup and a great deal to do 
with their mapping tables between completely inconsistent numbering and 
versification systems.

The "fall back" that you propose would work only with software that 
presupposed the KJV (or other, take your pick) system as being the 
system to which it should "fall back." Would get some fairly odd results 
if you used the Hungarian Bible for example as the "fall back" system. 
Even though that would work for most Bible references, as Harry has 
pointed out, there are very few other texts that have multiple reference 
system and I suspect (personal opinion) that it is easier to simply 
create a mapping table of uniform syntax as part of the OSIS project 
than to solve this problem in syntax.



> It also seems that Bible.NIV.1993.en:Ps.45.3 and
> Bible.NIV.1993.fr:Ps.45.3 could both fall back to Bible.NIV.1993:45.3
> and mean the same thing.
> 
> This seems like the biggest problem that is not yet solved with this
> strategy.
> 
> Summary of problem: We don't know when we can fall back based on the
> "namespace" identifier and still use the identifier to the left of the
> ":" and when mapping is required because we have moved between reference
> systems.
> 


The syntax never "falls back." The software looks for a reference and 
does not find it and it has to "fall back," usually in reliance on a 
mapping table. Having a reference in some known syntax helps because it 
can then use that to do a lookup in its mapping table to see what else 
would match.

> The only way I see to solve this problem is to define that the
> identifier to the left of the ":" is valid WITHOUT mapping for all "fall
> back" levels for the "namespace".  AND force a DIFFERENT top level
> identifier for cases where such fall back is not possible.  This would
> force to editions (even in the same language) that have different
> reference systems to have a different top level "namespace" identifier.
> Bible.NIV.1993.en:Ps.45.3 and BibleFrench.NIV.1993.en:Ps.44.3 would be
> references two different editions  of the same translation that differ
> only by the reference system.
> 
> Solutions?
> 
> 2) In the second example above, I referenced Bible.NIV:Ps.45.3 from
> within the Bible.French.LSV.  I don't see a way to create a reference to
> a specific work from using a different reference system.  With the other
> stategy we could say Bible.French[Bible.NIV]:Ps.44.3.
> 
> A solution for this problem would be that we use work definition and
> specify the reference system "Bible.French" in <refSystem> when we
> declare the work Bible.NIV in the <work> element in the <header>.


Note that you are seeing the reference system as something apart from 
the work in order to say we cannot "create a reference to a specific 
work from using a different reference system."

Not sure what that would mean? Seriously, not trying to be cute (hard 
enough for me to be presentable, much less cute, but that is another 
story.) Why would I want to create a reference to the NIV that was using 
the French (lets assume it is different, not simply arrogant) reference 
system? If what I want is a passage from the NIV, which as Harry points 
out carries its reference system with it, why would I ever want to point 
at it using another system? If it is the mapping between those two 
systems that is the point, it is much easier to get that with a mapping 
table than all the declarations and syntax.


> 
> 3) It seems unfortunate that the default reference system becomes the
> work when something other than the work is declared in <osisText>
> attribute osisWork.  For example if we declare osisWork to be Bible.TEV
> then the full form of all references becomes Bible.TEV:Matt.1.1 rather
> than Bible:Matt.1.1, when a reference to the general reference system is
> likely intended rather than to the specific work.  Is there a way we can
> separate the "default namespace" from osisWork? 
> 


Not sure whatever choices we make that we can prevent users from making 
vague or incorrect references. One of the most annoying jobs I ever had 
with doing SGML encoding was converting poorly edited academic articles 
into SGML. Well, as you suspect, references in the text (bibliographic) 
as supposed to have targets in the bibliography. Well, what do you do 
when it says, "see (Smith)" and there are only 5 Smith references in the 
biliography? No dates, no way even reading the text to determine which 
Smith citation, if any of them, was intended by the author. Can't 
control intent or proper use with syntax.


> 4) Since we can specify a <refSystem> for a <work> that differs from the
> identifiers in the works "name", what form does the "fully formed"
> reference take if used externally.  
> Example:
> (work is "Bible.NIV" and refSystem is Bible.French or (FrenchBible)) and
> the fully formed reference using the previous reference strategy is
> Bible.French[Bible.NIV]:Ps.44.3.  With the new strategy we can say
> neither Bible.French:Ps.44.3 nor Bible.NIV:Ps.44.3 nor
> Bible.NIV:Ps.45.3.
> The issue being that we need a way to express a reference as a single
> string that includes BOTH the namespace of the work and the namespace of
> the identifier when the differ.  
> 


But if we use Harry's notion that a French version of the NIV, for 
example, is both the work and the reference system, why do I need to 
express the two separately? Yes, I know for the mapping issue but as I 
said earlier, I really don't think we can do that in inline syntax. 
Sounds good for bibles but really overburdens all the other works that 
don't need such a system.





> Solutions?
> 
> 
> If we can find satisfactory solutions for these three issues I am in.
> 


Part of the problem is that you are seeing a systemic solution to the 
mapping problem, which is one I don't think many of us (including 
myself) really appreciate. The other part of that problem, though, is 
that you want to implement that solution in syntax, which I am not 
convinced is the right place for the solution to occur. I can easily 
imagine software that takes an osisID and the declarations in the header 
and says: Because I know that the NIV (for example) has books Gen - Rev 
and uses the KJV reference system so X-Xn map --- and Y-Yn map ---.


I think I understand the issues but I guess I am differing at where they 
need to be solved.

Patrick


> Todd 
> 
> 
> 
>