JabRef
v6
v6
  • JabRef Bibliography Management
  • Installation
  • Getting started
  • Collect
    • Add entry manually
    • Add entry using an ID
    • Add entry using reference text
    • Searching externally using Online Services
    • Add entry using PDFs
    • Add PDFs to an entry
    • Browser Extension
    • Import
      • Custom import filters
      • Import inspection window
  • Organize
    • Edit an entry
    • Groups
    • Keywords
    • Mark and grade
    • Comment on an entry
    • Searching within the library
    • Complete information using online databases
    • Manage associated files
    • Manage field names and their content
    • Best practices
    • Cleanup entries
    • Check integrity
    • Find duplicates
    • Merge entries
    • Save actions
  • Cite
    • BibTeX and biblatex
    • Pushing to external editor application
    • Export to Microsoft Word
    • OpenOffice/LibreOffice integration
  • Share
    • Sharing a Bib(la)TeX Library
    • Shared SQL Database
      • Migration of pre-3.6 SQL databases into a shared SQL database
    • Export
      • Custom export filters
    • Send as email
  • AI functionality
    • AI providers and API keys
    • AI preferences
    • AI troubleshooting
    • Running a local LLM model
  • Configuration
    • Customize the citation key generator
    • Customize entry types
    • Customize general fields
    • Customize key bindings
    • Library properties
    • Entry preview setup
    • Manage external file types
    • Manage protected terms
    • The string editor
  • Advanced information
    • Main Window
    • Entry Editor
      • Links to other entries
      • The Bibtex / Biblatex source tab
      • The 'owner' field
      • Time stamp field
      • LaTeX Citations Tab
    • About BibTeX and its fields
    • Strings
    • Field content selector
    • URL and DOI links in JabRef
    • Command line use and options
    • Automatic Backup (.sav and .bak) and Autosave
    • XMP metadata support in JabRef
    • Remote operation
    • Custom themes
    • Journal abbreviations
    • New subdatabase based on AUX file
    • How to expand first names of an entry
    • Debugging your library file
    • Resources
    • License
    • Knowledge
      • MS Office Bibliography XML format
      • Comparison of the Medline (txt), Medline (xml), and RIS format
      • EndNote Export Filter
  • Frequently Asked Questions
    • Linux
    • Mac OS X
    • Windows
  • Discussion Forum
  • Contribute to JabRef
    • How to Improve the Help Page
    • How to translate the JabRef User Interface
Powered by GitBook
On this page
  • Usage
  • BibTeXMP Fileformat
  • Related Links

Was this helpful?

Edit on GitHub
Export as PDF
  1. Advanced information

XMP metadata support in JabRef

Bib(la)TeX information into the PDF metadata

PreviousAutomatic Backup (.sav and .bak) and AutosaveNextRemote operation

Last updated 2 years ago

Was this helpful?

XMP is a standard created by Adobe Systems for storing metadata (data about data) in files. A well known example for metadata are MP3 tags, which can be used to describe artist, album and song name of a MP3 file. Adding metadata to MP3 helps other people to identify the songs correctly independent of file-name and can provide means for software (MP3 players for instance) to sort and group songs.

With XMP support the JabRef team tries to bring the advantages of metadata to the world of reference managers. You can now choose to "Write XMP metadata to PDFs" in the Tools menu of JabRef, which will put all the Bib(la)TeX information into the PDFs. If you then email a PDF to a colleague, they can just drag the file into JabRef and all information that you entered will be available to them.

Usage

To use the XMP-feature in JabRef you can do the following:

  • To import a single annotated PDF-file that contains XMP, select File → Import into... and then choose the filter "XMP-annotated PDF", or drag the file into the main view.

  • To annotate all the PDFs in a given database, select Tools → Write XMP metadata to PDFs.

  • To verify if it worked, you can open the PDF in Adobe Acrobat and select File → Document Properties → Additional Metadata → Advanced. In the tree to the right you should see an entry called "". Note: this works only with Adobe Acrobat, not with Adobe Reader. If you do not have Adobe Acrobat, you can use pdfinfo instead in order to see the XMP metadata. pdfinfo is part of and .

BibTeXMP Fileformat

JabRef builds on to encode bibliographic information. That information us embedded in the PDF using the XMP format. Dublin Core itself i) builds on RDF and ii) can be extended with own information. In case BibTeX data cannot be stored using native Dublin Core fields, new fields are used. Basically, all fields and values are turned into nodes of an XML document. Only authors and editors are stored as rdf:Seq-structures, so users of the data can skip the splitting on ands. All strings and crossrefs will be resolved in the data.

The following easy minimal schema is used:

  • The citation key is stored as citationkey.

  • The type of the BibTeX entry is stored as entrytype.

  • author and editor are encoding as rdf:Seqs where the individual authors are represented as rdf:lis.

  • All other fields are saved using their field-name as is.

The following is an example of the mapping

@INPROCEEDINGS{CroAnnHow05,
  author = {Crowston, K. and Annabi, H. and Howison, J. and Masango, C.},
  title = {Effective work practices for floss development: A model and propositions},
  booktitle = {Hawaii International Conference On System Sciences (HICSS)},
  year = {2005},
  owner = {oezbek},
  timestamp = {2006.05.29},
  url = {http://james.howison.name/publications}
}

will be transformed into

<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?><x:xmpmeta xmlns:x="adobe:ns:meta/">
  <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
    <rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" rdf:about="">
      <dc:creator>
        <rdf:Seq>
          <rdf:li>K. Crowston</rdf:li>
          <rdf:li>H. Annabi</rdf:li>
          <rdf:li>J. Howison</rdf:li>
          <rdf:li>C. Masango</rdf:li>
        </rdf:Seq>
      </dc:creator>
      <dc:relation>
        <rdf:Bag>
          <rdf:li>bibtex/booktitle/Hawaii International Conference On System Sciences (HICSS)</rdf:li>
          <rdf:li>bibtex/citationkey/CroAnnHow05</rdf:li>
          <rdf:li>bibtex/file/:CroAnnHow05.pdf:PDF</rdf:li>
          <rdf:li>bibtex/owner/fdarboux</rdf:li>
          <rdf:li>bibtex/timestamp/2020-11-22</rdf:li>
          <rdf:li>bibtex/url/http://james.howison.name/publications</rdf:li>
        </rdf:Bag>
      </dc:relation>
      <dc:title>
        <rdf:Alt>
          <rdf:li xml:lang="x-default">Effective work practices for floss development: A model and propositions</rdf:li>
        </rdf:Alt>
      </dc:title>
      <dc:date>
        <rdf:Seq>
          <rdf:li>2005</rdf:li>
        </rdf:Seq>
      </dc:date>
      <dc:format>application/pdf</dc:format>
      <dc:type>
        <rdf:Bag>
          <rdf:li>InProceedings</rdf:li>
        </rdf:Bag>
      </dc:type>
    </rdf:Description>
  </rdf:RDF>
</x:xmpmeta><?xpacket end="w"?>

Be aware of the following caveats if you are trying to parse BibTeXMP:

  • In RDF attribute-value pairs can also be expressed as nodes and vice versa.

Related Links

Some links about XMP and annotating PDFs

http://purl.org/net/bibteXMP
Xpdf tools
Poppler
Dublin Core
Wikipedia article on XMP
James Howison's blog "Themp---Managing Academic Papers like MP3s"
Good thread on ArsTechnica discussing the management of PDFs.