[pmwiki-users] Bibliographies

christian.ridderstrom at gmail.com christian.ridderstrom at gmail.com
Tue Sep 12 03:53:30 CDT 2006

On Tue, 12 Sep 2006, John Rankin wrote:

> >> > In publishing a pdf, LaTeX takes care of this, I believe, but you 
> >> > are right there is an issue in HTML. I had envisaged that the 
> >> > markup rule that handles (:cite:) would build the bibliography in a 
> >> > php static array, then the markup rule that handles 
> >> > (:bibliography:) would sort the static array into the specified 
> >> > order and insert it into the $XMLFooter. Since (:cite:) has to read 
> >> > the bib page to retrieve the text to use in the link, it may as 
> >> > well grab the entire reference.
> >
> >This works, assuming that the bibliography is on the same page as all the 
> >(:cite:)-commands.
> >
> >OTOH, if the bibliography (the actual list) is supposed to be on a 
> >separate page, I guess we need to somehow be able to tell the bibliography 
> >directive what pages it should search for (:cite:).
> >
> I don't see the problem.
> When you publish multiple wiki pages,

Oh... I didn't mean when you publish multiple pages. I was thinking of a 
situation like this where I've got a collection of pages about cars:

* We have pages about cars (Volvo, Saab, Koenigsegg etc) and in 
  these pages you refer to other sources for more information. There is 
  *not* a bibliography at the end of each page.

* A page with a common bibliography for all the car pages (Bibliography)

* A page containing the bibliography database (BibliographyDb)

When the page Bibliography is rendered, it needs to know that it should 
check the car pages (Volvo, Saab, Koenigsegg) for the (:cite:)-markup in 
order to generate a suitable bibliography based on the information in the 
page BibliographyDb.

Here's how the directives appear in the different pages (I've modified 
the syntax for (:bibliography:) for clarity):

		(:cite VolvoURI :)

		  name = {Volvo},
		  URI = {http://volvo.se},
		  annote = {The URI for Volvo's main website}


		(:bibliographystyle unsrt:)
		(:bibliography database=BibliographyDb \
			       page=Volvo page=Saab page=Koenigsseg :)

So here I've explicitly told (:bibliography:) where to find the database 
and which pages to scan. I guess using a trail is much more convenient, 
i.e. the page Bibliography could look like this:

		Bibliography for the following pages:
		* [[Volvo]]
		* [[Saab]]
		* [[Koenigsegg]]

		(:bibliographystyle unsrt:)
		(:bibliography database=BibliographyDb trail={$Name} :)

Does this make more sense?

As an aside, maybe what we really want isn't (:bibliography:), but 
something like (:bibliography-for-pages :) that accepts any parameters 
that (:pagelist:) does, and uses these to find the pages that should be 
included in the bibliography. 


Christian Ridderström, +46-8-768 39 44               http://www.md.kth.se/~chr

More information about the pmwiki-users mailing list