Extension:ProcessCite
This extension is currently not actively maintained! Although it may still work, any bug reports or feature requests will more than likely be ignored. |
ProcessCite Release status: unmaintained |
|
---|---|
Implementation | Tag |
Description | Add additional processing capabilities to Cite. |
Author(s) | JimHu |
Latest version | 0.2 (2013-11-02) |
MediaWiki | 1.31.1 |
License | MIT License |
Download | GitHub: Note: (also requires patching Cite and the PMID extension) |
Example | GONUTS |
Rationale and Features
[edit]Wiki pages on scientific topics benefit from citations to the scientific literature. Managing these by placing full citations inside <ref></ref> tags using Cite can be cumbersome, and generates wikitext that suffers from the insertion of long blocks of ref text that degrades readability. It is also hard to maintain consistency of reference styles among different users.
ProcessCite extends the capabilities of Cite by adding the following:
- fetches, caches, and formats reference info for citations to papers in the NLM PubMed database, using PubMed's E-Utilities web service.
- fetches reference information from a list of commonly used shortcuts stored in a specific wiki page
- allows more concise markup of these kinds of citations
- disambiguates several ways in which citations might be entered into Cite.
- generates links in the reference text to a variety of external sources defined as dbxrefs by the Gene Ontology Consortium.
Many of these functionalities are inspired by the features in Biblio, an extension written by Martin Jambon.
Usage
[edit]In the wiki page, create references using the syntax <ref name=DB:reference />
. Add an empty <references />
tag where you would like the full references to appear (usually at the bottom of the page). ProcessCite parses the name attributes of the <ref>
tags and generates a citation list from them.
ProcessCite works with a number of different databases; see the full list in GO.xrf_abbs.php from the source code.
Example
[edit]You type
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua<ref name=PMID:12368253 />. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
<references/>
You get
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua[1]. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
1. Stein LD et al. (2002) The generic genome browser: a building block for a model organism system database. Genome Res 12: 1599-610 PubMed
Status
[edit]ProcessCite.php has only been tested with MediaWiki 1.31.1. Help testing this extension on other versions will be appreciated!
ProcessCite and other Hu Lab extensions are maintained mostly on a publicly inaccessible enterprise GitHub repository at Texas A&M. This is synchronized irregularly and infrequently with this repository. To check whether we are using a more recent version than the one in the public GitHub, check Special:Version at https://gowiki.tamu.edu
Installation
[edit]ProcessCite.php installation requires addition of a hook to Cite.php and other configuration.
- Download ProcessCite.tgz and uncompress it.
- Place the files from the ProcessCite directory in
$IP/extensions/Cite
directory. Files included:- ProcessCite.php - the main extension
- GO.xrf_abbs.php - a supporting file with dbxrefs for various genomics resources
- Patch Cite/src/ReferenceStack.php (if necessary): at the beginning of ReferenceStack::pushRef, add
MediaWiki\MediaWikiServices::getInstance()->getHookContainer()->run( 'CiteBeforeStackEntry', array( &$name, &$str ) );
- Install the PMID extension, which queries Pubmed E-Utilities
- set a tmp directory for caching returns from web services. This must be readable and writeable by the webserver, or ProcessCite will throw permissions errors (but it will still work). A tmp directory should be used to reduce bandwidth use for the web service providers, such as PubMed.
- (optional) set a wiki page in the main namespace to hold a list of reference shortcut|reference text pairs, one per line. Use <noinclude> to add comments to this page. The default is "$wgSitename Reference Library"
- add to LocalSettings.php.
wfLoadExtension("ProcessCite");
Alternatives
[edit]See also this version of ProcessCite, which adds support for DOI lookups.