Semantic Lattes
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

Semantic Lattes


The purpose of this project is to bridging the gap between the Brazilian Curriculum Lattes plataform and Semantic Web technologies. As part of the project, we have already developed:

  1. A XSLT stylesheet that process XML Brazilian Curriculum Lattes files and generates RDF data.
  2. An updated version of the Lattes XML DTD specification. The original DTD provided by CNPq was last updated in 2004.
  3. A XSLT stylesheet that process XML Latttes and generate an MODS XML file.

Lattes to RDF


xsltproc --stringparam ID LATTESID lattes.xsl CURRICULIUM.xml > CURRICULIUM.rdf

where LATTESID is an unique identifier that will be used to create the xml:base URL if the XML doesn’t have the NUMERO-IDENTIFICADOR attribute in the tag CURRICULO-LATTES. We also provide another stylesheet called lattes-vivo.xsl that generates a RDF VIVO compliance, that is, readdy to be ingest into a VIVO instalation.

Lattes validation agains the updated Lattes DTD

In Unix/MacOS systems you can also run:

xmllint --dtdvalid LMPLCurriculo.DTD --noout CURRICULIUM.XML

If one wants to compare what we changed from the original DTD provided by CNPQ, just use the github diff of commits.

Lattes to BibTeX

We have also developed a XSLT stylesheet that transforms a XML Lattes into a XML in MODS format.

You will need the following tools to actually obtain a BibTeX file from your XML Lattes:

  • xsltproc: to execute the xsl stylesheet.
  • xmllint: to validate the MODS XML generated (optional).
  • BibUtils: to transform the MODS XML in BibTeX file.
  • BibTool: to fix the keys and sort the entries in the final BibTeX file (optional).

To transform Lattes to BibTeX:

xsltproc lattes2mods.xsl LATTES.xml > LATTES.mods
xmllint --schema mods.xsd LATTTES.mods
xml2bib -b -w LATTES.mods > LATTES.bib

The second command above is not necessary. It is how one can validate the MODS XML produced by the transformation. To run this command, you will need to download the mods.xsd first.

Using bibtool command, you can also fix the citekeys, sort the entries and merge BiBTeX files. For instance, the command below generate the NEW.bib file with keys like “2012:Rademaker.Hermann” and the entries will be sorted in the inverse order by these keys.

bibtool -f "%4d(year):%n(author)" -s LATTES.bib > NEW.bib