On 7/16/2014 2:24 PM, Rob Heusdens wrote:
Hello,
This is more a 'side-comment', but anytime I see an application that wants in fact to query data from some dataresource, I ask myself: why is that not implemented as a real relational database?
BibTex is some weird implementation for a problem that in facts requests a real relational dababase approach, in which your data does not reside in a file, but a couple of tables. Like PUBLISHER (the organisation that publishes the article/book/journal, etc.), PUBLICATION, EDITION, AUTHOR/CONTRIBUTOR (a person making a contribution to a PUBLICATION, like author, co-author, editor) etc.
For example: every author that has contributed to a publication (or edition thereof) has only one record in the AUTHOR table, and for each contribution to a PUBLICATION/EDITION there is a record in the CONTRIBUTION table, with the foreign keys to the primary key of AUTHOR/CONTRIBUTOR and to the PUBLICATION/EDITION table.
A data-model for such must exist in the real-world, somewhere, I guess. But Tex and other implementors have choosen to implement this in a simple flat-file system, and which I think is part of the problem, because the implemenation as flat file has certain limits. Esp. when more demanding features are requested.
Still thinking that ultimately that would be the best way to implement BibTex, using a relational database as repository instead of flat files. And you could implement many other 'nice' featueres, like querying other works related to the works you want to cite (for instance at the basis of relevant key/reference words or other).
Would be do-able I guess (LuaTex can access dabatases), only problem is you have to convert al these .bib files into the database format.
But don't know if anyone has thought about implementing Bibtex as a database.
the main problem there is that normally authors collect their own bibentries and that bib has become sort of a standard ... i have no problem with a database approach but it would also mean normalizing (e.g. get rid of tex stuff in bib entries) and so technically it's no problem but politically ... (similar arguments can be given for math habit and so) with context we're not too bound to such 'standards' but we can't ignore them (and therefore support them); the bib implementation is flexible enough to be extended but in order to get a database approach done a reasonable set of users need to carry it (there are some search options built in btw)
Greetings,
Rob
Hans,
Sorting simply by year (or, rather, year then author then title ...) could be useful. Take, for example, a pluriannual report having many references. One might wish to display a list of publications by year. Should this be selected using "sorttype=year"?
Another possible syntax could be sorttype={author,year,title,page} and this would be the default for APA. Of course, the other common sorting is "sorttype=cite".
Furthermore, sorttype={year,author,title,page} would be another variant, and I can even imagine using: sorttype={journal,volume,number,page} or sorttype={publisher,year,title} and I am sure that users may need something totally unanticipated.
The change from the present is that "sortype=author" implies {author,year,title,page}. I suppose that it could default to this order if no other order is specified. Just like "sorttype=year" could default to something sane like {year,author,title,page} unless a different order is explicitly given, etc.
A subtlety is how to handle missing fields, say in a mixture of articles and books where articles have journal titles (journal) and article titles (title) and books have book titles (title). Should missing journal fields (books) come before or after articles or should title then be taken into account, as in {journal|title}? Do we need to allow such logic?
We can continue to discuss this with Thomas and Luigi but I mention it here on the mailing list as Flavien Lambert brought up the question.
Alan
On Wed, 16 Jul 2014 11:52:15 +0200 Hans Hagen
wrote: On 7/16/2014 11:31 AM, Flavien Lambert wrote:
The sort by author is perfect.
fyi, sorting authors is kind of complex as we need to take all name elements into account (initials, firstnames, surnames, vons, juniors); of course there can be multiple authors; add to the extra axes year journal, title and page
the torture test is a list with 400K author specifications (taken from a bunch of bib databases) which eventually produces a 5500 page document
in practice, certainly when we have smaller databases, load time can be neglected (here it is .4 sec luatex vs .3 sec luajittex); sort preparation and processing of that bunch takes 35 sec for luatex and 19 sec for luajittex but of course for normal cases you won't even noticed it .. bib databases with 400K entries are probably not used often
(i have no clue if bibtex can handle these numbers)
Thanks, F.
On 16 Jul 2014 17:16, "Hans Hagen"
mailto:pragma@wxs.nl> wrote: On 7/16/2014 10:10 AM, Flavien Lambert wrote:
Great! Thanks a lot!
And concerning sorting by date?
sorttype=author
sorts by author,year,journal,title,page
so what do you mean with 'by year'
Hans
-- Alan Braslau CEA DSM-IRAMIS-SPEC CNRS URA 2464 Orme des Merisiers 91191 Gif-sur-Yvette cedex FRANCE tel: +33 1 69 08 73 15 fax: +33 1 69 08 87 86 mailto:alan.braslau@cea.fr ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------