<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Nov 21, 2010, at 5:47 AM, Chris Burrell wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Thanks Steven. However, I believe some Books only have strong numbers in one testament? (perhaps I'm wrong here). </blockquote><div><br></div>Sort of right. The Greek NTs only have them in the NT, if at all. All others either have it in both or in none at all. At least for the CrossWire modules. Can't vouch for other modules.</div><div><br><blockquote type="cite">And therefore, a user interface would only be able to provide an interlinear on the New Testament or the Old Testament. Same for morphology. </blockquote>Ditto. But regarding morphology, we don't have an OT morphology (like we have Robinson's for the NT), so from a practical perspective, we don't have it for any OT.</div><div><br><blockquote type="cite">I believe a number of Books have the information in the New Testament, but not in the Old Testament?<div>
<br></div><div>I take it from your comments before, DM, on another thread, that it's probably unlikely to be able to determine this very easily? unless one assumes that if a word is tagged with morphological information in the OT, then the whole of the OT is tagged. I assume that's not an assumption I can make...</div>
<div><br></div><div>DM, should I create an issue in JIRA and attach some of the interlinear work I've been doing - it's not quite finished yet, but should be shortly. &nbsp;</div></blockquote><div><br></div>Sure. It's fair to create a JIRA issue at any time. BTW, I've now got all JIRA for JSword and BibleDesktop going here.</div><div><br><blockquote type="cite"><div>I'm not particularly happy with my storing/indexing mechanism, but can't think of a more efficient way at the moment. All it would be really, is an XSLT, with a few java objects that do the lookups.</div></blockquote><div><br></div>That's OK. Jira is a good place to iterate patches. Don't bother deleting the old but just upload the new one with the same name. A convention on Lucene, of which I have contributed, is to suffix the file with .patch. They also name the files with the jira issue, e.g. JS-104.patch.</div><div><br><blockquote type="cite"><div>I was wondering, it would be nice to have something like Crucible. &nbsp;I'm would be very happy to set it up for Crosswire. I've used it at work, and it is really very good.&nbsp;<a href="http://www.atlassian.com/software/crucible/tour/">http://www.atlassian.com/software/crucible/tour/</a>&nbsp;I think that would make viewing patches, and so on particularly good :)</div></blockquote><div><br></div>As long as it is free or that we have the license freely. I'm the JIRA admin, so I probably need to do the install. Perhaps, you can walk me through it, if needed. I can't get to it today. Not sure when I'll next have some free time. So bug me again later, if I don't get to it.</div><div><br></div><div><br><blockquote type="cite">
<div><br>Chris<br><br><div class="gmail_quote">On 15 November 2010 13:16, Mullins, Steven (DMME) <span dir="ltr">&lt;<a href="mailto:Steven.Mullins@dmme.virginia.gov">Steven.Mullins@dmme.virginia.gov</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">



