[sword-devel] Importan Issue: Crossreferences

Joachim Ansorg sword-devel@crosswire.org
Tue, 29 Aug 2000 14:46:17 +0000


Hi Troy!

Very good ideas you mentioned here!
A common formating is very good, this would give us a common fornat we can 
work with (all references have the same format, we can decide how words of 
Jesus are displayed, how footnotes are formatted, how strongs are formatted 
etc.).
I really would prefer this!

This gives us much more power at frontend side!
We have to find a easy to use, easy to convert format for SwordCommon! Does 
somebody have some ideas for this?

If somebody could implement it I'd be very happy ;-)

--Joachim

> You might not like this response at first, but spend a minute or two and
> think about it:
>
> 	I've left this up to the frontend to decide how Bible references are
> formatted.
>
> Think about this.  We have many different markup implementations for
> texts.  These are then run through a filter that knows about the markup
> language, and also knows about the frontend's desired markup.  Thus we
> have GBFHTML, etc., filters.  What's the difference between assuming the
> filter knows how the frontend wishes to display the module, and assuming
> the filter know how the frontend wishes the get reference marks?
>
> Ultimately, there is a design proposal in the API ref on the website
> that uses an intermediate markup language to which all texts would be
> converted, then from this common markup, we could render to the
> frontend.  I believe this 2 phase conversion allows much more modular
> and reusable filters and will solve this very issue.  The API will be
> responsible for the first phase (getting the module text from whatever
> format into the common markup), and the frontend writer will be
> responsible for a filter from this common markup to what he or she wants
> to render.  This would also cut down on the number of filters
> exponentially, as there would be no need for a 'From every, to every'
> set: GBFHTML, GBFRTF, ThMLHTML, ThMLRTF, PlainHTML, PlainRTF, etc.,
> etc.  But instead: GBFCOMMON, ThMLCOMMON, PlainCOMMON, COMMONHTML,
> COMMONRTF.
>
> OptionsFilters could also be radically reduced.  Instead of trying to
> provide GBFFootnotes, redletter, strongs, and everything else, for each
> format to each format, instead, the OptionsFilters would be written
> against the common markup and would work for everything.
>
> This will, of course, impose more overhead, but only for rendering,
> which, I don't believe, we are having any speed issues at the moment.
>
>
> 	Thoughts?
>
> 		-Troy.
>
> Joachim Ansorg wrote:
> > Am Mon, 28 Aug 2000 schrieben Sie:
> > > Joachim Ansorg wrote:
> > > > ...
> > > > IMHO this is a very important issue for SWORD and frontends like
> > > > BibleTime. I have much requests from users of BibleTime that we
> > > > should implement support for bible crossreferences.
> > > > Basically we have it, but SWORD and BibleTime are missing two
> > > > important things:
> > > >
> > > >         -A standard in modules how crossreferences should be
> > > > formatted. At the moment every module uses it's one reference formats
> > > > (GBF, RAW etc.). This is the most important issue. Otherwise we would
> > > > have to add time wasting regexp mattching things etc. and every
> > > > frontend has to implement it's own solutions. It's not good not to
> > > > have a standard for crossreferences.
> > > >
> > > >         -A standard how the crossreferences should be formatted as
> > > > HTML (generated by the GBFHTML and PLAINGHTML filters) and how they
> > > > should look like in PLAIN formatted text etc.
> > > > In BibleTime we use as a quick hack the following syntax (as an
> > > > example):
> > > >
> > > > <A HREF="ref://Genesis 1:1">Reference to Genesis 1:1</A>
> > > >
> > > > Is there somewhere a crossreference standard on the internet? If yes,
> > > > should we use it?
> > >
> > > Use ThML - it's all worked out for you.
> > >
> > > Use ThML.  Use ThML.  Use ThML.  Use ThML.  Use ThML.  Use ThML.  This
> > > is not a recording.
> > >
> > > :-)
> >
> > Sure, ThML is possible. But we have a HTML widget in BibleTime, and
> > somehow the filters like ThML2HTML have to work.
> > And only a few modules are using ThML.
> > Other solutions?
> >
> > --Joachim