|
From: Laszlo K. <las...@su...> - 2000-11-24 14:48:04
|
Hi All, I will try to rip the big email to several smaller emails. Here is one, the issue of multiple databases. Let's ignore whatever we have designed and implemented for now and try to gather together why do we think this would be good. Some ideas I write up here come from the architecture of Solaris/CDE Help. Some of the ideas below are very different from the current design:-) The idea of accessing various databases across the internet looked very interesting for everybody. I think this is a good idea. Whereever a remote database is, there has to be a Scrollkeeper around. I would expect that remote database to be up-to-date, I don't think my local Scrollkeeper should be responsible for this, it should take for granted whatever is offered by the remote database. In this case database would mean extracted TOC, Index, etc I would expect all of this to come through the remote connection. How does that sound? This will obviously need a script/binary/config file that will tell Scrollkeeper that which remote databases should be considered. The model would be the same for locally installed docs. More databases on the local system and a script/binary/config file tell which ones to take into account. Now this is where it becomes rough, I suggest to change the current design a lot:-) 1. We install the OMF files per package in the package directory (like /usr/share/pkgname/omf). 2. We say Scrollkeeper is needed to build the package. 3. We generate partial content list file for this package at build time (obviously it has to be very different from the one we have now). Same for TOC, Index etc. 4. At install time we create symbolic link of this package to a special directory (/etc/scrollkeeper or similar). These directories can be specified through a search path (more than one dir). 5. We provide an interface that merges the partial lists into a main list and stores it in $/home/.scrollkeeper. We use timestamps to monitor the partial database changes (only the files have to be checked). This is it. This would have some advantages, but many disadvantages also. So please go ahead and point out the problems. As about merging, I don't see that a big problem. Laszlo |