<div>
<div dir="ltr" align="left"><span><font face="Arial" color="#0000ff" size="2">Chris,</font></span></div>
<div dir="ltr" align="left"><span><font face="Arial" color="#0000ff" size="2"></font></span>&nbsp;</div>
<div dir="ltr" align="left"><span><font face="Arial" color="#0000ff" size="2">Some have lexical forms instead of Stongs numbers.&nbsp; 
That is, they give a "dictonary" form for the inflected word in the text.&nbsp; 
These usually also give morphology information too.&nbsp; </font></span></div>
<div dir="ltr" align="left"><span><font face="Arial" color="#0000ff" size="2"></font></span>&nbsp;</div>
<div dir="ltr" align="left"><span><font face="Arial" color="#0000ff" size="2">Steve</font></span></div><br>
<div lang="en-us" dir="ltr" align="left">
<hr>
<font face="Tahoma" size="2"><b>From:</b> Chris Burrell [mailto:<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>] 
<br><b>Sent:</b> Saturday, November 13, 2010 4:14 AM<div class="im"><br><b>To:</b> J-Sword 
Developers Mailing List<br></div><b>Subject:</b> Re: [jsword-devel] XSLT and 
enrichment of OSIS Text...<br></font><br></div><div><div></div><div class="h5">
<div></div>Quick question, does anyone know of a way at the moment to determine 
whether Strongs/Morphology &nbsp;information is available in a "Book", but on a 
testament level. Am I correct in thinking some books will have Strongs only in 
the New Testament? Or others might have morphology information only in the New 
Testament?
<div><br></div>
<div>That would be useful for telling the user for the interlinear options are 
for any given passage he is looking at...</div>
<div><br></div>
<div>Chris</div>
<div><br><br>
<div class="gmail_quote">On 9 November 2010 22:29, Chris Burrell <span dir="ltr">&lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="padding-left:1ex;margin:0px 0px 0px 0.8ex;border-left:#ccc 1px solid">I 
  think I fixed the verse issue by having empty spans to make up for the height 
  (bit of a hack). Another way might be to set the height of the verse to be 1em 
  x the number of displayed lines. I think that helped to an extent in the past.
  <div><br></div>
  <div>One interesting thing, with KJV at least is the punctuation and 
  whitespace. (I've now updated this with some approximation of what I mean <a href="http://crosswire.org/~chrisburrell" target="_blank">http://crosswire.org/~chrisburrell</a> - click the config button 
  if you want to show in stacks and you'll have to select kjv and the passage 
  again! ). You can see straight away there's a slight issue. And that is 
  because the punctuation isn't included in the W elements. It's some text() 
  that has for direct parent a verse. Makes it quite hard to do properly in 
  XSLT. Ideally I reckon, we should try and parse it into the previous child. 
  How, not quite sure yet... Also look at Romans 1:4, you can see at least 4 
  spaces. That's because there are 4 strongs that have been tagged, but don't 
  have any associated words. The question really, is whether to show them at 
  all!? They don't tell us much really, and almost suggest that these words 
  didn't make it in to the translation... So I'd be intrigued to see if you can 
  amend your interlinear and still have the punctuation and spaces display 
  correctly AND have the Ws spaced correctly when there is no punctuation.</div>
  <div><br></div>
  <div>As for the bug, this can be discussed on the other thread. This the 
  singleton issue that I believe is in the driver reading the passage, which 
  means passages get mixed up. For me, it's definitely a concurrency issue, 
  since my left and right panes, when set to the same book, loaded up and mixed 
  up the passages between themselves.&nbsp;</div>
  <div><br></div>
  <div>As for the parameter, I mean one that gets set in the Transformer before 
  the xslt is processed. Let me share some real code.</div>
  <div><br></div>
  <div>Top of the stylesheet before anything is declared:</div>
  <div>
  <div><br></div>
  <div>&lt;xsl:param name="InterlinearProvider" /&gt; &lt;!-- passed in as a 
  java object from code --&gt;</div></div>
  <div>&lt;xsl:variable name="interlinearProviderService" 
  select="jsword:com.tyndalehouse.step.core.xsl.IPSample.new()" /&gt; &lt;!-- 
  creating instance in spreadsheet to show the problem --&gt;</div>
  <div><br></div>
  <div>
  <div>&lt;!-- this works and I can thereby confirm that InterlinearProvider is 
  an object of the right type --&gt;</div>
  <div>&lt;xsl:variable name="interlinearWord" 
  select="jsword:getWord($interlinearProviderService, 
  $InterlinearProvider)"/&gt;--&gt;</div>
  <div>&lt;xsl:value-of select="$interlinearWord"/&gt;&nbsp;&nbsp; &nbsp;</div>
  <div><br></div>
  <div>&lt;!-- this doesn't work --&gt;</div>
  <div>&lt;xsl:variable name="interlinearWord" 
  select="jsword:getWord($InterlinearProvider, $InterlinearProvider)"/&gt;</div>
  <div>&lt;xsl:value-of select="$interlinearWord"/&gt;</div>
  <div>&nbsp;&nbsp; &nbsp;</div>
  <div>The function signature for the purpose of the test was getWord(Object 
  o);</div>
  <div><br></div>
  <div>But I've tried with getWord() (calling getWord($InterlinearProvider) 
  doesn't work, calling getWord($interlinearProviderService) does work. I've 
  also tried getWord(String,String), etc.</div>
  <div><br></div>
  <div>So it seems it works for things that initialised in the XSLT 
  (interlinearProviderService), but not for those outside, even though I can see 
  that the stylesheet thinks of $InterlinearProvider as a java object, cos I can 
  pass it in and have look at its properties in debug mode.</div>
  <div><br></div>
  <div>I've also tried copy the xsl:param to xsl:variable first and calling 
  getWord($copiedVariable) but that didn't work either.</div>
  <div><br></div>
  <div>Does that make more sense?</div></div>
  <div>Chris</div><font color="#888888">
  <div><br></div><br></font>
  <div class="gmail_quote">
  <div>
  <div></div>
  <div>On 9 November 2010 20:56, DM Smith <span dir="ltr">&lt;<a href="mailto:dmsmith@crosswire.org" target="_blank">dmsmith@crosswire.org</a>&gt;</span> wrote:<br></div></div>
  <blockquote class="gmail_quote" style="padding-left:1ex;margin:0px 0px 0px 0.8ex;border-left:#ccc 1px solid">
    <div>
    <div></div>
    <div>
    <div text="#000000" bgcolor="#ffffff">
    <div>On 11/09/2010 11:19 AM, Chris Burrell wrote: 
    <blockquote type="cite">Trent/All 
      <div><br></div>
      <div>I have successfully managed to call instance methods on variables set 
      and initialised in the XSL. However, as soon as I change to a parameter 
      that is passed in (using the same format jsword:getWord($interlinearObj, 
      arg1, arg2) ) my stylesheet refuses to compile at runtime. I've also tried 
      copying the "xsl:parameter" into the xsl:variable, but that doesn't work 
      either.</div></blockquote><br></div>I'm not sure if you mean a parameter to 
    the stylesheet. If so in the top of BD's xslt it copies the values into 
    variables and uses them.<br><br>If you mean a parameter to a template, I'm 
    not sure what the problem would be. You might need to use some quoting 
    magic. Can't remember off the top of my head how it is done. Maybe 
    ${xyz}???<br><br>If you mean that $interlinearObj is not a string or a 
    number, then that is likely to be your problem.
    <div>
    <div></div>
    <div><br><br>
    <blockquote type="cite">
      <div><br></div>
      <div>However I am able to pass the parameter as an instance method 
      parameter (so I could pass it to X that would instantiated during the XSL 
      transformation, and then invoke the method on it?). Or I could pass in 
      parameters to initialise it in the XSL, as opposed to passing in the 
      already-instantiated object into the XSL and trying to invoke a method on 
      that...</div>
      <div><br></div>
      <div>So no biggies... But would have been nicer to provide an object that 
      the XSL just needs to use, rather than set up as well.</div>
      <div>Any ideas?</div>
      <div><br></div>
      <div>Chris</div>
      <div><br><br>
      <div class="gmail_quote">On 7 November 2010 00:04, Chris Burrell <span dir="ltr">&lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt;</span> wrote:<br>
      <blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">On 
        this last note, I believe we have concurrency issues. I have a two 
        column page, displaying one passage each. On load of the page they load 
        up a passage each, but then this once, the passage on the right (only 
        verse 1) has gone to the left (which was requesting just one verse but 
        from a different passage: 
        <div><br></div>
        <div>left pane: requested Acts 2:10, got Romans 1:1</div>
        <div>right pane: corrupt XML in verse 1, verse 2 seems to be Romans 
        1:2-following</div>
        <div><br></div>
        <div>Anyone else come across those issues?</div>
        <div>Chris</div>
        <div>
        <div>
        <div><br>
        <div class="gmail_quote">On 6 November 2010 20:53, Chris Burrell <span dir="ltr">&lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt;</span> wrote:<br>
        <blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">Another 
          question too. It seems sometimes, both in bible desktop and my current 
          application, the html rendered is broken? 
          <div><br></div>
          <div>Any ideas why that might be?</div>
          <div><br></div>
          <div>For example, I get:</div>
          <div>"&lt;div class="passageText ui-widget"&gt;&lt;div&gt;&lt;h2 
          class="heading"&gt;Acts 2:10&lt;/h2&gt;&lt;span 
          class="verse"&gt;&lt;span class="w"&gt;&lt;sup 
          class="verseNumber"&gt;10&lt;/sup&gt;&lt;/span&gt;&lt;span 
          class="w"<b>&gt;&lt;span class="text"&gt;emma="strong:G1909" 
          morph="robinson:PREP</b>" src="4"&amp;gt;upon every soul of man that 
          doeth evil, of the Jew first, and also of the 
          Gentile;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; 
          &lt;/div&gt;&lt;/div&gt;"</div>
          <div><br></div>
          <div>The above in bold shows that it didn't get XSLTed properly.</div>
          <div><br></div>
          <div>Instead of "&lt;div class="passageText 
          ui-widget"&gt;&lt;div&gt;&lt;h2 class="heading"&gt;Acts 
          2:10&lt;/h2&gt;&lt;span class="verse"&gt;&lt;sup 
          class="verseNumber"&gt;10&lt;/sup&gt;&lt;span class="w"&gt;&lt;span 
          class="text"&gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;span 
          class="w"&gt;&lt;span class="text"&gt;&amp;nbsp;&lt;/span&gt; 
          &lt;/span&gt;&lt;span class="w"&gt;&lt;span 
          class="text"&gt;Phrygia&lt;/span&gt;&lt;/span&gt;, &lt;span 
          class="w"&gt;&lt;span class="text"&gt;&amp;nbsp;&lt;/span&gt; 
          &lt;/span&gt;&lt;span class="w"&gt;&lt;span 
          class="text"&gt;and&lt;/span&gt;&lt;/span&gt; &lt;span 
          class="w"&gt;&lt;span 
          class="text"&gt;Pamphylia&lt;/span&gt;&lt;/span&gt;, &lt;span 
          class="w"&gt;&lt;span class="text"&gt;in 
          Egypt&lt;/span&gt;&lt;/span&gt;, &lt;span class="w"&gt;&lt;span 
          class="text"&gt;and&lt;/span&gt;&lt;/span&gt; &lt;span 
          class="w"&gt;&lt;span class="text"&gt;in the 
          parts&lt;/span&gt;&lt;/span&gt; &lt;span class="w"&gt;&lt;span 
          class="text"&gt;of Libya&lt;/span&gt;&lt;/span&gt; &lt;span 
          class="w"&gt;&lt;span class="text"&gt;about&lt;/span&gt;&lt;/span&gt; 
          &lt;span class="w"&gt;&lt;span 
          class="text"&gt;Cyrene&lt;/span&gt;&lt;/span&gt;, &lt;span 
          class="w"&gt;&lt;span class="text"&gt;and&lt;/span&gt;&lt;/span&gt; 
          &lt;span class="w"&gt;&lt;span 
          class="text"&gt;strangers&lt;/span&gt;&lt;/span&gt; &lt;span 
          class="w"&gt;&lt;span class="text"&gt;of 
          Rome&lt;/span&gt;&lt;/span&gt;, &lt;span class="w"&gt;&lt;span 
          class="text"&gt;Jews&lt;/span&gt;&lt;/span&gt; &lt;span 
          class="w"&gt;&lt;span class="text"&gt;&amp;nbsp;&lt;/span&gt; 
          &lt;/span&gt;&lt;span class="w"&gt;&lt;span 
          class="text"&gt;and&lt;/span&gt;&lt;/span&gt; &lt;span 
          class="w"&gt;&lt;span 
          class="text"&gt;proselytes&lt;/span&gt;&lt;/span&gt;,&lt;/span&gt; 
          &lt;/div&gt;&lt;/div&gt;"</div>
          <div><br></div>
          <div>So somehow it lost a whole load on the way out of the XSLT? The 
          only difference is that the first one is on startup of the server, the 
          second is with a refresh in the browser. Perhaps something hasn't 
          loaded up correctly/entirely?</div>
          <div><br></div><font color="#888888">
          <div>Chris</div></font>
          <div>
          <div>
          <div><br>
          <div class="gmail_quote">On 5 November 2010 23:10, Chris Burrell <span dir="ltr">&lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt;</span> wrote:<br>
          <blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">Thanks 
            DM. So I found this page (again)!&nbsp;<a href="http://www.crosswire.org/%7Edmsmith/interlinear/" target="_blank">http://www.crosswire.org/~dmsmith/interlinear/</a> 
            <div><br></div>
            <div>And managed to replicate (and solve?) the issues I found 
            originally when I looked at it before:</div>
            <div><br></div>
            <div>1st When lines in the interlinear only have 1 line (i.e. no 
            2nd/3rd or 4th line). As a result, when the text wraps, it floats 
            below the first line. As a hack (although on could argue that there 
            is an empty spot there, rather than nothing), I think we can put a 
            &lt;span&gt;&amp;nbsp;&lt;/span&gt; or we could use a height maybe? 
            (not quite so good, unless we specify in ems and exs). And the 
            second thing is that within a particular word stack, the words might 
            wrap. I believe this particular issue is only visible in IE. For IE 
            8, the fix is to put a whitespace: nowrap CSS directive. Not sure if 
            that helps on IE6 and 7 though? Spec says it should be supported on 
            both browsers.</div>
            <div><br></div>
            <div>And yup, I'm targetting web environments, and also web mobile 
            browsers.&nbsp;</div>
            <div>Chris</div>
            <div>
            <div>
            <div><br><br>
            <div class="gmail_quote">On 5 November 2010 20:09, DM Smith <span dir="ltr">&lt;<a href="mailto:dmsmith@crosswire.org" target="_blank">dmsmith@crosswire.org</a>&gt;</span> wrote:<br>
            <blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">
              <div text="#000000" bgcolor="#ffffff">I'm heading out for the 
              weekend. In a few minutes. <br>It'll probably be Monday evening 
              when I send it.<br><br>The solution uses spans with their display 
              set to block.<br><font color="#888888"><br>-- DM</font> 
              <div>
              <div><br><br>On 11/05/2010 03:55 PM, Chris Burrell wrote: 
              <blockquote type="cite">DM, you said you might have an 
                intearlinear model that worked? I had another look to see how I 
                did mine previously, and found that in fact I used tables. I 
                think I struggled for quite a while to get a model working 
                across browsers using DIVs, but none of them seemed to wrap 
                properly at the end of the line. &nbsp;But unfortunately table 
                layouts are slow and therefore it would be better to have 
                divs.&nbsp; 
                <div><br></div>
                <div>Would you be able to let me have your samples?</div>
                <div>Chris<br><br>
                <div class="gmail_quote">On 5 November 2010 19:21, Chris Burrell 
                <span dir="ltr">&lt;<a href="mailto:chris@burrell.me.uk" target="_blank">chris@burrell.me.uk</a>&gt;</span> wrote:<br>
                <blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">What's 
                  GNT? Greek New Testament? I think we can do more than that 
                  too. If other Bible versions have strong numbers and/or 
                  morphology tags, then we can put those in parallel, and end up 
                  having French with English "subtitles", or English with 
                  English, as well as English with Greek, etc. 
                  <div><br></div>
                  <div>So I've had a look at the framework so far and it seems 
                  fairly easy not to use Bible Desktop components and have a 
                  good XSLT transformation. So all we would need to add is some 
                  helpers that users can easily integrate into their XSLTs. It 
                  would nice to have some sample XSLs for people to use. So for 
                  example, I've had to strip out all the CSS and font tags from 
                  the Bible Desktop one so as to produce a good XHTML compliant 
                  one.&nbsp;</div>
                  <div><br></div>
                  <div>Say we give the XSLT a InterlinearProvider initialised 
                  with its version and passage, as it parses the strong/morph 
                  option we can then call get($provider, @strong, @morph), which 
                  would in turn optionally return the correct words (or best 
                  word since sometimes you may have multiple options in modules 
                  tagged with strong numbers only. In fact it would be better to 
                  have something like get($provider, osis_verse_id, @strong, 
                  @morph). Since then, if we don't have the morphology of the 
                  word, at least we can limit the lookups to those words that 
                  are tagged in a particular verse (that assumes that 
                  versification is comparable between versions).</div>
                  <div><br></div>
                  <div>We'll want to add options to have tagged information 
                  displayed on the side of a word/phrase&nbsp;or below a 
                  word/phrase. At the moment the XSLT displays morph and strong 
                  tags next to the text. I'll add some transformations to have 
                  it on separate lines. Then we can reuse the same 
                  transformations to line up text beneath it.&nbsp;</div>
                  <div><br></div>
                  <div>DM, I had a look at&nbsp;<span style="font-family:arial,sans-serif;border-collapse:collapse">"flying 
                  saucer" , but didn't quite understand where it comes in? Would 
                  the idea be instead of the XSLT? And have it transform to 
                  different UIs?</span></div>
                  <div><br></div><font color="#888888">
                  <div>Chris</div></font>
                  <div>
                  <div>
                  <div><br><br>
                  <div class="gmail_quote">On 5 November 2010 03:51, Tonny Kohar 
                  <span dir="ltr">&lt;<a href="mailto:tonny.kohar@gmail.com" target="_blank">tonny.kohar@gmail.com</a>&gt;</span> wrote:<br>
                  <blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">Hi,<br>
                    <div><br>On Thu, Nov 4, 2010 at 11:30 PM, DM Smith &lt;<a href="mailto:dmsmith@crosswire.org" target="_blank">dmsmith@crosswire.org</a>&gt; wrote:<br>&gt; 
                    Much of the transformations is done in BibleDesktop. 
                    Refactoring these and<br>&gt; putting it into JSword and/or 
                    common would be good.<br>&gt;<br><br></div>+1<br>Yes it 
                    would be nice to have this under JSword instead of 
                    BIbleDesktop<br><br>Sincerely<br>Tonny 
                  Kohar<br></blockquote></div></div></div></div></blockquote></div></div></blockquote></div></div></div></blockquote></div></div></div></div></blockquote></div></div></div></div></blockquote></div></div></div>
</div></blockquote></div></div></blockquote><br></div></div></div><br></div></div>
    <div>_______________________________________________<br>jsword-devel 
    mailing list<br><a href="mailto:jsword-devel@crosswire.org" target="_blank">jsword-devel@crosswire.org</a><br><a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
<br></div></blockquote></div><br></blockquote></div><br></div></div></div></div>
</blockquote></div><br></div>
_______________________________________________<br>jsword-devel mailing list<br><a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>http://www.crosswire.org/mailman/listinfo/jsword-devel<br></blockquote></div><br></body></html>