Hi Dan,
I see you've been using your EcoliWiki account!
On Aug 21, 2007, at 4:44 AM, Dan Bolser wrote:
<snip>
1. Click 'insert citation' or type a citation keyword.
If you look under the edit box in EcoliWiki, you can see that we also
modified InsertChar to allow you to add ref tags.
2. A) Select an existing citation from a personal
collection or B)
perform a database search to download the citation data into a
collection.
Something similar could be added from what I did with ProcessCite.
Note that to access a personal collection that isn't on the server
will require the js that inserts the reference to read files on your
local machine. This might open some security holes.
What we have already in ProcessCite is the ability to have a page in
the wiki with your personal references pre-named. In EcoliWiki we
have a shared reference library
http://ecoliwiki.net/colipedia/index.php/EcoliWiki_Reference_Library
I think it would be pretty easy to modify this approach so users have
their own reference libraries.
3. Later - configure the citation style and print.
Right now, if using ProcessCite, you could just modify the code to
get different formatting. I don't think you want different users
having different formats, as the parser cache would lead to a mess.
Of course things can differ from the above pattern, such as
occasionally having to manually type the citation details, however, in
general this is the pattern used by most scientists (I think).
Biologists, anyway. ; )
<snip>
== Third, detailed use case. ==
While writing a scientific article the user types "bla bla
bla{{cite:myKey}}", where myKey is a personal citation keyword that
can be anything at all but will probably be a mnemonic for the desired
source. Lets assume that 'myKey' refers to a new 'source' that has not
been cited before. After saving the page {{cite:myKey}} shows up in
the text as a red link ("Template:Cite:myKey").
Clicking the red link will trigger some 'magic' (using the
PagesOnDemand extension). The 'magic' presents a user with the
"Template:Cite:myKey" page preloaded with a special 'PubMed search'
template.
The PubMed search template allows the user to (surprisingly) search
PubMed. For example of the PHP code required see 'Librarian';
http://bioinformatics.org/project/?group_id=131
If I understand this correctly, here's how I might do it.
1. I don't think I'd use templates, since they get processed after
Cite references, I think. But you could modify Cite to have a new
attribute, e.g.
<ref search='myKey'/>
2. the search attribute would trigger the launch of an AJAX search
form Special page. Graceful degradation for non-js users would
insert a link to the special page instead of doing it on the fly (I
don't even know if doing it on the fly is doable)
3. Running the search special page does stuff to replace <ref
search='myKey'> with <ref name='RefID'/> upon ArticleSave.
I think this might be doable, and I'm glad we inspired you to think
about how things could be even better. What I'm not sure about is
how much better this is than just having a pubmed window open in
parallel with the MW window and doing copy-paste between them. For
pubmed IDs, note that just using the clipboard means that the source
can be EndNote or whatever desktop reference library manager you use.
As noted by Sean, a bigger challenge is stuff that isn't in PubMed.
Even for biology, books aren't there and lots of the plant and
chemistry literature isn't indexed. Two things are needed for this:
1) A free web service like PubMed's E-Utilities that provides the
information to populate the reference
2) A place where users can access to get the identifiers
Biblio has a way to use ISBN numbers, which we should probably add.
Some of the other sources, like the ACS Chemfinder, are not freely
accessible, AFAIK.
The other thing - the official version of Cite needs Hooks!!!
<snip>
=====================================
Jim Hu
Associate Professor
Dept. of Biochemistry and Biophysics
2128 TAMU
Texas A&M Univ.
College Station, TX 77843-2128
979-862-4054