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:
- A XSLT stylesheet that process XML Brazilian Curriculum Lattes files and generates RDF data.
- An updated version of the Lattes XML DTD specification. The original DTD provided by CNPq was last updated in 2004.
- A XSLT stylesheet that process XML Latttes and generate an MODS XML file.
Usage:
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.
In Unix/MacOS systems you can also run:
xmllint --schema CurriculoLattes.xsd --noout CV.xml
If one wants to compare what we changed from the original DTD provided by CNPQ, just use the github diff of commits.
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
- Alexandre Rademaker (EMAp/FGV)
- Edward Hermann Haeusler (PUC-Rio)