...
4. Flexibility to format a metadata field before it goes to the citation.
Configuration Files
citation-config.xml is used to config the citation format. Here is an example of [^CitationCitation-config.xml] and it's DTD file <span style="color: #ff0000"><span style="text-decoration: underline; ">Missing File:</span></span> <span style="color: #ff0000">Citation-config.dtd</span>. Please refer to file Missing File: Citation-config.dtd. Please refer to citation-config.xml for detail instructions.
Wiki Markup
To activate the citation generation, place the line below in \ [DSPACE\]/config/dspace.cfg file -
Code Block |
---|
citation-config = $\{dspace.dir\}/config/citation-config.xml |
Comments this line out will turn off the citation generation.
DSpace API
1. *CitationManager.java*
Wiki Markup
This is a new java class which is used to read and parse the citation configures and assemble the citation for the given item. Please download [^CitationManager.java] and place it under \[dspace\Please download CitationManager.java and place it under [dspace]/dpace-api/src/main/java/org/dspace/app/util directory.
2. *FormatIt.java*
Wiki Markup
This new java class is used to customize the metadata fields for the citation. Please see citation-config.xml for details. [^FormatIt FormatIt.java] is under \ [dspace\]/dpace-api/src/main/java/org/dspace/app/util directory too.
3. *Item.java*
Wiki Markup
Item.java is where the citation gets generated. When you access an item, the citation will be generated (if configured) and stored into field dc.identifier.citation. It is a in-memory copy and won't be written back to the database. It gives you the flexibility to change the citation format whenever you want. Download [^ItemDownload Item.java] (for DSpace 1.5.0) and replace the one under \ [dspace\]/dpace-api/src/main/java/org/dspace/content directory. Please backup your old copy of Item.java.
4. *DSpaceCocoonServlet.java and LoadDSpaceOAIConfig.java*
Wiki Markup
Finally, you need to load your configurations. For XMLUI, this can be done in DSpaceCocoonServlet.java. Download [^DSpaceCocoonServletDownload DSpaceCocoonServlet.java] and replace the one under \ [dspace\]/dpace-xmlui-api/src/main/java/org/dspace/. If you would like to expose the citation in OAI harvesting, please refer to the changes made in DSpaceCocoonServlet.java and do the same in LoadDSpaceOAIConfig.java. Also, as mentioned earlier, this should work for JSPUI too. You just need to find the appropriate file to load the configuration.
Manakin Theme
You can access the generated citation in dc.identifier.citation just like you access title or author in a Manakin Theme. However, to correctly render the HTML tags in your citation format, you need this xslt script Html-tag-parser.xsl to parse them. Here is an example of how to use it -
...