[sword-devel] osis2mod and container elements
dmsmith555 at yahoo.com
Wed Jul 2 08:45:56 MST 2008
Chris Little wrote:
> Sebastien Koechlin wrote:
>> On Tue, Jul 01, 2008 at 02:07:09PM -0400, DM Smith wrote:
>>> There has been an on-going debate as to whether one should have verses be
>>> containers. To me it seems that sides are taken depending on ones role.
>>> Software developers, using the SWORD engine, nearly always fall in the
>>> "verse as container" camp or Book, Chapter, Verse (BCV) camp. E.g. I am a
>>> BCV proponent.
>> There is one thing I was unable to encode in FreJND too: Pararaph spanning
>> across two consecutive chapters.
>> For Example, I have a paragraph starting at 1Sam.9.27 and ending at 1Sam.10.8
>> (Same for Neh.7.73, Dan.10.21, Mark.8.38, John.9.41, Acts.7.60, Acts.15.41,
>> Acts.21.40, 1Cor.10.33, 2Cor.6.18, Eph.1.23, Eph.4.32, Col.3.25, Heb.3.19,
>> 1John.2.29, Rev.12.18)
>> OSIS is unable to encode this, I think.
> It looks like I've finally found _one_ thing OSIS can't encode, related
> to this. OSIS is unable to encode a paragraph that spans consecutive
> books (because <p/> can't contain <div/>).
> There is actually a case in which this is needed, across the
> 1Kings/2Kings boundary in the Hebrew.
One can use the milestoned version of div. Mechanically, it is valid xml.
This would be bad OSIS.
The problem with milestones is that it allows for free-for-all documents.
The only reason to have milestones is to have two different markup
systems at the same time.
My rule of thumb:
If the element cannot contain another, then using milestones to work
around it is wrong.
I think we need to have a smart OSIS validator that checks two things
that an XML validator cannot.
1) Ignoring BSP, does BCV follow strict containment rules.
2) Ignoring BCV, does BSP follow strict containment rules.
Basically, if one were to get rid of Book, Chapter and Verse divisions,
all milestoneable elements should be able to be converted to their
container form and the document be valid OSIS.
Likewise, if one were to get rid of BSP elements and convert milestoned
versions of Book, Chapter and Verse to their container form, the
document should be valid OSIS.
More information about the sword-devel