ITIS
Table of Contents
Constants
- _TAXONOMIE_GBIF_CACHE_TIMEOUT = 86400 * 30 * 6
- Période de renouvellement du cache de GBIF (6 mois).
- _TAXONOMIE_GBIF_ENDPOINT_BASE_URL = 'https://api.gbif.org/v1/'
- Préfixe des URL du service web de GBIF.org.
- _TAXONOMIE_GBIF_SITE_URL = 'https://www.gbif.org/fr/'
- URL de la page d'accueil du site ITIS.
- _TAXONOMIE_ITIS_CACHE_TIMEOUT = 86400 * 30 * 6
- Période de renouvellement du cache de Wikipedia (365 jours).
- _TAXONOMIE_ITIS_ENDPOINT_BASE_URL = 'http://www.itis.gov/ITISWebService/'
- Préfixe des URL du service web de ITIS.
- _TAXONOMIE_ITIS_REGEXP_RANKNAME = '#(%rank_list%):\s*(([A-Z]\s+)?[\w-]+)\s*(.+)\s*\[(\d+)\]\s*$#'
- Ligne d'un fichier ITIS hiérachie généré.
- _TAXONOMIE_ITIS_SITE_URL = 'http://www.itis.gov'
- URL de la page d'accueil du site ITIS.
- _TAXONOMIE_ITIS_TAXON_BASE_URL = 'http://www.itis.gov/servlet/SingleRpt/SingleRpt?search_topic=TSN&search_value='
- URL de base d'une page d'un taxon sur le site d'ITIS.
Functions
- genie_taxonomie_actualiser_itis_dist() : int
- Ce CRON permet de vérifier si les fichiers ITIS ayant servis à créer la base de taxons initiale ont été modifiés et si oui de déclencher une mise à niveau des taxons.
- gbif_get_vernaculars() : array<string|int, mixed>
- Renvoie les noms vernaculaires dans l'ensemble des langages supportés par Taxonomie pour un taxon identifié par son nom scientifique.
- gbif_get_taxonkey() : int
- Renvoie l'identifiant unique GBIF nommé taxonKey à partir du nom scientique du taxon.
- gbif_find_language() : string
- Renvoie la langue telle que le service ITIS la désigne à partir du code de langue de SPIP.
- gbif_credit() : string
- Construit la phrase de crédits précisant que les données fournies proviennent de la base de données d'ITIS.
- itis_search_tsn() : array<string|int, mixed>
- Recherche un taxon dans la base ITIS par son nom commun ou scientifique et retourne son identifiant unique nommé TSN ou 0 si le taxon n'existe pas.
- itis_get_record() : array<string|int, mixed>
- Renvoie l'ensemble des informations sur un taxon désigné par son identifiant unique TSN.
- itis_get_information() : array<string|int, mixed>|int|string
- Renvoie les informations demandées sur un taxon désigné par son identifiant unique TSN.
- itis_list_vernaculars() : array<string|int, mixed>
- Renvoie la liste des noms communs définis pour certains taxons dans une langue donnée mais tout règne confondu.
- itis_read_hierarchy() : array<string|int, mixed>
- Lit le fichier hiérarchique ITIS des taxons d'un règne et renvoie la liste des taxons retenus.
- itis_read_vernaculars() : array<string|int, mixed>
- Lit le fichier des noms communs - tout règne confondu - d'une langue donnée et renvoie un tableau de tous ces noms indexés par leur TSN.
- itis_read_ranks() : array<string|int, mixed>
- Lit le fichier des rangs d'un règne donné et construit la hiérarchie de ces mêmes rangs.
- itis_find_language() : string
- Renvoie la langue telle que le service ITIS la désigne à partir du code de langue de SPIP.
- itis_credit() : string
- Construit la phrase de crédits précisant que les données fournies proviennent de la base de données d'ITIS.
- itis_review_sha() : array<string|int, mixed>
- Calcule le sha de chaque fichier ITIS fournissant des données, à savoir, ceux des règnes et ceux des noms communs par langue.
Constants
_TAXONOMIE_GBIF_CACHE_TIMEOUT
Période de renouvellement du cache de GBIF (6 mois).
public
mixed
_TAXONOMIE_GBIF_CACHE_TIMEOUT
= 86400 * 30 * 6
_TAXONOMIE_GBIF_ENDPOINT_BASE_URL
Préfixe des URL du service web de GBIF.org.
public
mixed
_TAXONOMIE_GBIF_ENDPOINT_BASE_URL
= 'https://api.gbif.org/v1/'
_TAXONOMIE_GBIF_SITE_URL
URL de la page d'accueil du site ITIS.
public
mixed
_TAXONOMIE_GBIF_SITE_URL
= 'https://www.gbif.org/fr/'
Cette URL est fournie dans les credits.
_TAXONOMIE_ITIS_CACHE_TIMEOUT
Période de renouvellement du cache de Wikipedia (365 jours).
public
mixed
_TAXONOMIE_ITIS_CACHE_TIMEOUT
= 86400 * 30 * 6
_TAXONOMIE_ITIS_ENDPOINT_BASE_URL
Préfixe des URL du service web de ITIS.
public
mixed
_TAXONOMIE_ITIS_ENDPOINT_BASE_URL
= 'http://www.itis.gov/ITISWebService/'
_TAXONOMIE_ITIS_REGEXP_RANKNAME
Ligne d'un fichier ITIS hiérachie généré.
public
mixed
_TAXONOMIE_ITIS_REGEXP_RANKNAME
= '#(%rank_list%):\s*(([A-Z]\s+)?[\w-]+)\s*(.+)\s*\[(\d+)\]\s*$#'
Il est indispensable de respecter les majuscules des noms de groupe pour éviter de matcher les suborder, infrakingdom...
_TAXONOMIE_ITIS_SITE_URL
URL de la page d'accueil du site ITIS.
public
mixed
_TAXONOMIE_ITIS_SITE_URL
= 'http://www.itis.gov'
Cette URL est fournie dans les credits.
_TAXONOMIE_ITIS_TAXON_BASE_URL
URL de base d'une page d'un taxon sur le site d'ITIS.
public
mixed
_TAXONOMIE_ITIS_TAXON_BASE_URL
= 'http://www.itis.gov/servlet/SingleRpt/SingleRpt?search_topic=TSN&search_value='
Cette URL est fournie dans les credits.
Functions
genie_taxonomie_actualiser_itis_dist()
Ce CRON permet de vérifier si les fichiers ITIS ayant servis à créer la base de taxons initiale ont été modifiés et si oui de déclencher une mise à niveau des taxons.
genie_taxonomie_actualiser_itis_dist(int $last) : int
Etant donné que les sha des fichiers sont enregistrés dans la meta de chaque règne, la fonction compare ces valeurs aux sha des fichiers embarqués dans le plugin. Les fichiers des taxons de chaque règne ainsi que les fichiers de traductions sont pris en compte. Si un fichier a changé on recharge le ou les règnes concernés.
Parameters
- $last : int
-
Timestamp de la date de dernier appel de la tâche.
Tags
Return values
int —Renvoie toujours la valeur 1
gbif_get_vernaculars()
Renvoie les noms vernaculaires dans l'ensemble des langages supportés par Taxonomie pour un taxon identifié par son nom scientifique.
gbif_get_vernaculars(array<string|int, mixed> $search) : array<string|int, mixed>
Parameters
- $search : array<string|int, mixed>
-
Tableau contenant le taxon à chercher:
taxon_key
: identifiant numérique unique GBIF.tsn
: identifiant ITIS du taxon, le TSN. Il sert uniquement à créer le fichier cache.
Tags
Return values
array<string|int, mixed> —Tableau des noms vernaculaires indexés par le code spip du langage.
gbif_get_taxonkey()
Renvoie l'identifiant unique GBIF nommé taxonKey à partir du nom scientique du taxon.
gbif_get_taxonkey(string $nom_scientifique) : int
Parameters
- $nom_scientifique : string
-
Chaine de recherche représentant le nom scientifique du taxon.
Tags
Return values
int —Identifiant numérique unique du taxon ou 0 sinon.
gbif_find_language()
Renvoie la langue telle que le service ITIS la désigne à partir du code de langue de SPIP.
gbif_find_language(string $spip_language) : string
Parameters
- $spip_language : string
-
Code de langue de SPIP. Prend les valeurs
fr
,en
,es
, etc. La variable globale$GLOBALS['itis_language']
définit le transcodage langue ITIS vers code SPIP.
Return values
string —Langue au sens d'ITIS en minuscules - french
, english
, spanish
- ou chaine vide sinon.
gbif_credit()
Construit la phrase de crédits précisant que les données fournies proviennent de la base de données d'ITIS.
gbif_credit(int $id_taxon, array<string|int, mixed> $informations) : string
Parameters
- $id_taxon : int
-
Id du taxon nécessaire pour construire l'url de la page GBIF.
- $informations : array<string|int, mixed>
-
Tableau des informations complémentaires sur la source. Pour GBIF ce tableau est vide.
Return values
string —Phrase de crédit.
itis_search_tsn()
Recherche un taxon dans la base ITIS par son nom commun ou scientifique et retourne son identifiant unique nommé TSN ou 0 si le taxon n'existe pas.
itis_search_tsn(string $action, string $search[, null|bool $strict = true ]) : array<string|int, mixed>
Selon le critère de correspondance de la recherche (stricte ou pas) la fonction retourne un ou plusieurs taxons.
Parameters
- $action : string
-
Recherche par nom commun ou par nom scientifique. Prend les valeurs
commonname
,scientificname
oucommonnamebegin
. - $search : string
-
Nom à rechercher précisément. Seul le taxon dont le nom coincidera exactement sera retourné.
- $strict : null|bool = true
-
true
indique une correspondance stricte de la chaine recherchée ce qui a pour conséquence de renvoyer une seule valeur de TSN.false
indique une correspondance partielle et peut donc renvoyer plusieurs TSN.
Tags
Return values
array<string|int, mixed> —Si la recherche est stricte, la fonction retourne l'identifiant unique TSN dans la base ITIS ou 0 si la recherche échoue. Sinon, la fonction retourne une liste de couples de valeurs (TNS, valeur trouvée).
itis_get_record()
Renvoie l'ensemble des informations sur un taxon désigné par son identifiant unique TSN.
itis_get_record(int $tsn) : array<string|int, mixed>
Parameters
- $tsn : int
-
Identifiant unique du taxon dans la base ITIS, le TSN
Tags
Return values
array<string|int, mixed> —Si le taxon est trouvé, le tableau renvoyé possède les index associatifs suivants:
nom_scientifique
: le nom scientifique complet du taxon tel qu'il doit être affiché (avec capitales).rang
: le nom anglais du rang taxonomique du taxonregne
: le nom scientifique du règne du taxon en minusculestsn_parent
: le TSN du parent du taxon ou 0 si le taxon est un règneauteur
: la citation d’auteurs et la date de publicationnom_commun
: un tableau indexé par langue (au sens d'ITIS en minuscules,english
,french
,spanish
...) fournissant le nom commun dans chacune des languescredibilite
: Information sur la crédibilité des informations du taxonusage_valide
: Indication sur la validité de l'utilisation du taxonzone_geographique
: un tableau indexé par langue uniqueenglish
des zones géographiques où le taxon est localisé. Les zones sont libellées en anglais.
itis_get_information()
Renvoie les informations demandées sur un taxon désigné par son identifiant unique TSN.
itis_get_information(string $action, int $tsn) : array<string|int, mixed>|int|string
Parameters
- $action : string
-
Type d'information demandé. Prend les valeurs
scientificname
: le nom scientifique du taxonkingdomname
: le règne du taxonparent
: le taxon parent dont son TSNrankname
: le rang taxonomique du taxonauthor
: le ou les auteurs du taxoncoremetadata
: les métadonnées (à vérifier)experts
: les experts du taxoncommonnames
: le ou les noms communsothersources
: les sources d'information sur le taxonhierarchyfull
: la hiérarchie complète jusqu'au taxon et ses descendants directshierarchyup
: la hiérarchie limitée au parent direct
- $tsn : int
-
Identifiant unique du taxon dans la base ITIS (TSN)
Tags
Return values
array<string|int, mixed>|int|string —Chaine ou tableau caractéristique du type d'information demandé.
itis_list_vernaculars()
Renvoie la liste des noms communs définis pour certains taxons dans une langue donnée mais tout règne confondu.
itis_list_vernaculars(string $language) : array<string|int, mixed>
Peu de taxons sont traduits dans la base ITIS, seules le français, l'anglais et l'espagnol sont réellement utilisables. Pour l'anglais, le nombre de taxons est très important car les 4 règnes non supportés par le plugin Taxonomie sont fortement traduits.
Parameters
- $language : string
-
Langue au sens d'ITIS écrite en minuscules. Vaut
french
,english
,spanish
...
Tags
Return values
array<string|int, mixed> —Tableau des noms communs associés à leur TSN. Le format du tableau est le suivant:
- l'index représente le TSN du taxon,
- la valeur fournit le tableau des noms communs, chaque nom étant préfixé du code de langue
de SPIP (ex:
[fr]bactéries
)
itis_read_hierarchy()
Lit le fichier hiérarchique ITIS des taxons d'un règne et renvoie la liste des taxons retenus.
itis_read_hierarchy(string $kingdom, array<string|int, mixed> $ranks_hierarchy[, null|string &$sha_file = '' ]) : array<string|int, mixed>
Parameters
- $kingdom : string
-
Nom scientifique du règne en lettres minuscules :
animalia
,plantae
,fungi
. - $ranks_hierarchy : array<string|int, mixed>
-
Liste des rangs disponibles pour le règne concerné structurée comme une hiérarchie du règne aux rangs inférieurs. Cette liste contient tous les rangs principaux, secondaires et intercalaires. Le tableau est de la forme [nom anglais du rang en minuscules] = détails du rang
- $sha_file : null|string = ''
-
Sha calculé à partir du fichier de taxons correspondant au règne choisi. Le sha est retourné par la fonction afin d'être stocké par le plugin.
Tags
Return values
array<string|int, mixed> —Chaque élément du tableau est un taxon. Un taxon est un tableau associatif dont chaque
index correspond à un champ de la table spip_taxons
. Le tableau est ainsi prêt pour une
insertion en base de données.
itis_read_vernaculars()
Lit le fichier des noms communs - tout règne confondu - d'une langue donnée et renvoie un tableau de tous ces noms indexés par leur TSN.
itis_read_vernaculars(string $language[, null|string &$sha_file = '' ]) : array<string|int, mixed>
La base de données ITIS contient souvent plusieurs traductions d'une même langue pour un taxon donné. Cette fonction met à jour séquentiellement les traductions sans s'en préoccuper. De fait, c'est la dernière traduction rencontrée qui sera fournie dans le tableau de sortie.
Parameters
- $language : string
-
Langue au sens d'ITIS écrite en minuscules. Vaut
french
,english
,spanish
etc. - $sha_file : null|string = ''
-
Sha calculé à partir du fichier des noms communs choisi. Le sha est retourné par la fonction afin d'être stocké par le plugin.
Tags
Return values
array<string|int, mixed> —Tableau des noms communs d'une langue donnée indexé par TSN. Le nom commun est préfixé
par le tag de langue SPIP pour être utilisé simplement dans une balise <multi>
.
itis_read_ranks()
Lit le fichier des rangs d'un règne donné et construit la hiérarchie de ces mêmes rangs.
itis_read_ranks(string $kingdom[, null|string &$sha_file = '' ]) : array<string|int, mixed>
Parameters
- $kingdom : string
-
Nom scientifique du règne en lettres minuscules :
animalia
,plantae
,fungi
. - $sha_file : null|string = ''
-
Sha calculé à partir du fichier de taxons correspondant au règne choisi. Le sha est retourné par la fonction afin d'être stocké par le plugin.
Return values
array<string|int, mixed> —Tableau des rangs identifiés par leur nom scientifique en anglais et organisé comme une hiérarchie du règne au rang de plus bas niveau.
itis_find_language()
Renvoie la langue telle que le service ITIS la désigne à partir du code de langue de SPIP.
itis_find_language(string $spip_language) : string
Parameters
- $spip_language : string
-
Code de langue de SPIP. Prend les valeurs
fr
,en
,es
, etc. La variable globale$GLOBALS['itis_language']
définit le transcodage langue ITIS vers code SPIP.
Tags
Return values
string —Langue au sens d'ITIS en minuscules - french
, english
, spanish
- ou chaine vide sinon.
itis_credit()
Construit la phrase de crédits précisant que les données fournies proviennent de la base de données d'ITIS.
itis_credit(int $id_taxon[, null|array<string|int, mixed> $informations = [] ]) : string
Parameters
- $id_taxon : int
-
Id du taxon nécessaire pour construire l'url de la page ITIS fournissant une information complète sur le taxon.
- $informations : null|array<string|int, mixed> = []
-
Tableau des informations complémentaires sur la source. Pour ITIS ce tableau est vide.
Return values
string —Phrase de crédit.
itis_review_sha()
Calcule le sha de chaque fichier ITIS fournissant des données, à savoir, ceux des règnes et ceux des noms communs par langue.
itis_review_sha() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —Tableau à deux index principaux:
taxons
: tableau associatif indexé par règnetraductions
: tableau associatif par code de langue SPIP