[osis-core] Proposed works syntax

Patrick Durusau osis-core@bibletechnologieswg.org
Thu, 04 Jul 2002 08:25:16 -0400


Harry,

Great, and I just got the version I have to validate! ;-)

Seriously, the purpose of <work> is to allow an osisWork attribute to 
reference a value, much like castList allows a reference to particular role.

What I was trying to say was:

<verse work="bible.lxx" osisID="some reference in LXX">blah, blah</verse>

While in the header there is a <work refWork="bible.lxx"> with 
additional information about that reference.

So that the reference in osisWork has the fuller, bibliographic sort of 
information you mention below. The matching of osisWork to refWork is 
not enforced by ID/IDREF since that causes problems with the tokens in 
both.

If I am understanding your point, something along the lines of:

<xs:element name="work">
<xs:complexType>
<xs:sequence>
<xs:element ref="title" minOccurs="0"/>
<xs:element ref="creator" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="date" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="publisher" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="identifier" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="source" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="language" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="refWork" type="xs:string" use="required"/>
</xs:complexType>

And adding ISBN, ISSN, URL as optional attributes to the prose of 
identifier? Or in the alternative, since identifier carries the type 
attribute, the ISSN, ISBN, URL, edition, etc., could reside there just 
as easily.

I would note that creator = author (at least to the Dublin Core folks) 
as well as several other roles.

So what I am trying to do is provide a way to specify what is meant by 
"bible.lxx" when it appears as a attribute in <work>. Would this not 
give us a way in the initial release to specify several bible.*** 
systems of reference? Or any others for that matter? (Extending your 
suggestion and may be way off base so please correct.)

Interesting question: If we do specify reference systems using this 
method, do we need to pursue the grain/character pointing issue at this 
point? In other words, you can use osisRef to point to as fine a level 
as specified by a reference system or it can point to an ID, which might 
take you to a word for example?

Advantage would be that we can simply say that osisWork and osisRef have 
to comply with a character (no spaces, commas, periods (other than as 
syntax separators) no @, etc.) and period delimited syntax. We could 
even specify a couple of common ones in advance.

Do need to think about the canRef and osisRef where someone uses a 
divergent reference than needs to map back to the canonical set.

Have you thought about the Psalms problem if we use NRSVA? I am torn 
because if we use BHS, then users will have unfamiliar numbering leading 
to errors. If we use NRSVA, then, well I could declare a bible.bhs 
system and say that my osisRef in the head for a psalm maps to 
bible.bhs.ps.v?  work="bible.bhs" osisRef="Ps.---"

Thanks for the early start on the day!

Patrick



Harry Plantinga wrote:

>What's the purpose of the <work> entry -- is it more or less a bibliography
>entry, so you can identify the desired work, edition, language? If so, some
>of the dublin core elements don't seem to be relevant. It doesn't seem to
>help in identifying a work to give its <contributor>, <subject>,
><description>, <type>, <format>, <source>, <relation>, <coverage>, <rights>.
>
>I'm not even sure it makes sense to specify something like <subject> --
>would we be saying, perhaps, that we don't know a work's title or author --
>we just want any work on a particular subject?
>
>On the other hand, some of the dublin core elements would have to be
>overloaded with custom types.  For example,
>
><identifier type="URL">
><identifier type="ISBN">
><identifier type="ISSN">
><identifier type="osisWork">
>
><work refWork="LXX"><osisWork>bible.lxx</osisWork></work> would give us a
>way of saying "I want to use the osisID scheme of bible.lxx" without
>identifying a title, author, publisher, etc.
>
>What about using elements more closely tied to traditional bibliography
>entries, the ways that were discussed in Rome for selecting bible versions
>(version, language, ???), and URL, ISBN, ISSN?
>
>I'm thinking <title> <author> <publisher> <date> <edition> <version>
><language> <url> <isbn> <issn> <osisWork> ... any others?
>
>-Harry
>
>----- Original Message -----
>From: "Patrick Durusau" <pdurusau@emory.edu>
>To: "osis-core" <osis-core@bibletechnologieswg.org>
>Sent: Wednesday, July 03, 2002 7:20 AM
>Subject: [osis-core] Proposed works syntax
>
>
>>Greetings,
>>
>>Is the following a step in the right direction for Steve's
>>works-referenced syntax?
>>
>>Add to header:
>>
>><references> contains only <work>*
>>
>><xs:element name="work">
>>          <xs:annotation>
>>            <xs:documentation>
>>                <p>The &lt;work&gt; element is used to allow easy
>>
>reference to any work from within the OSIS
>
>> document instance. It is most commonly used in connection with osisID to
>>
>specify a particular work that
>
>>is being referenced by the osisID in question.</p>
>><xs:complexType>
>><xs:sequence>
>><xs:element ref="title" minOccurs="0"/>
>><xs:element ref="contributor" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="creator" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="subject" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="date" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="description" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="publisher" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="type" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="format" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="identifier" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="source" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="language" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="relation" minOccurs="0" maxOccurs="unbounded"/>
>><xs:element ref="coverage" minOccurs="0" maxOccurs="unbounded"/>
>></xs:sequence>
>><xs:attribute name="refWork" type="xs:string" use="required"/>
>></xs:complexType>
>></xs:element>
>>
>>I just put the work attribute in as xs:string but that is just a place
>>holder. Please suggest how we could enumerate values for use with our
>>"x-" extension.
>>
>>Reasoning being that by specifying the work attribute on osisID, there
>>is a reference back to the <work> element(s) held in references. Note
>>that this is not ID/IDREF so we can avoid the name restrictions in XML.
>>So, would have to be enforced by application.
>>
>>This does not solve the versification problem but does at least clear
>>part of the way to that problem.
>>
>>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