[osis-core] Index Syntax

Patrick Durusau osis-core@bibletechnologieswg.org
Sun, 30 Jun 2002 11:25:43 -0400


Harry,

Let me see if I understand where you are on the index issue:

Harry Plantinga wrote:

>Well, when you start thinking hard about an issue you
>come up with all sorts of additional consideration...I'm
>going to try to mention some important ones.
>
>1. Index entries in books look like this:
>  Subject1
>    Subject2  37, 92, 143
>
>I'm going to call the outer entry heading (Steve calls it
>key1) and the next heading Subject2 (Steve's key2). I'm going
>to refer to the location identifier text as the "title".  In
>this example there are three index entries, with three different
>titles -- 37, 92, 143.  In print books the title is normally
>the page number or some variant thereof -- e.g. 143n2 for p143,
>footnote 2.
>
So you consider the page numbers to be titles? Ah, in the sense of where 
do I look for this subject? Hmmm, but in terms of my constructing an 
index, each entry would be for its particular place, thus:

<p>some text<index ID="12314" index-name="subject" key1="Job" 
key2="theodicy"/>some more text, blah, blah, <index ID="15515" 
index-name="subject" key1="Babylonian sufferer"/>

Note that when you auto-generate the index, the values of the key1, 
key2, key3 (proposed attributes) are the entries in your subject index 
(declared in index-name) and they are as follows:

<a "link/pointer:15515">Babylonian sufferer</a>
*
*
<a "link/pointer:12314">Job</a>
*
*
*
<a "link/pointer:12314">theodicy</a>

Note that this is a case where we will want to have the unique ID 
requirement enforced by XML syntax since an index entry is only 
meaningful if it can return you to a particular point in the text.

What makes this work is binding the actual entry in any of the keys to a 
particular ID.

What if I have more than one index entry, with the same key? Sure, that 
is Harry's example where he refers to pages as "titles." In that case, I 
would think the most useful display would be to grab the nearest <div> 
 header and display it with the index key under it, for example:

<item>ANE Parallels</item> (grabbed from nearest div)
<a "line/pointer:15515">Babylonian sufferer</a>
<item>ANE Texts</item> <grabbed from another div)
<a "line/pointer:29999">Babylonian sufferer</a>

In cases where they are under the same div, could just display one div 
title and offer icons to reach the various entries.

Realize that I have strayed into application topics (Troy/Chris/Todd's 
area of expertise) but it looks like an easy thing to add that would buy 
us a lot of ability.

Action:

I plan on adding the index element as an empty element with attributes 
of index-name and three keys for the test version coming out later today.

Patrick





>
>2.  Most books have only 2 levels of index headers, i.e. subject1
>and subject2, but I have seen (old) books with 3 levels.  Some word
>processors (e.g. OpenOffice, Word) limit the number of levels to 2.
>We'd have to decide how many levels to allow.
>
>3.  Subject1, subject2, and title text that is held in an attribute
>can't contain markup.  You couldn't have an entry that says
><i>See</i> p43.
>
>4.  We can't use page numbers for titles anyway -- page numbers
>don't make much sense for electronic books. Perhaps we should
>use canonical identifiers, e.g. X.iii.5, where the underlying
>link is to a particular spot in X.iii.5. However, these can
>get kind of ugly and they have lots of internal structure which
>is distracting.  Another option would be to use 1, 2, 3, ...
>A title attribute could be used to specify the title to use.
>
>5.  If we are willing to go with generated titles (X.iii.5 or 1,2,3)
>we don't need a title attribute. If we are willing to have entries
>that have no markup, we can use attributes for Subject1, Subject2,
>etc.  In that case, we can use Steve's proposed syntax:
>
><index index-name='xxx' key1='...' key2='..' key3='...'/>
>
>Maybe 3 levels is enough.  I suppose this is a reasonable compromise
>between utility and simplicity.
>
>-Harry
>
>
>>-----Original Message-----
>>From: owner-osis-core@bibletechnologieswg.org
>>[mailto:owner-osis-core@bibletechnologieswg.org]On Behalf Of Patrick
>>Durusau
>>Sent: Wednesday, June 26, 2002 1:44 PM
>>To: osis-core
>>Subject: [osis-core] Index Syntax
>>
>>
>>Harry,
>>
>>Still working on the current and a proposed revision of the pointer
>>syntax (which I think needs a bit more clarity) as well as incorporating
>>your observations and remarks.
>>
>>Since it (may!) be a simpler issue, what about the <index> element syntax?
>>
>>Steve suggested:
>>
>><index index-name='subjects' key1='sacrifices' key2='cows'
>>key3='preparation of'>...</index>
>>
>>To avoid any more overlapping problems than we have already, I would
>>suggest:
>>
>>1. <index> be an empty element with attributes.
>>
>>Clarification: does index-name mean the type of index? subject versus
>>name versus geographic place? (Assume so but wanted to be certain.) If
>>that is the case then each index could hold only one index-name/type
>>along with associated keys but if it is an empty element, suppose you
>>could have as many as you liked at any point in the text.
>>
>>Allow index to appear anywhere that milestone can appear?
>>
>>Comments, suggestions?
>>
>>Patrick
>>
>>--
>>Patrick Durusau
>>Director of Research and Development
>>Society of Biblical Literature
>>pdurusau@emory.edu
>>
>>

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