<div dir="ltr">Great! Very helpful. The safest way to compare two verses&#39; OSIS IDS is therefore to use the parser.<div><br></div><div>Chris</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
On 6 July 2013 11:53, DM Smith <span dir="ltr">&lt;<a href="mailto:dmsmith@crosswire.org" target="_blank">dmsmith@crosswire.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">Well, I take that back. Its not quite that simple.<div><br></div><div>For a verse, an OSIS ID in its simplest form consists of a book name (b), chapter (c) and verse (v) as either b, b.c, b.c.v or b.v (in the case of single chapter books). Also, b is from a fixed list of case sensitive values.</div>
<div><br></div><div>This is what JSword supports for a verse.</div><div><br></div><div>The OSIS ID can be prefixed with other stuff, typically denoting type of work, module and possibly language/country. These are not expected by JSword at this time. Some examples:</div>
<div>KJV.b.c.v</div><div>Bible.KJV.b.c.v</div><div>Bible.en_UK.NASB.b.c.v</div><div><br></div><div>And an OSIS ID can be suffixed with an indicator that a verse is in part. IIRC, this is called a grain and is separated from the v by a !. There are various forms of this. I think JSword strips off the ! and what follows.</div>
<div><br></div><div>Also, an OSIS ID can be a space separated list of the above to represent a range, as in:</div><div>Gen.1.1 Gen.1.2 Gen.1.3</div><div><br></div><div>JSword (and SWORD) don&#39;t assume that the content of an OSIS ID is properly formed, but pass the content thru a general purpose passage parser.</div>
<div><br></div><div>In Him,</div><div><span style="white-space:pre-wrap">        </span>DM</div><div><div class="h5"><div><br></div><div><div><div>On Jul 6, 2013, at 6:18 AM, Chris Burrell &lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt; wrote:</div>
<br><blockquote type="cite"><div dir="ltr">I don&#39;t have a bug in mind. I just wasn&#39;t sure how the module was encoded and if there were any checks there.</div><div class="gmail_extra"><br><br><div class="gmail_quote">
On 6 July 2013 11:15, DM Smith <span dir="ltr">&lt;<a href="mailto:dmsmith@crosswire.org" target="_blank">dmsmith@crosswire.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">It is meant to be. It&#39;s a bug otherwise. But it may be a bug in the XML.<br>
<div><div><br>
On Jul 6, 2013, at 5:09 AM, Chris Burrell &lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt; wrote:<br>
<br>
&gt; Hi<br>
&gt;<br>
&gt; Just wondering if when parsing the XML and reading off the OSIS ID from the various verses. Is that guaranteed to be the same as when we use the Key Iteratory, with key.getOsisID()?<br>
&gt;<br>
&gt;<br>
&gt; Chris<br>
&gt;<br>
</div></div>&gt; _______________________________________________<br>
&gt; jsword-devel mailing list<br>
&gt; <a href="mailto:jsword-devel@crosswire.org" target="_blank">jsword-devel@crosswire.org</a><br>
&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
</blockquote></div><br></div>
</blockquote></div><br></div></div></div></div></blockquote></div><br></div>