I have created an XML format to describe all the information needed by the program to generate useful information, so anyone can help add journals. For those of you who are really interested in such things, you can download the XML schema.
The easiest way to describe this will probably be to give a well-annotated example. For the Journal of Chemical Physics (a favorite of my grad student research group):
<?xml version="1.0" encoding="UTF-8"?> <!-- root element and namespace --> <journal_list xmlns="http://www.hyperblazer.net/journals"> <journal> <!-- for each journal --> <!-- the order of the items must be as follows --> <fullname>Journal of Chemical Physics</fullname> <!-- the full name --> <bibname>J. Chem. Phys.</bibname> <!-- the official bibliographic name --> <!-- aliases are optional, but you can have as many as you want --> <!-- aliases should be all lower case letters (user queries are translated to lower case) --> <alias>jcp</alias> <geturl>http://link.aip.org/link/?JCPSA6/${vol}/${page}</geturl> <!-- geturl means that the url uses the GET protocol. Note the usage of ${vol} and ${page} : everything else is literal. Characters which are represented as "entities" in XML (or HTML) need to be written appropriately. For example, "&" should be written "&" --> <!-- remaining items are optional --> <publisher>American Institute of Physics</publisher> <!-- publisher needs to have the whole name, no abbreviations --> <language>en</language> <!-- language according to ISO 639-1 standard --> <field>chemistry</field> <!-- fields in order of importance --> <field>physics</field> <!-- test: jcp 125 132305 --> <!-- while the test comment is optional, it can be useful --> </journal> </journal_list>
Actually, the XML isn't directly used in the program. For performance reasons, we generate the script from the XML on a nightly basis (using an XML Stylesheet Transform).