Tuesday, 27 October 2009

Re: [Tyndale STEP - Programming] History widget

What I meant is that columns like the certainty column  with values such as 45/0, etc. might be difficult to query later on, so it would be best to transform that internally into something that can be queries and indexed.

We may want to add a column, where only a start date is populate to indicate that this is an event at a point in time. We'll probably want to transform the scripture reference into numerical form to store it into fast indexable and retrievable format...

Also, for the references, we might want to store that in a different table. For eg. 1Kgs.2.13-4.34;2Chr.1 refers to the event "Solomon establishes his kingdom, granted wisdom". But if you're looking at 2 Chr 1:1-5 then I think it might be hard to work out whether that event is part of the passage or not. (I'm assuming at some point we'd like to tie the timeline in with what the user is currently reading).

Same problem, if the user is looking at 1Kgs.3, then clearly the event is valid, but yet, we can't do a simple comparaison between the reference and the user passage, since the only part in common is the 1Kgs.

So we'll want to be able to query the database, and it should respond fast if we ask the question "Give me all events relevant to ...".Otherwise, we'll have to retrieve all the events out (and possibly articles, and all our material) to do string comparaisons on them to work out whether or not they are relevant.

One way of representing it, although not sure if it will satisfy all of our needs
Scripture Block (book, chapterStart, verseStart, chapterStart, chapterEnd)
Scripture Reference(many Scripture Blocks).

This would be the primary key, indexed and all for all of our data. So we'd need to get this right as early as possible.

Another way, would be assign each verse of the bible a number, and key everything on the verse_id start, verse_id end. Then with a passage reference we'd first look up the ranges of verse_ids that we're interested in, and then with those ranges query our data.

Or a combination of those solutions, or some better solution.

Does anyone know if JSword internally uses the question "Does this passage overlap with this other passage?"


Hope this makes sense?

Chris



2009/10/27 Tyndale STEP Project <TyndaleSTEP@gmail.com>
Chris, the widget you found works really well horizontally, even on a narrow screen.
I love the dual scale - when you click on the low scale timeline along the bottom, the higher scale details at the top move smoothly to that point. Wonderful!
And other scrolling is equally smooth. I don't which we could want anything better.
Lets go with this.
If we find a way to provide a vertical option later, that's great, but lets concentrate on the horizontal at present.

Most of the 'events' will be periods of time, like "Oswald interrogated" in the sample at http://www.simile-widgets.org/timeline/
 
Colin, there is lots of room in the popups of this widget for a brief entry and extra details concerning dates (something we were wondering about),
and it looks like you can add hyperlinks as part of the text in the popup.

Chris, I'm afraid I don't understand the problems or processes you referred to for importing csv files into GWT.

David, do you understand what Chris is saying? - enough to take on this task?

David IB


At 09:42 27/10/2009, Tyndale STEP Project wrote:
Probably, we should aim for both, and allow the user to choose, with a default set in his session/cookie/profile settings...  I agree that a horizontal timeline seems more natural... but we can design it in such a way that it doesn't matter the way you view it, it just swaps the x axis for the y axis.

At the same time, someone can look at layouts with GWT, for the core of the application. I found yesterday that DockPanels use table layouts which is not ideal for fast loading pages, and also not very good practice... Unless what you really want is tables!

Third task would be to load up all the csv files into staging tables and then querying the staging tables to insert them into proper tables with minor tranformations like the uncertainty columns...

Happy with either of these tasks...
Chris

2009/10/26 TyndaleSTEP < tyndalestep@googlemail.com>
The reason for a vertical timeline that that vertical scrolling is more natural in a browser.
If we can make a horizonal scroll work, I'm happy to use that. In some ways it is more natural for a timeline

David IB


At 18:49 26/10/2009, Chris Burrell wrote:
Sounds good. I think we should be able to achieve this in Javascript with AJAX calls back to the (local or remote) server. The zoom may not be so gradual, but it could be gradual in the sense that it redraws the dating scale, and then with ajax reload the correct events/durations to plot...

I found this one: (eg.) http://www.simile-widgets.org/timeline/ It's horizontal though, but then I thought we were basing it on the one in MS Word document.

I'll have a scout for a vertical one online... (it could be we can use the same thing).
Chris

2009/10/26 Tyndale STEP Project <TyndaleSTEP@gmail.com >
[]  
Chris, what kind of widget you do have? I don't know of a ready-made one.
I'm envisioning a vertical timeline with different vertical stripes
eg for the kings, the left 1/5 would be Egypt then another stripe
would be Judah, then then Israel Assyria, and then the rest of the world
The timeline would look continuous, but is in some ways split into:
1) Patriarchs (ending at the Exodus)
2) Conquest (Exodus to start of reign of David)
3) Kingdoms (David to Exile)
4) Exile & Intertestamental
5) Gospels
6) Acts & Early church history.
The reasons for the divisions is that different periods need to zoom
into different levels of detail,
and because there are some uncertainties in dating at key points
1) The Patriarchs can have different dating depending on versions
(Hebrew, Greek & Samaritan) and also depending on how literally the
text is read (though I don't think we can produce a different time
line based on something like historical vagueness!).
2) The Exodus can be different by about 200 years and the Judges and
Saul's reign have many uncertainties can be jiggled to agree with the
Exodus and the relatively fixed date at the start of David's reign.
5) Many dates in Jesus' life depend on the date of his birth and death.
People could see a different timeline depending on these different factors.

What would be absolutely ideal is a single timeline which we can
seamlessly zoom into,
but if we can't do this, I'd be happy with a single timeline with
hotspots which open up these 6 higher-res timelines
and for a couple of areas I'd like to zoom in further still - eg at
the return from Exile & the crucifixion
The reason for the order of the vertical stripes is so that Israel
can be seen on something of a journey.
I've attached a pic which shows the kind of thing I'm thinking of.
The Bible characters would be bold and stand out, but the separate
nations would also have kings of their own.
If we follow this kind of plan, the display should perhaps be based
on graphical images with hotspots
- ie it doesn't need to be generated by the data
If we have something which is data-generated, we should probably aim
for something much conventional like a simple vertical timeline
What do you think - is the geographical + historical timeline achievable?

David IB
--
Posted By Tyndale STEP Project to Tyndale STEP - Programming on 10/26/2009 08:39:00 AM



--
Posted By Tyndale STEP Project to Tyndale STEP - Programming on 10/27/2009 02:42:00 AM


--
Posted By Tyndale STEP Project to Tyndale STEP - Programming on 10/27/2009 05:57:00 AM

No comments:

Post a Comment