pipol v4.0.20 pipol v4.0.20 - unofficial, searchable, and shareable people mirror


The pipol service aims to make the PEOPLE publication records visible, accessible, searchable, and shareable.

pipol is unofficial: the publication records are collected from the CNR PEOPLE platform, whose last activity was on 31/01/2024 at 16:36.

Indeed, pipol is the result of the integration of the official CNR Open Archive Initiative (CNR-OAI) and the official CNR Explore Research Archive (CNR-ExploRA), whose data are subsequently transferred to our local database. The key feature is the Protocol for Metadata Harvesting (PMH) implemented by CNR-OAI, which is useful to efficiently retrieve the latest (or updated) records after a heavy (una tantum) harvesting step.

pipol is searchable: the most effective pipol feature is the fulltext search, which acts on titles, keywords, and abstracts to find the publications of your interest. You may also specify one or more CNR institutes and one or more authors, the latter choice being very handy to create a publication list of a lab where many authors are involved. You will find below a complete list of the available parameters for customizing your query.

At the date of 16/04/2024, pipol is a 0.6GB platform with 368K records from 132 CNR institutes. By taking into account titles, keywords, and abstracts, pipol is also a textual resource with 45M tokens.

Note that author and editor names are parsed by pipol to guarantee homogeneity during search and visualisation. Various name formats are handled, however if some names still do not appear correctly in pipol, please consider editing the corresponding PEOPLE records according to the non-ambiguous format "Last Name, First Name; Last Name, First Name; ...". The affiliation notes, if any, are expected to be present at the end of each name, either as digits or in brackets (e.g. "Last Name, First Name (a); ...").

Note also that the pipol local database uses the "utf8mb4" character encoding together with the utf8mb4_general_ci collation, the latter meaning that all search terms have to be considered case-insensitive with diacritics-free mapping (e.g. "A", "ä", "á", and "a" match the same letter).

pipol is shareable: do you need to add a publication list to your personal web page? Maybe to your institute/lab web page? Do you prefer to make the publication records processed by your own application? It's as easy as doing an http get request!

See below for more technical details about php usage, wordpress integration, and pipol web-api specifications.

You can view here, here, and here some examples of publication lists which are embedded on third-party web sites.


browser test

You can easily test the pipol service by using the URL-encoded query string format. For instance, if you are "Marcello Ferro" and you are affiliated with the Institute for Computational Linguistics (ILC) at CNR, you can simply type in your browser something like:
https://www.readlet.it/apps/pipol/?aid=get_publications&output=html&sort=type&authors=Ferro,M.&institutes=ILC


php

If you are familiar with php, just add to your web page something like:
$params = ['aid' => 'get_publications', 'output' => 'html', 'sort' => 'type', 'authors' => 'Ferro, M.', 'institutes' => 'ILC'];
readfile('https://www.readlet.it/apps/pipol/?'.http_build_query($params));


wordpress

Add a php shortcode to your wordpress theme functions (e.g. <YOUR_WP_SITE>/wp-content/themes/<YOUR_CHILD_THEME>/functions.php). Here you can add some default parameter-value pairs:
function pipol_get_publications($args)
{
  $default = ['aid'     => 'get_publications',
              'output'  => 'html',
              'sort'    => 'type',
              'ui_ajax' => 'true'];

  $params = array_merge($default, $args); // the 2nd will override the 1st

  $content = file_get_contents('https://www.readlet.it/apps/pipol/?'.http_build_query($params));
  return ($content === false ? '' : $content);
}

add_shortcode('pipol_get_publications', 'pipol_get_publications');
Then call the shortcode from your wordpress page. You can specify new parameter-value pairs or override the default pairs already defined in the shortcode:
[pipol_get_publications lang="en" institutes="ILC" authors="Ferro, M." years="2009-" exclude_types="thesis;misc;technical_report" ui_title="Selected publications"]


web api

The following table shows the complete set of the pipol service parameters for customizing the result within your client application:

https://www.readlet.it/apps/pipol/?aid=get_publications
paramvaluedefault valuedescriptionURL-encoded example
lang"it" | "en""it"user interface language (applies to html output).&lang=en
authorssemicolon-separated OR-authors
(@ at the beginning issues a raw-source search)
search only for the specified author(s).&authors=Rossi,M.;Da Vinci,L.
institutessemicolon-separated OR-institutessearch only for the specified institute(s).&institutes=ILC;IFC
yearsdash-separated "from-to" years"1900-"search only in the specified range of years.
If only one year is specified without the dash (e.g. "2000"), then just that year will be used.
&years=2000-2024
titlesemicolon-separated title OR-termsterms to be searched within the title.&title=working memory;LSTM
abstractsemicolon-separated abstract OR-termsterms to be searched within the abstract.&abstract=working memory;LSTM
keywordssemicolon-separated keywords OR-termsterms to be searched within the keywords.&keywords=working memory;LSTM
fulltextsemicolon-separated fulltext OR-termsterms to be searched within the title, the abstract, and the keywords.&fulltext=working memory;LSTM
exclude_idssemicolon-separated record OR-idsexclude the specified record identifier(s) (i.e., people ids).
If the parameter is not specified or its value is empty, then no identifier will be excluded.
&exclude_ids=396348;397012
exclude_typessemicolon-separated record OR-typesexclude the specified record type(s).
If the parameter is not specified or its value is empty, then no type will be excluded.
The available types are:
journal_article
book
book_chapter
edited_volume
editorial
conference_article
conference_misc
patent
technical_report
thesis
misc
&exclude_types=thesis;misc
include_idssemicolon-separated record AND-idsinclude just the specified record identifier(s) (i.e., people ids).
If either the parameter is not specified or its value is empty, then all identifiers will be included.
&include_ids=396348;397012
include_typessemicolon-separated record AND-typesinclude just the specified record type(s).
See exclude_types above for the list of the available types.
If either the parameter is not specified or its value is empty, then all types will be included.
&include_types=thesis;misc
output"html" | "bibtex" |
"json" | "json_count" |
"php" | "php_count"
"html"output mode.
The *_count output gives information about the records_count and the chunks_count, which are useful for third-party applications who need to visualize the final output through pagination (see chunk_* below).
&output=bibtex
sort"year" | "year_type" |
"type" | "type_year"
"year"sort mode.&sort=type
download"false" | "true""false"download as file (applies to php, json, and bibtex output).&download=true
chunk_sizethe size of a chunk in the range [1; 10000]"10000"the number of records output in a single chunk (see also chunk_index below).&chunk_size=50
chunk_indexthe 0-based chunk index"0"show #chunk_size records starting from the (chunk_index*chunk_size)-th record.&chunk_index=0
ui_titlefree textuser interface title (applies to html output).&ui_title=Selected pubblications
ui_scalereal number in the range [0.0; +inf["1.0"user interface size scaling (applies to html output).&ui_scale=0.75
ui_ajax"false" | "true""false"user interface ajax mechanism (applies to html output).&ui_ajax=true
ui_form"false" | "true""false"add a search form to the user interface (implies ui_ajax = "true" and applies to html output).&ui_form=false
ui_idnon-spaced alpha-numeric text"0"unique identifier that will be used by ajax and form functions.
This parameter is useful when multiple pipol instances coexist in the same page (applies to html output).
&ui_id=pipol_1
NOTE: make sure your client is using the "UTF-8" character encoding.

comphys@ilc.cnr.itComPhys lab @ ILC CNR