[sword-devel] ESV encoding bug
dmsmith555 at yahoo.com
Fri May 5 18:55:57 MST 2006
A couple of bugs, possible bugs and stylistic variation: (All using
Psalm 1.1 as an example. Numbered but no particular order.)
1) XML defines most control characters as being errors. In parsing
ESV with Apache's Xerces, I am getting the following error in Psalm 1.1:
Error on line 1: An invalid XML character (Unicode: 0x10) was found
in the element content of the document.
Question, should this be fixed? I'm pretty sure that the SWORD API
handles this as whitespace. But it causes JSword to not show the
verse (I can change JSword to filter these characters, but that is
awfully expensive to cleanup what is not supposed to be there)
2) Which version of OSIS defines type="i" for the <hi> element? I
presume that it stands for italics. If so, the attribute is "italic"
3) Same question regarding <title type="section">. Since this is a
new module shouldn't we adhere to the current standard? Section is
not one of the pre-defined types for a title. So it should be
preceded by x-.
4) <milestone type="line"/> According to the OSIS manual this is to
be used to mark a line in the original that is to be preserved, but
is not to be a part of the general presentation of the document. The
element <lb/> is defined as being allowed anywhere and it is a line
break that should be presented. In earlier versions of OSIS the <lb/>
element was limited to the poetic elements.
5) <note type="crossReference" osisID="Ps.1.1.xref_b" n="b"> The OSIS
manual recommends a different representation of the osisID on a note.
First, in the examples, it uses ! to separate the "Ps.1.1" and
"xref_b". It also suggests that failing the presence of the n
attribute (which it recommends against using the attribute) that the
note marker can be deduced from the osisID. It is not at all clear
how one could do this, but the examples in the manual all use .
rather than _ to separate the "marker" from what precedes it. The
manual also recommends that all notes have an osisRef to the verse to
which it refers, allowing for notes to be extracted but still be
"attached" to their verse.
6) Notes are preceded by whitespace and immediately followed by
content. If note markers are placed where they occur, this would
indicate that the note refers to what follows (i.e. to what it is
adjacent). I am not sure this is what is intended.
7) line breaks (i.e. <milestone type="line"/>) are immediately
followed by whitespace in some cases. This may cause subtle
whitespace issues. It would be better to have whitespace precede the
break or be eliminated altogether.
8) There is an instance of multiple whitespace between two words. In
JSword and Sword WEB as well as any other HTML based system, this
won't be a problem. But, I don't know about other front-ends.
9) The is a missing whitespace between "seat" and "scoffers". It is
encoded as "seat<note...>....</note>scoffers" I don't think we should
have to guess where whitespace belongs relative to a note. If the
note is hidden, it forces the words together.
More information about the sword-devel