Agreed. I think there are two issues... One is with the headers that JSword adds as you read the file in. The other with the missing verses. One of the suggestions from Tyndale is that it wouldn't take too long to amend the modules to have those verses in there if that makes sense. For example, I'm getting the impression the "missing" verses in Acts in the ESV are actually present with 0-content. <div>
<br></div><div>The other option is that we can try and track the "current reference" as best we can. Store the anything that seems ahead of time in memory until we output it. That would add a bit of a performance overhead (parsing of keys) and a bit of memory overhead, but I'm guessing not that much in the grand scheme of things. </div>
<div><br></div><div>Chris</div><div><br><br><div class="gmail_quote">On 6 September 2012 23:33, DM Smith <span dir="ltr"><<a href="mailto:dmsmith@crosswire.org" target="_blank">dmsmith@crosswire.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Chris,<br>
A module only has verse content. In order to have module, testament, book and chapter introductions we have a notion of testament 0, book 0 and verse 0, using SWORD notation. Actually, JSword has special books for module and testaments. This is new to JSword in the av11n work.<br>
<br>
I think the title was verse 0 of the chapter you were grabbing. It is an open question in my mind what we do with verse 0. I think the consensus is that we don't show verse 0 to the end user but we allow it to be input. For that reason it was not wrapped in a verse element.<br>
<br>
When the user requests a chapter, they'll get verse 0, if present in the module. I think you'd find that if you had a module with some verses missing and another with other verses missing in the same chapter, that few of the verses line up.<br>
<br>
My guess is that it is using two or more iterators and assumes that they are parallel arrays. This is not a good assumption. It might very well be my code, my bad.<br>
<br>
In Him,<br>
DM<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On Sep 6, 2012, at 2:15 PM, Chris Burrell <<a href="mailto:chris@burrell.me.uk">chris@burrell.me.uk</a>> wrote:<br>
<br>
> Hi all<br>
><br>
> I'm having a situtation where I'm using multiple Book objects in BookData. Unfortunately, because there are elements like "title" that are not wrapped into any verse, the cells get out of sync (see example below).<br>
><br>
> I suggest to mitigate that, we insert any element without a key of osisId in the same cell as the following osisId key. This would resolve the issue below. It may however not resolve the issue where some modules do not have a Key, but I think that is catered for elsewhere?<br>
><br>
> Chris<br>
<br>
</div></div></blockquote></div><br></div>