[osis-core] Error on identifier (colon required to match regex)
Troy A. Griffitts
osis-core@bibletechnologieswg.org
Sat, 25 Oct 2003 13:07:32 -0700
I believe the 'type' attribute on the 'identifier' element should not be
restricted by 'osisGenType'
<identifier type="OSIS">OSIS.Canonical.Name.Here</identifier>
should be allowed and is THE way to unambiguously refer to an OSIS document.
-Troy.
Patrick Durusau wrote:
> Troy,
>
> type on identifier is defined as:
>
> <xs:attribute name="type" type="osisGenType"/>
>
> Which calls the regex you mention below.
>
> I removed the enumeration of values and replaced it with the regex,
> which allows you to declare the identifier in a work.
>
> The reason for the error is that the regex requires OSIS: and not simply
> OSIS. The reasoning was that usually an identifier will be used in a
> number of places with more parts of the identifier following and so the
> need to enforce the ":" separator.
>
> Will this be a problem? Note we get the same behavior with type on
> subject, i.e., incorrect DEWEY, correct DEWEY:.
>
> In a way it does call the user's attention to the proper use of the
> identifier itself as being identifier + colon.
>
> This also requires identifier + colon in Lemma, Morph and POS, but we
> are used to seeing them there anyway.
>
> Comments?
>
> Hope everyone is having a great day!
>
> Patrick
>
> Troy A. Griffitts wrote:
>
>> Hey guys. Here's the report on the run of the latest schema against
>> my latest encoding of the NASB:
>>
>> [scribe@troyslaptop msv]$ java -jar msv.jar ./osisCore.xsd ./nasb.xml
>> start parsing a grammar.
>> validating ./nasb.xml
>> Error at line:7, column:45 of file:///space/home/scribe/msv/./nasb.xml
>> attribute "type" has a bad value: the value does not match the
>> regular expression
>> "((((\p{L}|\p{N}|_)+)(\.(\p{L}|\p{N}|_))*:)((((\p{L})|(\p{N}))+)(((\.(\p{L}|\p{N}|_)+)*))?))".
>>
>>
>> the document is NOT valid.
>>
>> it fails on this line:
>> <identifier type="OSIS">Bible.NASB</identifier>
>>
>>
>> Here's the head of the doc:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <osis xmlns="http://www.bibletechnologies.net/2003/OSIS/namespace"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="http://www.bibletechnologies.net/2003/OSIS/namespace
>> osisCore.1.9.xsd">
>> <osisText osisIDWork="nasb" xml:lang="en">
>> <header>
>> <work osisWork="nasb">
>> <title>NEW AMERICAN STANDARD BIBLE</title>
>> <identifier type="OSIS">Bible.NASB</identifier>
>> <rights>Copyright (C)
>> 1960,1962,1963,1968,1971,1972,1973,1975,1977,1995 by THE LOCKMAN
>> FOUNDATION</rights>
>> <refSystem>Bible</refSystem>
>> </work>
>> <work osisWork="strongs">
>> </work>
>> </header>
>>
>>
>> <div type="book" osisID="Matt"><title type="main"
>> subType="x-Book">MATTHEW</title>
>> <chapter osisID="Matt.1"><title type="sub" subType="x-Chapter">CHAPTER
>> 1</title>
>> <title type="sub" subType="x-Section">The Genealogy of Jesus the
>> Messiah</title>
>> <verse osisID="Matt.1.1"><w lemma="strongs:G976">The <note
>> type="explanation" osisID="Matt.1.1.note.1" n="1"></note>record</w> <w
>> lemma="strongs:G1078">of the genealogy</w> <w lemma="strongs:G2424">of
>> <note type="explanation" osisID="Matt.1.1.note.2"
>> n="2"></note>Jesus</w> <note type="explanation"
>> osisID="Matt.1.1.note.3" n="3"></note><w lemma="strongs:G5547">the
>> Messiah</w>, <note type="crossReference" osisID="Matt.1.1.xref.A"
>> n="A"></note><w lemma="strongs:G5207">the son</w> <w
>> lemma="strongs:G1160b">of David</w>, <note type="crossReference"
>> osisID="Matt.1.1.xref.B" n="B"></note><w lemma="strongs:G5207">the
>> son</w> <w lemma="strongs:G11">of Abraham</w>:
>> <milestone type="line" subType="x-PM"/></verse><verse
>> osisID="Matt.1.2"><w lemma="strongs:G11">Abraham</w> <note
>> type="explanation" osisID="Matt.1.2.note.1" n="1"></note><w
>> lemma="strongs:G1080">was the father</w> <w lemma="strongs:G2464">of
>> Isaac</w>, <note type="explanation" osisID="Matt.1.2.note.2"
>> n="2"></note><w lemma="strongs:G2464">Isaac</w> <w
>> lemma="strongs:G1080">the father</w> <w lemma="strongs:G2384">of
>> Jacob</w>, <w lemma="strongs:G2384">and Jacob</w> <w
>> lemma="strongs:G1080">the father</w> <w lemma="strongs:G2455">of <note
>> type="explanation" osisID="Matt.1.2.note.3" n="3"></note>Judah</w> <w
>> lemma="strongs:G80">and his brothers</w>.
>> </verse><verse osisID="Matt.1.3"><w lemma="strongs:G2455">Judah</w> <w
>> lemma="strongs:G1080">was the father</w> <w lemma="strongs:G5329">of
>> Perez</w> <w lemma="strongs:G2196">and Zerah</w> <w
>> lemma="strongs:G2283">by Tamar</w>, <note type="crossReference"
>> osisID="Matt.1.3.xref.A" n="A"></note><w
>> lemma="strongs:G5329">Perez</w> <w lemma="strongs:G1080">was the
>> father</w> <w lemma="strongs:G2074">of Hezron</w>, <w
>> lemma="strongs:G2074">and Hezron</w> <w lemma="strongs:G1080">the
>> father</w> <w lemma="strongs:G689">of <note type="explanation"
>> osisID="Matt.1.3.note.1" n="1"></note>Ram</w>.
>>
>> Patrick Durusau wrote:
>>
>>> Guys,
>>>
>>> Getting closer all the time!
>>>
>>> Note that I have added an enumerated type on <seg> of otPassage. That
>>> allows Troy to avoid default rendering of quotes but also allows me
>>> to avoid trying to add another content model when I am already tired.
>>>
>>> Should Troy's analysis of usage prove accurate, which it very well
>>> may, we may need to revisit this issue for this type of passage and
>>> others. For my part, if "the very stones would cry out," the Rolling
>>> Stones that is, we may need to revisit this issue. ;-)
>>>
>>> I think this is about as close as I can get today. Please run your
>>> various texts against it and let me know the results.
>>>
>>> Really do appreciate all the hard work!
>>>
>>> Hope everyone is having a great day!
>>>
>>> Patrick
>>>
>>>