<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <font face="FreeSerif">I have a <a moz-do-not-send="true"
        href="https://github.com/crosswire/xiphos/issues/1107">Xiphos
        bug</a> in which the facility to take a Strong's dict entry and
      search the Bible module for all its occurrences sometimes works
      and sometimes doesn't.<br>
      <br>
      The mechanism is straightforward: Take the key from the dict pane,
      note whether this is Heb or Grk, construct e.g. lemma:Hxxxxx,
      stuff that into the sidebar search, and execute the search. No
      sweat.<br>
      <br>
      The problem is with Heb refs. Because of the ancient habit that
      Heb Strong's refs are given a leading zero prefix (e.g. "07225")
      as a weak discriminant from Grk refs in the same number space, I
      actually handle this case explicitly. Strong's module keys are
      fixed, 5-digit strings, and the dict pane always shows this. When
      that key is taken to build the lemma search, I specifically
      include the last leading zero in the Heb case.<br>
      <br>
      This works in KJV and ESV where we find "<w
      savlm="strong:H07225">In the beginning</w>".<br>
      This fails in NASB and OSHB where we find "<w
      savlm="strong:H7225">In the beginning</w>".<br>
      Note H07225 vs H7225.<br>
      <br>
      The question revolves around what a Strong's ref ontologically is.
      Seriously, what is it?<br>
      Is it a number, written naturally with minimal required digits,
      stored for convenience in a character string?<br>
      Or is it a specific and fixed string of characters?<br>
      <br>
      In terms of module keys, it's a string of characters.<br>
      In terms of Bible markup, well... Opinion varies. As we see in
      this case, some Bibles encode as a natural number, occupying the
      normal (minimal) digits needed, but others take the fixed string
      approach so as to include a leading zero, but note that it's not a
      full, fixed, 5-digit string to match a dict key; it's just one
      leading zero, no matter how many natural digits follow. KJV
      encodes the 1st Heb ref as "01". Not "1" (natural number) and not
      "00001" (module key); just "01".<br>
      <br>
      Result is that, by constructing zero-prefixed searches, such
      searches always fail in Bibles using natural/minimal digits
      because there's never a zero-prefixed match.<br>
      <br>
      This is different from Grk refs, which are stored in dict modules
      the same as Heb dict keys -- fixed 5-digit -- but are always
      marked up as natural numbers using minimal digits.<br>
      <br>
      As matters stand, I have no <i>a priori</i> means by which to
      determine what to expect in a Bible's Heb Strong's markup. The
      dict pane's key from which to construct the search is fixed 5
      digits. That is at first trimmed to natural, minimal digits...and
      then the trouble starts because I don't have anything like a
      module conf directive to tell me whether the module uses
      zero-prefixed Heb refs or not. I'm also not aware that we have any
      standard for such markup to which I can point to say, "NASB's
      markup is wrong because it lacks zero-prefixing on Heb refs."<br>
      <br>
      Help.<br>
    </font>
  </body>
</html>