<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 2/10/23 04:46, Fr Cyrille wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      I'm very excited to have this module!<br>
    </blockquote>
    <p>Thanks! I'm glad to be able to help.<br>
    </p>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be">You
      can also look at the LXX module, which has quite a lot of
      information in its code.<br>
    </blockquote>
    <p>Is this the module at
      <a class="moz-txt-link-rfc2396E" href="https://git.crosswire.org/cyrille/lxx"><https://git.crosswire.org/cyrille/lxx></a>?<br>
    </p>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be"> The
      number is useful for displaying strong numbers in order (if I
      remember correctly) in Bishop (Android).<br>
    </blockquote>
    <p>Which number is that? The "src" attribute or the "n" attribute?</p>
    <p>Also, where's the best place to obtain Bishop for Android? The
      wiki links to
<a class="moz-txt-link-rfc2396E" href="https://play.google.com/store/apps/details?id=org.crosswire.bishop"><https://play.google.com/store/apps/details?id=org.crosswire.bishop></a>
      which gives me a "not found" error.<br>
    </p>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be">
      Finally, if you think it's possible, I'd make an usfm file first,
      because it's much easier to read and correct than an osis.<br>
    </blockquote>
    <p>I've written a program to merge the annotations from the
      "translation table" spreadsheet into the BSB text; because the
      work is being done by a program and not manually, it's a lot
      easier for me to work with the text in OSIS format. It's still
      possible to edit the USFM sources before they're converted to
      OSIS, but I'd rather keep them as close as possible to how the
      Berean translators supplied them, just in case they ever decide to
      publish an updated version.<br>
    </p>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be"> Have
      you also seen Karl's script for building the module, in the
      BSB-draft module folder?<br>
    </blockquote>
    <p>You sent me a copy of some scripts for making the BIBdraft
      module, but I couldn't find any scripts for making the BSBdraft
      module.<br>
    </p>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be">
      Finally, if there's a way of thinking about the construction
      method in such a way that it would eventually be possible to make
      an identical module in other languages (like French, for example).<br>
    </blockquote>
    <p>It's possible because the translators published their mapping
      between source-language words and target-language words. If
      somebody made a French translation of the Bible and published that
      same information, I'm sure it would be easier to make a new module
      based on that information, rather than trying to convert this
      module to another language.<br>
    </p>
    <p>Thanks for your encouragement!</p>
    <p><br>
    </p>
    <p>Timothy.<br>
    </p>
    <blockquote type="cite"
      cite="mid:76350268-a710-4dd1-af48-4f1451c9dfe7@tiberiade.be">Le
      30/09/2023 à 11:54, Timothy Allen a écrit :<br>
      <blockquote type="cite"
        cite="mid:67eb0610-66a8-462c-afba-0c2b5f30ff26@gmail.com">
        <meta http-equiv="content-type"
          content="text/html; charset=UTF-8">
        <p>The Berean Standard Bible is available in two
          machine-readable formats: USFM, and "translation tables", a
          40MB Excel spreadsheet with a row for every Hebrew or Greek
          word in their chosen source texts with the English text it's
          translated to. I would like to make one module with the nice
          formatting of the USFM sources and the metadata from the
          spreadsheet, so I've spent the last few weeks writing a script
          that runs through them both in parallel and makes s</p>
        <p _d-id="714487"><span _d-id="723309"
            class="--l --r sentence_highlight"><span _d-id="723312"
              class="--l --r hover:bg-[#B4DAE8]">I</span> <span
              _d-id="723316" class="--l --r hover:bg-[#B4DAE8]">agree</span>
            <span _d-id="723320" class="--l --r hover:bg-[#B4DAE8]">with</span>
            <span _d-id="723324" class="--l --r hover:bg-[#B4DAE8]">you</span>
            <span _d-id="723328" class="--l --r hover:bg-[#B4DAE8]">that</span>
            <span _d-id="723332" class="--l --r hover:bg-[#B4DAE8]">the</span>
            <span _d-id="723336" class="--l --r hover:bg-[#B4DAE8]">module</span>
            <span _d-id="723340" class="--l --r hover:bg-[#B4DAE8]">should</span>
            <span _d-id="723344" class="--l --r hover:bg-[#B4DAE8]">have</span>
            <span _d-id="723348" class="--l --r hover:bg-[#B4DAE8]">as</span>
            <span _d-id="723352" class="--l --r hover:bg-[#B4DAE8]">much</span>
            <span _d-id="723356" class="--l --r hover:bg-[#B4DAE8]">information</span>
            <span _d-id="723360" class="--l --r hover:bg-[#B4DAE8]">as</span>
            <span _d-id="723364" class="--l --r hover:bg-[#B4DAE8]">possible</span><span
              _d-id="723367" class="--l --r hover:bg-[#B4DAE8]">.</span>
          </span><span _d-id="723370" class="--l --r sentence_highlight"><span
              _d-id="723373" class="--l --r hover:bg-[#B4DAE8]">But</span>
            <span _d-id="723377" class="--l --r hover:bg-[#B4DAE8]">not</span>
            <span _d-id="723381" class="--l --r hover:bg-[#B4DAE8]">all</span>
            <span _d-id="723385" class="--l --r hover:bg-[#B4DAE8]">of</span>
            <span _d-id="723389" class="--l --r hover:bg-[#B4DAE8]">it</span>
            <span _d-id="723393" class="--l --r hover:bg-[#B4DAE8]">can</span>
            <span _d-id="723397" class="--l --r hover:bg-[#B4DAE8]">be</span>
            <span _d-id="723401" class="--l --r hover:bg-[#B4DAE8]">read</span>
            <span _d-id="723405" class="--l --r hover:bg-[#B4DAE8]">by</span>
            <span _d-id="723409" class="--l --r hover:bg-[#B4DAE8]">the</span>
            <span _d-id="723413" class="--l --r hover:bg-[#B4DAE8]">Sword</span>
            <span _d-id="723417" class="--l --r hover:bg-[#B4DAE8]">interface</span><span
              _d-id="723420" class="--l --r hover:bg-[#B4DAE8]">.</span>
          </span><span _d-id="723423" class="--l --r sentence_highlight">Some
            may not be useful. </span></p>
        <p _d-id="714488"><span _d-id="723425"
            class="--l --r sentence_highlight">You can also look at the
            LXX module, which has quite a lot of information in its
            code.</span></p>
        <p _d-id="714489"><span _d-id="723427"
            class="--l --r sentence_highlight">The number is useful for
            displaying strong numbers in order (if I remember correctly)
            in Bishop (Android).</span></p>
        <p _d-id="714490"><span _d-id="723429"
            class="--l --r sentence_highlight">Finally, if you think
            it's possible, I'd make a usfm file first, because it's much
            easier to read and correct than an osis.</span></p>
        <p _d-id="714491"><span _d-id="723431"
            class="--l --r sentence_highlight">Have you also seen Karl's
            script for building the module, in the BSB-draft module
            folder?</span></p>
        <p>ure everything lines up, so I'm now confident that I have an
          accurate mapping between them.</p>
        <p>My question now is, how can I translate the data from the
          spreadsheet into OSIS?</p>
        <p>Here's the information the spreadsheet gives me:</p>
        <table width="100%" cellspacing="2" cellpadding="2" border="1">
          <tbody>
            <tr>
              <th valign="top">Column<br>
              </th>
              <th valign="top">Example<br>
              </th>
              <th valign="top">Notes<br>
              </th>
            </tr>
            <tr>
              <td valign="top">he_ordinal<br>
              </td>
              <td valign="top">1<br>
              </td>
              <td valign="top">"Hebrew Ordinal", increments for each
                spreadsheet row in the Old Testament, set to 999999 for
                each row in the New Testament<br>
              </td>
            </tr>
            <tr>
              <td valign="top">el_ordinal<br>
              </td>
              <td valign="top">0<br>
              </td>
              <td valign="top">"Greek Ordinal", set to 0 for each row in
                the Old Testament, increments for each row in the New
                Testament, except for Mark 1:1 which has a word with the
                number 18379.5 (presumably something needed to be
                inserted and they didn't want to renumber everything
                else)<br>
              </td>
            </tr>
            <tr>
              <td valign="top">en_ordinal<br>
              </td>
              <td valign="top">1<br>
              </td>
              <td valign="top">"English Ordinal", increments for each
                spreadsheet row (except for that word in Mark 1:1)<br>
              </td>
            </tr>
            <tr>
              <td valign="top">language<br>
              </td>
              <td valign="top">Hebrew<br>
              </td>
              <td valign="top">"Hebrew", "Greek", or sometimes "Aramaic"<br>
              </td>
            </tr>
            <tr>
              <td valign="top">verse_ordinal<br>
              </td>
              <td valign="top">1<br>
              </td>
              <td valign="top">Increments for each verse in the Bible,
                so every word in Genesis 1:1 has "1", etc.<br>
              </td>
            </tr>
            <tr>
              <td valign="top">source_word<br>
              </td>
              <td valign="top">בְּרֵאשִׁ֖ית<br>
              </td>
              <td valign="top">The word in the original source text.
                Sometimes includes fancy brackets to mark sources other
                than WLC or Nestle 1904: {TR} ⧼RP⧽ (WH) 〈NE〉 [NA] ‹SBL›
                [[ECM]]<br>
              </td>
            </tr>
            <tr>
              <td valign="top">transliteration<br>
              </td>
              <td valign="top">bə·rê·šîṯ<br>
              </td>
              <td valign="top">A transliteration of the source word into
                the Latin alphabet<br>
              </td>
            </tr>
            <tr>
              <td valign="top">grammar_code<br>
              </td>
              <td valign="top">Prep-b | N-fs<br>
              </td>
              <td valign="top">A code describing the grammatical form of
                the word; these don't appear to be Robinson codes, but
                their own custom thing for Hebrew (<a
                  class="moz-txt-link-freetext"
                  href="https://biblehub.com/hebrewparse.htm"
                  moz-do-not-send="true">https://biblehub.com/hebrewparse.htm</a>)
                and Greek (<a class="moz-txt-link-freetext"
                  href="https://biblehub.com/abbrev.htm"
                  moz-do-not-send="true">https://biblehub.com/abbrev.htm</a>)<br>
              </td>
            </tr>
            <tr>
              <td valign="top">grammar_description<br>
              </td>
              <td valign="top">Preposition-b | Noun - feminine singular<br>
              </td>
              <td valign="top">The grammar code, unabbreviated<br>
              </td>
            </tr>
            <tr>
              <td valign="top">strongs_number<br>
              </td>
              <td valign="top">7225<br>
              </td>
              <td valign="top">The Strongs number of the basic form of
                this word<br>
              </td>
            </tr>
            <tr>
              <td valign="top">translation<br>
              </td>
              <td valign="top">In the beginning<br>
              </td>
              <td valign="top">The English text that appears in the BSB<br>
              </td>
            </tr>
            <tr>
              <td valign="top">gloss<br>
              </td>
              <td valign="top">1) first, beginning, best, chief<br>
                1a) beginning<br>
                1b) first<br>
                1c) chief<br>
                1d) choice part<br>
              </td>
              <td valign="top">A definition from the Brown-Driver-Briggs
                Hebrew Lexicon, or Thayer's Greek Definitions, as
                appropriate<br>
              </td>
            </tr>
          </tbody>
        </table>
        <p>Looking at the OSIS 2.1.1 User's Manual (and sniffing around
          in the KJVA module), to represent this information in OSIS I
          should use the <w> element, which supports the following
          attributes (copy/pasted from the Manual):</p>
        <ul>
          <li><b>gloss</b> Record comments on a particular word or its
            usage.</li>
          <li><b>lemma</b> Use to record the base form of a word.</li>
          <li><b>morph</b> Use to record grammatical information for a
            word.</li>
          <li><b>POS</b> Use to record the function of a word according
            to a particular view of the language's syntax.</li>
          <li><b>src</b> Use to record origin of the word.</li>
          <li><b>xlit</b> Use to record a transliteration of a word.</li>
        </ul>
        <p>The first problem is that sometimes multiple source words are
          translated into a single English span, and it's not made clear
          how to express that in these attributes. From poking around in
          the KJVA module, I get the impression these are supposed to be
          space-delimited lists. Is that correct?</p>
        <p>Assuming that's the case, here's my guesses at how to fill
          out these attributes for each span:</p>
        <ul>
          <li><b>gloss</b> can't be done, because each gloss contains
            spaces which means the displaying app can't figure out which
            part of the gloss goes with which word</li>
          <li><b>lemma</b> is where Strongs numbers go; Greek Strongs
            numbers should be prefixed with "G" and Hebrew/Aramaic ones
            with "H0"</li>
          <li><b>morph</b> might be used for the "grammar code" content,
            but I would probably need to figure out how to translate
            them into Robinson codes first, since that seems to be the
            only morphological dictionary module in the Crosswire
            repositories</li>
          <li><b>POS</b> is unclear to me, I don't see how it differs
            from the "morph" attribute</li>
          <li><b>src</b> is also unclear: is this for the word order
            (he_ordinal or el_ordinal, possibly numbered from the
            beginning of the verse rather than the beginning of the
            entire Bible) or the actual choice of source text
            (Nestle1904, TR, NA, SBL, etc.)?</li>
          <li><b>xlit</b> clearly comes from the "transliteration" field</li>
        </ul>
        <p>One thing that's clearly missing is where to put the source
          word. How does that work?<br>
        </p>
        <p>Is there other way to represent information that doesn't fit
          into the <w> element? I'd like this module to be as
          useful as possible, so I'm hesitant to toss out any
          information that can be usefully represented.</p>
        <p>Is there anything else I've missed or misunderstood?</p>
        <p><br>
        </p>
        <p>Timothy.<br>
        </p>
        <br>
        <fieldset class="moz-mime-attachment-header"></fieldset>
        <pre class="moz-quote-pre" wrap="">_______________________________________________
sword-devel mailing list: <a
        class="moz-txt-link-abbreviated moz-txt-link-freetext"
        href="mailto:sword-devel@crosswire.org" moz-do-not-send="true">sword-devel@crosswire.org</a>
<a class="moz-txt-link-freetext"
        href="http://crosswire.org/mailman/listinfo/sword-devel"
        moz-do-not-send="true">http://crosswire.org/mailman/listinfo/sword-devel</a>
Instructions to unsubscribe/change your settings at above page
</pre>
      </blockquote>
      <br>
    </blockquote>
  </body>
</html>