NAME

Astro::ADS::Result::Paper - A individual paper in an Astro::ADS::Result object

SYNOPSIS

$paper = new Astro::ADS::Result::Paper( Bibcode   => $bibcode,
                                        Title     => $title,
                                        Authors   => \@authors,
                                        Affil     => \@affil,
                                        Journal   => $journal_refernce,
                                        Published => $published,
                                        Keywords  => \@keywords,
                                        Origin    => $journal,
                                        Links     => \@associated_links,
                                        URL       => $abstract_url,
                                        Abstract  => \@abstract,
                                        Object    => $object,
                                        Score     => $score );

$bibcode = $paper->bibcode();
@authors = $paper->authors();

$xml = $paper->summary(format => "XML");
$text= $paper->summary(format => "TEXT", fields => \@fields);

DESCRIPTION

Stores meta-data about an individual paper in the Astro::ADS::Result object returned by an Astro::ADS::Query object.

REVISION

$Id: Paper.pm,v 1.25 2013/08/06 bjd Exp $ $Id: Paper.pm,v 1.11 2001/11/10 20:58:43 timj Exp $

METHODS

Constructor

new

Create a new instance from a hash of options

$paper = new Astro::ADS::Result::Paper( Bibcode   => $bibcode,
                                        Title     => $title,
                                        Authors   => \@authors,
                                        Affil     => \@affil,
                                        Journal   => $journal_refernce,
                                        Published => $published,
                                        Keywords  => \@keywords,
                                        Origin    => $journal,
                                        Links     => \@outbound_links,
                                        URL       => $abstract_url,
                                        Abstract  => \@abstract,
                                        Object    => $object,
                                        Score     => $score );

returns a reference to an ADS paper object.

Accessor Methods

bibcode

Return (or set) the bibcode for the paper

$bibcode = $paper->bibcode();
$paper->bibcode( $bibcode );
title

Return (or set) the title for the paper

$title = $paper->title();
$paper->title( $title );
Authors

Return (or set) the authors for the paper

@authors = $paper->authors();
$first_author = $paper->authors();
$paper->authors( \@authors );

if called in a scalar context it will return the first author.

affil

Return (or set) the affiliation of each author for the paper

@institutions = $paper->affil();
$first_author_inst = $paper->affil();
$paper->affil( \@institutions );

if called in a scalar context it will return the affiliation of the first author.

Journal

Return (or set) the journal reference for the paper

$journal_ref = $paper->journal();
$paper->journal( $journal_ref );
Published

Return (or set) the month and year when the paper was published.

$published = $paper->published();
$paper->published( $published );
keywords

Return (or set) the different keywords the paper is indexed by, could include such keys as ACCRETION DISCS, WHITE DWARFS, etc.

@keywords = $paper->keywords();
$paper->keywords( \@keywords );

if called in a scalar context it will return the number of keywords.

origin

Return (or set) the origin of the paper in the ADS archive, this is not necessarily the journal in which the paper was published, but could be set to AUTHOR, ADS or SIMBAD for instance.

$source = $paper->origin();
$paper->origin( $source );

Return (or set) the different type of outbounds links offered by ADS for this paper, examples include ABSTRACT, EJOURNAL, ARTICLE, REFERENCES, CITATIONS, SIMBAD objects etc.

@outbound_links = $paper->links();
$paper->links( \@outbound_links );

if called in a scalar context it will return the number of outbound links available.

url

Return (or set) the URL pointing to the paper at the ADS

$adsurl = $paper->url();
$paper->url( $adsurl );
abstract

Return (or set) the abstract of the paper, this may be either the full text of the abstract, or a URL pointing to the scanned abstract at the ADS.

@abstract = $paper->abstract();
$paper->abstract( @abstract );

if called in a scalar context it will return the number of lines of text in the abstract.

object

Return (or set) the object tag for the paper.

$object = $paper->object();
$paper->object( $object );
score

Return (or set) the score for the paper generated by the weightings of the different query criteria.

$score = $paper->score();
$paper->score( $score );

Followup Queries

references

Returns an Astro::ADS::Result object containing the references for the paper.

$result = $paper->references();

returns undef if this external link type is not available for this paper.

citations

Returns an Astro::ADS::Result object containing the citations for the paper.

$result = $paper->citations();

returns undef if this external link type is not available for this paper.

alsoread

Returns an Astro::ADS::Result object containing papers which were `also read' along with this paper.

$result = $paper->alsoread();

returns undef if this external link type is not available for this paper.

tableofcontents

Returns an Astro::ADS::Result object containing the table of contents of the journal or proceedings.

$result = $paper->tableofcontents();

returns undef if this external link type is not available for this paper.

General Methods

configure

Configures the object from multiple pieces of information.

$paper->configure( %options );

Takes a hash as argument with the following keywords:

Bibcode

The bibcode of the paper. A complete description of the bibcode reference coding has been published as a chapter of the book "Information & On-Line Data in Astronomy", 1995, D. Egret and M. A. Albrecht (Eds), Kluwer Acad. Publ.

A copy of the relevant chapter in this book is available online as a Postscript file via the CDS at http://cdsweb.u-strasbg.fr/simbad/refcode.ps

Title

The title of the paper.

Authors

The authors of the paper.

Affil

Institute affiliations associated with each author.

Journal

The journal reference for the paper, e.g. MNRAS, 279, 1345-1348 (1996)

Published

Month and year published, e.g. 4/1996

Keywords

Keywords for the paper, e.g. ACCRETION DISCS

Origin

Origin of citation in ADS archive, this is not necessarily the journal, the origin of the entry could be AUTHOR, or ADS or SIMBAD for instance.

Available type of links relating to the paper, e.g. SIMBAD objects mentioned in the paper, References, Citations, Table of Contents of the Journal etc.

URL

URL of the ADS page of the paper

Abstract

Either the abstract text or a URL of the scanned abstract (for older papers).

Object

Main object for the paper or article, not normally defined except for IAU circulars and other similar articles.

Score

Weighting of the paper based on query criteria, the highest weighted paper is the ``most relevant'' to your search terms.

Does nothing if these keys are not supplied.

summary

Return a summary of the paper in either XML or ASCII tabular format.

$summary = $paper->summary( format => "XML" );

Takes a hash as argument. The following keys are supported:

format

Format of the result string. Options are "XML" to return an XML representation of the paper, or "TEXT" to return an ASCII formatted table. Default is to return "TEXT".

fields

Fields to include in the result. Default is to include BIBCODE, SCORE, TITLE, PUBLISHED and AUTHORS. Supplied as an array reference.

stringify

Method called automatically when the object is printed in a string context. Simple invokes the summary() method with default arguments.

COPYRIGHT

Copyright (C) 2001 University of Exeter. All Rights Reserved.

This program was written as part of the eSTAR project and is free software; you can redistribute it and/or modify it under the terms of the GNU Public License.

AUTHORS

Alasdair Allan <aa@astro.ex.ac.uk>,