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

Todd Tillinghast osis-core@bibletechnologieswg.org
Sun, 1 Sep 2002 00:49:45 -0600


Following are a summary of a conversation Patrick and I had earlier
today regarding references.

We came to the following suggestions/conclusions: 

1) Contrary to prior proposals by myself, there should be NO mechanism
or strategy to indicate that an identifier can be used without a
transformation for differing levels of the identifiers in the namespace.
External mapping strategies, techniques, software and/or specifications
will be used to determine if Bible.NIV:Matt.1.1 can "fall back" to
Bible:Matt.1.1.

2) <osisText> will have an attribute that self identifies itself as a
specific work (this attribute will likely be named osisWork).  This
value of this attribute must match the workID attribute of a <work>
element in its header.  This attribute will NOT define or declare the
default "namespace" to be used for identifiers in osisID or in osisRef.
A second attribute will declare the default "namespace" for use with
osisID identifiers and with osisRef.  The value of this attribute will
default to "Bible" and if a value is specified the value must match the
workID attribute of a <work> element in the <header>.

3) The <refSystem> element in <work> should be eliminated.  This removes
the confusion and ambiguity that exists regarding differences between
the <identifier> value which is a "namespace" in its own right and
<refSystem> with is also a "namespace".  As a result all references and
self-identifiers should be expressed in the context of a single
"namespace" as defined by the value of <identifier>.

4) There will be no mechanism to make a reference to one work using
another "namespace" and an identifier from that namespace.  The
identifier in a reference is always in the context of the "namespace"
and to the work that defines the "namespace".  

For example there will be no mechanism to make a reference to the text
in Bible.NIV based on the identifier Bible.French.LSV:Ps.42.13.  In
short there is no way to express Bible.French.LSV[Bible.NIV]:Ps.42.13
other than Bible.NIV:Ps.43.2.



Examples:
Ex:
<osisText defaultNamespace="bible" osisWork="tev"> <!-- the
defaultNamespace could have been defaulted with the same result -->
	<header>
		<work workID="tev">
			<identifier type="OSIS">Bible.TEV</identifier>
		</work>
		<work workID="bible">
			<identifier type="OSIS">Bible</identifier>
		</work>
		<work workID="kjv">
			<identifier type="OSIS">Bible.KJV</identifier>
		</work>
		<work workID="fr">
			<identifier
type="OSIS">Bible.French.LSV</identifier>
		</work>
	</header>

	<!-- ref to Ps.43.3 as defined in Bible.TEV and to the specific
work Bible.TEV -->
	<reference osisRef="tev:Ps.43.3"/> 

	<!-- ref to Ps.43.3 as defined in Bible and to an abstract work
Bible -->	
	<reference osisRef="Ps.43.3"/>

	<!-- ref to Ps.43.3 as defined in Bible and to an abstract work
Bible -->	
	<reference osisRef="bible:Ps.43.3"/>


	<!-- ref to Ps.42.13 as defined in Bible.French.LSV and to the
specific work Bible.French.LSV -->
	<reference osisRef="fr:Ps.42.13"/>


	<!-- ref to Ps.43.3 as defined in Bible.KJV and to the specific
work Bible.KJV -->
	<reference osisRef="kjv:Ps.43.3"/>
	....
	<!-- same applies to osisIDs -->
</osisText>


Patrick, let me know if I have put any words in your mouth or left
anything out?

Responses?

Todd