<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    I'm very excited to have this module!<br>
    I agree with you that the module should have as much information as
    possible. But not all of it can be read by the Sword interface. Some
    may not be useful. <br>
    I've also had trouble with the "lemma:Mygreekword" code, in xiphos
    it's not well displayed. If we want it well displayed we need to add
    a module reference, like TR or Nestle (see KJV):
    "lemma.Nestle:Mygreekword"<br>
    You can also look at the LXX module, which has quite a lot of
    information in its code.<br>
    The number is useful for displaying strong numbers in order (if I
    remember correctly) in Bishop (Android).<br>
    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>
    Have you also seen Karl's script for building the module, in the
    BSB-draft module folder?<br>
    <br>
    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>
    <br>
    Good work!<br>
    <br>
    <div class="moz-cite-prefix">Le 30/09/2023 à 11:54, Timothy Allen a
      écrit :<br>
    </div>
    <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" href="mailto:sword-devel@crosswire.org">sword-devel@crosswire.org</a>
<a class="moz-txt-link-freetext" href="http://crosswire.org/mailman/listinfo/sword-devel">http://crosswire.org/mailman/listinfo/sword-devel</a>
Instructions to unsubscribe/change your settings at above page
</pre>
    </blockquote>
    <br>
  </body>
</html>