@Component public class IpniService extends java.lang.Object implements IIpniService
Modifier and Type | Class and Description |
---|---|
static class |
IpniService.IpniRank |
IIpniService.DelimitedFormat
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ABBREVIATION |
static java.lang.String |
ALTERNATIVE_ABBREVIATIONS |
static java.lang.String |
ALTERNATIVE_NAMES |
static java.lang.String |
AUTHORS |
static java.lang.String |
AUTHORS_ROLE |
static java.lang.String |
BASIONYM |
static java.lang.String |
BASIONYM_AUTHOR |
static java.lang.String |
BPH_NUMBER |
static java.lang.String |
COLLATION |
static java.lang.String |
DATE |
static java.lang.String |
DATE_TYPE_CODE |
static java.lang.String |
DATE_TYPE_STRING |
static java.lang.String |
DATES |
static java.lang.String |
DEFAULT_AUTHOR_FORENAME |
static java.lang.String |
DEFAULT_AUTHOR_NAME |
static java.lang.String |
DEFAULT_AUTHOR_SURNAME |
static java.lang.String |
EDITION |
static java.lang.String |
EXAMPLE_OF_NAME_PUBLISHED |
static java.lang.String |
FAMILY |
static java.lang.String |
FULL_NAME_WITHOUT_FAMILY_AND_AUTHORS |
static java.lang.String |
GENUS |
static java.lang.String |
HYBRID |
static java.lang.String |
ID |
static java.lang.String |
IN_PUBLICATION_FACADE |
static java.lang.String |
INFRA_GENUS |
static java.lang.String |
INFRA_SPECIFIC |
static java.lang.String |
ISBN |
static java.lang.String |
ISSN |
static java.lang.String |
LC_NUMBER |
static java.lang.String |
NAME_NOTES |
static java.lang.String |
NAME_SOURCE |
static java.lang.String |
NAME_STATUS |
static java.lang.String |
PLACE |
static java.lang.String |
PRECEDED_BY |
static java.lang.String |
PUBLICATION |
static java.lang.String |
PUBLICATION_AUTHOR_TEAM |
static java.lang.String |
PUBLICATION_YEAR_FULL |
static java.lang.String |
PUBLISHING_AUTHOR |
static java.lang.String |
RANK |
static java.lang.String |
REMARKS |
static java.lang.String |
REPLACED_SYNONYM |
static java.lang.String |
SPECIES |
static java.lang.String |
STANDARD_FORM |
static java.lang.String |
TAXON_GROUPS |
static java.lang.String |
TDWG_ABBREVIATION |
static java.lang.String |
TITLE |
static java.lang.String |
TL2_AUTHOR |
static java.lang.String |
TL2_NUMBER |
static java.lang.String |
VERSION |
ADVANCED_NAME_SERVICE_URL, AUTHOR_SERVICE_URL, ID_NAMESEARCH_SERVICE_URL, ID_PUBLICATION_SERVICE_URL, PUBLICATION_SERVICE_URL, SIMPLE_NAME_SERVICE_URL, uuidAlternativeNames, uuidIpni
Constructor and Description |
---|
IpniService() |
Modifier and Type | Method and Description |
---|---|
java.util.List<Person> |
getAuthors(java.lang.String abbreviation,
java.lang.String surname,
java.lang.String forename,
java.lang.String isoCountry,
ICdmRepository services,
IpniServiceAuthorConfigurator config)
Returns a list of persons (authors) defined by their abbreviation, surname, forename and/or isoCountry.
|
java.util.List<IBotanicalName> |
getNamesAdvanced(java.lang.String family,
java.lang.String genus,
java.lang.String species,
java.lang.String infraFamily,
java.lang.String infraGenus,
java.lang.String infraSpecies,
java.lang.String authorAbbrev,
java.lang.String publicationTitle,
IpniService.IpniRank rankToReturn,
IpniServiceNamesConfigurator config,
ICdmRepository services)
Returns a list of names matching the relevant parameters according to the IPNI full search function.
|
java.util.List<IBotanicalName> |
getNamesAdvanced(java.lang.String family,
java.lang.String genus,
java.lang.String species,
java.lang.String infraFamily,
java.lang.String infraGenus,
java.lang.String infraSpecies,
java.lang.String authorAbbrev,
java.lang.String publicationTitle,
Rank rankInRangeToReturn,
IpniServiceNamesConfigurator config,
ICdmRepository services)
As
#getNamesAdvanced(String, String, String, String, String, String, String, Boolean, Boolean, String, Boolean, Boolean, Boolean, IpniRank, Boolean, IpniServiceNamesConfigurator, ICdmRepository)
but using CDM Rank instead of IpniRank. |
java.io.InputStream |
getNamesById(java.lang.String id)
Returns the name matching the id parameter according to the IPNI Quick search function.
|
java.util.List<IBotanicalName> |
getNamesSimple(java.lang.String wholeName,
ICdmRepository repository,
IpniServiceNamesConfigurator config)
Returns a list of names matching the wholeName parameter according to the IPNI Quick search function.
|
java.util.List<Reference> |
getPublications(java.lang.String title,
java.lang.String abbreviation,
ICdmRepository services,
IpniServicePublicationConfigurator config)
Returns a list of publications matching the title and/or the abbreviation parameter according to the IPNI Publication search function.
|
java.io.InputStream |
getPublicationsById(java.lang.String id)
Returns the publication matching the id parameter according to the IPNI Quick search function.
|
java.net.URL |
getServiceUrl(java.lang.String url)
The service url
|
java.io.InputStream |
queryServiceForID(java.lang.String request,
java.net.URL serviceUrl) |
public static java.lang.String ID
public static java.lang.String VERSION
public static final java.lang.String REMARKS
public static final java.lang.String FULL_NAME_WITHOUT_FAMILY_AND_AUTHORS
public static final java.lang.String AUTHORS
public static final java.lang.String FAMILY
public static final java.lang.String GENUS
public static final java.lang.String INFRA_GENUS
public static final java.lang.String SPECIES
public static final java.lang.String INFRA_SPECIFIC
public static final java.lang.String HYBRID
public static final java.lang.String RANK
public static final java.lang.String BASIONYM_AUTHOR
public static final java.lang.String PUBLISHING_AUTHOR
public static final java.lang.String PUBLICATION
public static final java.lang.String COLLATION
public static final java.lang.String PUBLICATION_YEAR_FULL
public static final java.lang.String NAME_STATUS
public static final java.lang.String BASIONYM
public static final java.lang.String REPLACED_SYNONYM
public static final java.lang.String STANDARD_FORM
public static final java.lang.String DEFAULT_AUTHOR_FORENAME
public static final java.lang.String DEFAULT_AUTHOR_SURNAME
public static final java.lang.String TAXON_GROUPS
public static final java.lang.String DATES
public static final java.lang.String ALTERNATIVE_NAMES
public static final java.lang.String DEFAULT_AUTHOR_NAME
public static final java.lang.String NAME_NOTES
public static final java.lang.String NAME_SOURCE
public static final java.lang.String DATE_TYPE_CODE
public static final java.lang.String DATE_TYPE_STRING
public static final java.lang.String ALTERNATIVE_ABBREVIATIONS
public static final java.lang.String EXAMPLE_OF_NAME_PUBLISHED
public static final java.lang.String ABBREVIATION
public static final java.lang.String TITLE
public static final java.lang.String BPH_NUMBER
public static final java.lang.String ISBN
public static final java.lang.String ISSN
public static final java.lang.String AUTHORS_ROLE
public static final java.lang.String EDITION
public static final java.lang.String DATE
public static final java.lang.String IN_PUBLICATION_FACADE
public static final java.lang.String LC_NUMBER
public static final java.lang.String PLACE
public static final java.lang.String PUBLICATION_AUTHOR_TEAM
public static final java.lang.String PRECEDED_BY
public static final java.lang.String TL2_AUTHOR
public static final java.lang.String TL2_NUMBER
public static final java.lang.String TDWG_ABBREVIATION
public java.util.List<Person> getAuthors(java.lang.String abbreviation, java.lang.String surname, java.lang.String forename, java.lang.String isoCountry, ICdmRepository services, IpniServiceAuthorConfigurator config)
IIpniService
minimal
and short
format returns the
standard form as the nomenclatural title, the default author forename as the givenname and
the default author surname as the family name of the returned person
object.
The id and the version are added as source
where the id is the id,
the namespace is "Author" and the microcitation is the version. If an a database connection is passed
(appConig is not null) the database is searched for an existing citation representing the IPNI
webservice. If not exists a new such reference with the given ipni uuid
is created and stored
in the database.
If no database connection is passed a new reference is created each time with a random UUID to avoid duplicate
key problems when trying to save the returned objects.
The minimal
format returns the same object as the short
format
but additionally the date is evaluated as lifespan.
Also an extension of type
ExtensionType.INFORMAL_CATEGORY
is added for each semicolon separated part of the 'Alternative names' result.
TODO make alternative name or alternative title an own ExtensionType
The classic
format at the moment returns the same object as the extended
format
as the remaining parameters are not yet implemented.
getAuthors
in interface IIpniService
public java.io.InputStream queryServiceForID(java.lang.String request, java.net.URL serviceUrl)
public java.util.List<IBotanicalName> getNamesAdvanced(java.lang.String family, java.lang.String genus, java.lang.String species, java.lang.String infraFamily, java.lang.String infraGenus, java.lang.String infraSpecies, java.lang.String authorAbbrev, java.lang.String publicationTitle, Rank rankInRangeToReturn, IpniServiceNamesConfigurator config, ICdmRepository services)
IIpniService
#getNamesAdvanced(String, String, String, String, String, String, String, Boolean, Boolean, String, Boolean, Boolean, Boolean, IpniRank, Boolean, IpniServiceNamesConfigurator, ICdmRepository)
but using CDM Rank instead of IpniRank. The CDM Rank is transformed into an IpniRank so it returns all
names that are in the same IpniRange as the CDM rank. Therefore when using CDM rank 'variety' also a
'subspecies' may be returned as 'variety' and 'subspecies' are within the same IpniRange 'Infraspecific'.getNamesAdvanced
in interface IIpniService
public java.util.List<IBotanicalName> getNamesAdvanced(java.lang.String family, java.lang.String genus, java.lang.String species, java.lang.String infraFamily, java.lang.String infraGenus, java.lang.String infraSpecies, java.lang.String authorAbbrev, java.lang.String publicationTitle, IpniService.IpniRank rankToReturn, IpniServiceNamesConfigurator config, ICdmRepository services)
IIpniService
http://www.ipni.org/ipni/delimited_help.html
for further
information on the supported data formats.
getNamesAdvanced
in interface IIpniService
public java.util.List<IBotanicalName> getNamesSimple(java.lang.String wholeName, ICdmRepository repository, IpniServiceNamesConfigurator config)
IIpniService
http://www.uk.ipni.org/sample_searches.html#name_quick
for further explanation about the IPNI Quick search.
http://www.ipni.org/ipni/delimited_help.html
for further
information on the supported data formats.
getNamesSimple
in interface IIpniService
public java.util.List<Reference> getPublications(java.lang.String title, java.lang.String abbreviation, ICdmRepository services, IpniServicePublicationConfigurator config)
IIpniService
http://www.uk.ipni.org/sample_searches.html#publication_examples
for further explanation about the IPNI Publication search.
getPublications
in interface IIpniService
services
- to retrieve data from the database. Needed to attach the same 'IPNI' reference to each of the resulting objects.
Otherwise the resulting IPNI reference will be duplicate for each result and each time the service is called.config
- for finetuning, maybe nullpublic java.net.URL getServiceUrl(java.lang.String url)
getServiceUrl
in interface IIpniService
public java.io.InputStream getNamesById(java.lang.String id)
IIpniService
http://www.uk.ipni.org/sample_searches.html#name_quick
for further explanation about the IPNI Quick search.
getNamesById
in interface IIpniService
public java.io.InputStream getPublicationsById(java.lang.String id)
IIpniService
http://www.uk.ipni.org/sample_searches.html#name_quick
for further explanation about the IPNI Quick search.
getPublicationsById
in interface IIpniService
Copyright © 2007-2020 EDIT. All Rights Reserved.