[jsword-devel] Strongs Dictionary in beta

DM Smith dmsmith at crosswire.org
Sun Feb 28 15:29:28 MST 2010


Looks good. I'll add it.

On 02/28/2010 05:27 PM, trent.jsword at trentonadams.ca wrote:
> ----- "trent jsword"<trent.jsword at trentonadams.ca>  wrote:
>
>    
>> From: "trent jsword"<trent.jsword at trentonadams.ca>
>> To: "Trenton D. Adams"<trent.jsword at trentonadams.ca>, "J-Sword Developers Mailing List"<jsword-devel at crosswire.org>
>> Cc: "DM Smith"<dmsmith at crosswire.org>
>> Sent: Sunday, February 28, 2010 11:49:14 AM GMT -06:00 US/Canada Central
>> Subject: Re: [jsword-devel] Strongs Dictionary in beta
>>
>>      
>>>> Your email didn't finish your thought. One of the ideas about a
>>>> dictionary is that the common "See also" references should be
>>>> hyperlinked. The module should be marked up for this. JSword will
>>>>          
>>> need
>>>        
>>>> some work to handle it.
>>>>          
>>> Yes, that's what I'm referring to.  The data is there, it's just
>>>        
>> not
>>      
>>> used yet.  I think it would be just a modification to the
>>>        
>> simple.xsl
>>      
>>> (I think).
>>>        
>> Okay, I'll have to find the XML of the greek/hebrew dictionaries in
>> the main repo.  The following works with the ones in the beta repo,
>> but not the main ones.  I'll see if I can come up with something that
>> works for both.
>>
>>    <xsl:template match="ref">
>>      <xsl:if test="starts-with(@target, 'Strong:')">
>>        <xsl:variable name="sref" select="substring-after(@target,
>> 'Strong:')"/>
>>        <xsl:variable name="sproto">
>>          <xsl:choose>
>>            <xsl:when test="starts-with($sref, 'H')">hdef:</xsl:when>
>>            <xsl:otherwise>gdef:</xsl:otherwise>
>>          </xsl:choose>
>>        </xsl:variable>
>>        <a>
>>          <xsl:attribute name="href">
>>            <xsl:value-of select="$sproto"/><xsl:value-of
>> select="$sref"/>
>>          </xsl:attribute>
>>          <xsl:value-of select="$sref"/>
>>        </a>
>>      </xsl:if>
>>    </xsl:template>
>>
>>      
> Okay, this will work with the strongs xml at http://www.crosswire.org/wiki/TEI_Dictionaries in the sample TEI section, as well as the one in the repository.  I could reduce this, if someone told me that the sample document at the above URL was never going to be used.  Is it just for reference purposes only?
>
> Also, this will not work for the two hebrew/greek modules that are in the production repository, because they don't markup the references.  They only have text that says "see HEBREW for XXXX", which is totally parse able.  I'm assuming that the one in beta is just a parsed version of that, and that was the purpose of making it, but I'm not sure.  I'll discuss that on the sword list.
>
> DM, is this worth including in jsword?  It seems to work well with the beta module anyhow.
>
>    <xsl:template match="ref">
>      <xsl:choose>
>        <!-- Some strong modules use target attribute-->
>        <xsl:when test="starts-with(@target, 'Strong:')">
>          <xsl:variable name="sref" select="substring-after(@target, 'Strong:')"/>
>          <a>
>            <xsl:attribute name="href">
>              <xsl:call-template name="strong-protocol">
>                <xsl:with-param name="text" select="$sref"/>
>              </xsl:call-template>
>              <xsl:value-of select="$sref"/>
>            </xsl:attribute>
>            <xsl:value-of select="$sref"/>
>          </a>
>        </xsl:when>
>        <xsl:otherwise>
>          <!-- Some strong modules use ref with just strongs in a text node-->
>          <a>
>            <xsl:attribute name="href">
>              <xsl:call-template name="strong-protocol">
>                <xsl:with-param name="text" select="."/>
>              </xsl:call-template>
>              <xsl:value-of select="."/>
>            </xsl:attribute>
>            <xsl:value-of select="."/>
>          </a>
>        </xsl:otherwise>
>      </xsl:choose>
>    </xsl:template>
>
>    <xsl:template name="strong-protocol">
>      <xsl:param name="text"/>
>      <xsl:choose>
>        <xsl:when test="starts-with($text, 'H')">
>          <xsl:value-of select="$hebrew.def.protocol"/>
>        </xsl:when>
>        <xsl:otherwise>
>          <xsl:value-of select="$greek.def.protocol"/>
>        </xsl:otherwise>
>      </xsl:choose>
>    </xsl:template>
>    




More information about the jsword-devel mailing list