Pascal Georges wrote:

Hi!

> - on average a game takes 200-300 bytes (reference base with some
> annotated games)

This could be, sure. Especially for unannotated games.

> - current Scid's limit is 64kB for a game (this means 30 games can fit
> in a disk block), which with the usual size of a game seems really
> enough for me

> - the few examples of very long games I got so far (some time ago)
> were uselessly and artificially long (whispers / kibitz, rarely
> interesting)
I think one might most likely hit the wall in case of
commentary in prose, am I right? Just as this text gets no
compression at all, I guess. In that case could one possibly
store textual commentary outside the games blocks to improve
performance and work with some sort of pointer to the
external text? Just an idea, I don't know Scids internal DB
organisation.

One usecase for "rarely interesting" kibitz/whispers is some
sort of "social aspect" in CC gameplay as I was told about
from some Club members. They really play a game while
chatting with each other. Here "chat" in the sense of
instructural "chat". (I think this could be a usecase in FICS
as well but I do not really play on FICS that much.)

> If yes, what are the other changes to introduce in Scid's
> base format ? Please be very precise and concrete here
> (not "add extra markers to a base" or "cache the most used
> searches").

Well you name two points ;) A bit more to the point...

This is just a list it should be checked what's feasable.
But this are points where I stumble upon some limitation in
the current format and in daily use not in esotheric cases
;)

In CC I have some game associated metainfomation that would
be suitable for Flags. E.g.  there're tournaments with as
well as without engines. Thematic tournaments that start
with a given position (implemented by a move sequence, not
by a FEN, so you can't find them by searching for
nonstandard staring position ;), games that do not allow for
tablebases, stuff like that. To keep record of this kind of
information I think a set of "per base definable flags"
would be helpful.  Say an array of user flags that I can
define to a meaning by some sting on the level of a certain
base. I could then define e.g. "no engines" to "baseflag 0"
and set this flag for games without engines and clear it for
games with engines allowed.  (Currently, I work around this
by a similar construction that lives in CC code only.) Now
this flag would not make sense outside the CC games base, of
course, therefor it would be some sort of local flag.

There should definitely be a flag for mode. OTB and CC are
quite different. This also goes with some tag for the time
control. Suggested is the [TimeControl ""] tag in the
header like

    [TimeControl "2592000+86400"]

(30d + 1 per move for a Fischer clock e.g.)

Also for my Ref bases I'd really appreciate some flags I
could set. Currently I use combinations of flags for certain
information. (E.g. I set brilliancy + blunder for games I've
an annotation in a book that does not talk about a specific
point in the game but found it remarkable for several
reasons. This works but it is not nice and surely is only a
workarround. And it defies me of marking my personal
brilliancies...) I use flags mainly to speed up searches for
specific informations. Especially, for hooking up my printed
literature with my reference base.

To keep a refbase up to date it would be worthwile to
support tow additional fields "Source" and "Date added".
Currently, I set those in additional header fields, but I
think this could be more compact if some encoding is used
that refers to some internal authority.

Concerning Metadata: there's some small company in northern
germany that produces databases which add additional
information to the header like

    [whiteCountry "ENG"]
    [whiteTeamCountry "ENG"]
    [whiteTeam "II"]
    [whiteIccfID "123456"]
    [whiteFideID "123456"]
    [Source ""]
    [SourceDate ""]

This is most likely not complete. It could be worth while
to look at what's used there these days and support it
adequately.

Also for hooking up my printed literature (there is a lot,
IMHO it would be worth to take this fact into account) I
found it very convenient to add tags to the header. You may
remember that I currently use [Ref ""] lines for this
followed by [Ref1 ""] and so on if I've a game that is
discussed in several source from differnt perspectives. This
is far from perfect.  I admit that I'd greatly appreciate
some numerical flag (unsigned int) that could hook up with
some normalised Note field, like you use it in scientific
literature once you cite another work. Say, the "Evergreen
Game" is discussed by Kasparovs in his series and Burgess'
et al. Now, I'd like to be able to attache some [1] [2]
where [1] gives the full reference of Kasparovs book while
[2] the same for Burgess book. It does not have to be a book
that is referenced here, it could be any note in prose about
common points within a game.

For a new file format it would be great if it could also
know about some archiving/transport format that consists
only of one single file. This single file could unfold on
the target system to the usual set. (This function is
similar to cbv.)

One function I missed is already tackeld by the Masks.  I'm
not sure if it might not be possible to use the Mask input
also for the caching. Like installing an opening key in CB?
I did never work with CB itself, but as far as I got it I
like the idea to install opening keys (caches for those
openings one is most interested in collecting all games that
are of interest in this area) as well as endings and tactics
or startegic motives. Those "specialised caches" whould be
most helpful for a reference base of course.

One point I'm not at all clear about is actually concerned
with game metadata again. I wonder if one could not use some
sort of authority records for player/event/site names
instead of the written strings. This would surely have a
larger impact on the structure. However, IMHO it would ease
up the spell checking stuff and one could come up with a
plain soution to find Jussupow - ah in english Yusupov.
Just to give some name I always forget the spelling used...
He would just be 1234567 and Scid could draw the spelling(s)
from the ratings file e.g. (Could be advisable that the
spelling is stored in the DB for the case no rating file is
present.) I use this feature a lot in my daily work with
books and miss it in Scid. (German librarians love authority
records...)

-- 

Kind regards,                /                 War is Peace.
                             |            Freedom is Slavery.
Alexander Wagner            |         Ignorance is Strength.
                             |
                             | Theory     : G. Orwell, "1984"
                            /  In practice:   USA, since 2001

------------------------------------------------------------------------------
_______________________________________________
Scid-users mailing list
Scid-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scid-users

Reply via email to