README

Path: README
Last Update: 2009-04-22 08:31:53 +0900

isi

What is isi?

isi is an ISI Export Format to BibTeX Format converter written in Ruby script language. You can use isi as a library, too.

ISI Web of Science (isiknowledge.com) provides their bibliographic information in ISI Export Format. You can get the tagged Marked List in Web of Science by clicking the [SAVE TO FILE] button.

Where is the homepage of isi?

isi-rb.rubyforge.org

Where can I download isi?

Go to rubyforge.org/projects/isi-rb .

How can I install isi?

There are three different ways to install isi.

I. Conservative way; use setup.rb

isi-X.Y.Z.tgz package can be installed as:

  $ tar zxf isi-X.Y.Z.tgz
  $ cd isi-X.Y.Z
  $ su
  # ruby setup.rb

Note that the text-format library (rubyforge.org/projects/text-format) is required.

II. RubyGems users can take an easy way

There is an easy way, if you are a RubyGems user:

  $ su
  # gem install isi

If you do not have the text-format library, gem will download and install the library automatically. The gem server is busy sometimes. If you fail in downloading, please try again.

III. Simple way; just copy isi.rb and journaltitleabbreviation.rb

Just copy lib/isi.rb (isi-X.Y.Z.rb) and lib/journaltitleabbreviation.rb (journaltitleabbreviation-X.Y.Z.rb) into your working directory which contains your saved “Marked List”, e.g. savedrecs.txt.

  $ cp lib/isi.rb lib/journaltitleabbreviation.rb ~/your/working/directory/
 ($ cp isi-X.Y.Z.rb ~/your/working/directory/isi.rb)
  $ cp lib/journaltitleabbreviation.rb ~/your/working/directory/
 ($ cp journaltitleabbreviation-X.Y.Z.rb ~/your/working/directory/journaltitleabbreviation.rb)
  $ cd ~/your/working/directory/
  $ ruby isi.rb savedrecs1.txt savedrecs2.txt
  $ ruby isi.rb < savedrecs.txt > savedrecs.bib

Last two lines are examples of usage for this installation way.

Note that the text-format library (rubyforge.org/projects/text-format) is required.

How can I use it?

Save the marked records to an output file in ISI Web of Science

Mark the articles in ISI Web of Science. Then, view and save the marked records to an output file (savedrecs.txt). I recommend to check “Author(s)”, “Title”, “Source”, “abstract*”, “keywords”, “times cited” and “source abbreviation” as the fields to include in the output file.

Here are some examples

  $ isi2bibtex savedrecs.txt
  $ isi2bibtex savedrecs1.txt savedrecs2.txt > savedrecs.bib
  $ isi2bibtex < savedrecs.txt > savedrecs.bib
  $ cat savedrecs.txt | isi2bibtex > savedrecs.bib

Some other useful executables

For KakenhiLaTeX osksn2.hep.sci.osaka-u.ac.jp/~taku/kakenhiLaTeX/

  $ isi2kakenhi --help
  $ isi2kakenhi --name-regexp='(H\. Yukawa|Hideki Yukawa)' savedrecs.txt > papers.tex

For the database of “Academic Research Staff at Tohoku University” db.tohoku.ac.jp/whois/TunvTopE.html

  $ isi2tohoku --help
  $ isi2tohoku --id 12345678 --name 'Example Name' savedrecs.txt

To convert ISI Export Format to HTML

  $ isi2html --help
  $ isi2html --full-name='Hideki Yukawa' --name-regexp='(H\. Yukawa|Hideki Yukawa)' savedrecs.txt > index.html

You can use isi as a library.

Here is an example:

  #!/usr/bin/env ruby
  ##
  require 'rubygems'   # You may not need this line.
  require 'isi'

  class ISI_record
    def to_title_author
      "#{@hash['TI']} - #{and_separated_authors}\n"
    end
  end

  while rec = ARGF.read_an_ISI_record
    print rec.to_title_author
  end

Copying

isi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. You can copy, modify and redistribute isi, but only under the conditions described in the GNU General Public License (the “GPL”).

Thanks to contributor(s)!

  • Marcin Dulak

Who is the author?

NISHIMATSU Takeshi

Why did he write it?

Because he do not like the output format of the Perl version.

Is there a Perl version?

Yes. You can find the Perl version by Jonathan Swinton, Ben Bolker, Anthony Stone, John J. Lee in CTAN www.ctan.org/tex-archive/biblio/bibtex/utils/isi2bibtex .

I do not like the output format of isi2bibtex, neither!

The output format is defined in the source code WYSIWYGly. So you can easily change the output format by yourself.

How can I get the latest source tree of isi?

You can checkout the latest source tree of isi anonymously from RubyForge with svn(1) command:

  $ svn checkout svn://rubyforge.org/var/svn/isi-rb/isi

Meanings of tags in ISI Export Format:

See isibasic.com/help/helpprn.html .

file-unique tags

 FN: File type. The file starts with 'FN ISI Export Format'
 VR: Version number of ISI export file format
 EF: End of file

normal tags

 AB: Abstract
 AF: Authors Full (AU Foo, BAR -> AF Foo, B. A. R.; AU Nishimatsu, T -> AF Nishimatsu Takeshi)
 AP: Article number of new APS journals (in ISI Web of Knowledge, 2008-)
 AR: Article number of new APS journals
 AU: Authors
 BN: ISBN
 BP: Beginning page
 C1: Research addresses
 CA: Group authors
 CL: Conference location
 CR: Cited references
 CT: Conference title
 CY: Conference Date
 DE: Original keywords
 DI: DOI
 DT: Document type
 ED: Editors
 EM: E-mail address
 EP: Ending page
 ER: end of a record
 FN: File name
 FU: Funding agency and grant number
 FX: Funding text
 GA: IDS number (ISI original)
 ID: New keywords given by ISI
 IS: issue
 J9: 29-character journal title abbreviation
 JI: ISO journal title abbreviation
 LA: Language
 NR: Cited reference count
 PD: Publication date e.g. "JUN 8" or "JUL"
 PA: Publisher Address
 PG: the number of pages
 PI: Publisher city
 PN: Part number
 PT: Publication type (e.g., book, journal, book in series)
 PU: Publisher
 PY: Publication year
 RP: Reprint address
 SE: Book series title
 SI: Special issue
 SN: ISSN
 SO: journal title, in full
 SP: Conference Sponsors
 SU: Supplement
 TC: Times cited
 TI: Title
 UT: ISI unique article identifier
 VL: Volume
 WP: Publisher web address

isi original tags

 UR: URL

Known bugs

  • none.

TODO

  • lib/isi.rb combine ISI_record#and_separated_authors() and ISI_record#comma_and_separated_authors() into ISI_record#separated_authors()
  • Write papers, not tools for writing papers.
  • tests/isi_test.rb

[Validate]