Aller au contenu

omnilab/pbdb Référence de l’API

Étage
Fournisseur · Omnilab
Version
1.x
Suite de conformité
non branchée
Vérifié en réel
Son README ne le dit pas
Licence
MIT
composer require omnilab/pbdb:1.x-dev

Lue dans les fichiers PHP du paquet au commit a29879e1915d : ses espaces de noms, classes, interfaces et énumérations, leurs constantes, propriétés et méthodes publiques avec leur PHPDoc, et les options que prennent ses fabriques. Rien n’en est exécuté.

Omnilab\Pbdb

  • PbdbSource class

    The Paleobiology Database, through its data service 1.2 (paleobiodb.org/data1.2): a taxon, fossil or living, by its number or its name - its rank, accepted name, common name, whether it is extant, its first and last appearances in the record (their intervals and their ages in millions of years), its occurrences counted, its classification, its ecology (environment, motility, life habit, diet), its first reference; a fossil occurrence by its number; a search of names; and the fossil occurrences of a place and an age (fossils()).

    6 methods · 5 constants

  • PbdbSourceFactory class

    The Paleobiology Database: taxa, fossil occurrences, a search of names, and the fossils of a place and an age (fossils(), outside the contract) - no key needed.

    3 options

Omnilab\Pbdb

PbdbSource class

final class PbdbSource extends HttpSource PbdbSource.php:41

The Paleobiology Database, through its data service 1.2 (paleobiodb.org/data1.2): a taxon, fossil or living, by its number or its name - its rank, accepted name, common name, whether it is extant, its first and last appearances in the record (their intervals and their ages in millions of years), its occurrences counted, its classification, its ecology (environment, motility, life habit, diet), its first reference; a fossil occurrence by its number; a search of names; and the fossil occurrences of a place and an age (fossils()).

A fossil's age is a span of geological time (72.2 to 66 Ma), not a date: fossils() stays outside the contract. It takes an OccurrenceQuery for its place, filters, limit and cursor, refuses a period (from, to), and its entities have a place and no time - the age is in properties (max_ma, min_ma, early_interval, late_interval). occurrences() is not offered: its entities must have a time.

No key, no published rate.

const BASE_URI = 'https://paleobiodb.org/data1.2/'
const MAX_PER_PAGE = 5000

The most occurrences a page of fossils() holds.

const MAX_MA = 'max_ma'

fossils()' own filters: the oldest and the youngest age, in millions of years; a named interval (Maastrichtian, Jurassic).

const MIN_MA = 'min_ma'
const INTERVAL = 'interval'

PbdbSource::__construct()

public function __construct(HttpClientInterface $http, readonly float $radius = 10.0, string $baseUri = self::BASE_URI, array $headers = [], float $throttle = 0.0)
$radius

the circle around a Point, in kilometres, for fossils() when the query gives none

PbdbSource::getName()

public function getName(): string

PbdbSource::capabilities()

public function capabilities(): array

PbdbSource::entity()

public function entity(Identifier|string $id): ?Entity

A taxon by its number (54833, pbdb:54833, txn:54833, its page) or its name (a variant - Felis leo, recombined - gives its taxon, the name among its synonyms); a fossil occurrence by its number (pbdb.occurrence:139292, occ:139292). One call, two for a variant.

public function search(Query $query): Page

PBDB's autocompletion of taxon names (taxa/auto): the taxa whose name begins with the text, the most recorded first, one page (PBDB's autocompletion has no offset; its wildcard list, taxa/list match_name, answered 3 names for "Tyranno%" on 2026-10-16, leaving Tyrannosaurus out). A domain other than taxonomy answers nothing.

PbdbSource::fossils()

public function fossils(OccurrenceQuery $query): Page

The fossil occurrences of a place and an age, outside the contract (a fossil's age is no date): each an entity with its place (where it was found today; its place then in properties) and no time.

A BBox is the box (across the antimeridian, west past east, as PBDB reads it); a Point, the circle of the query's radius (10 km by default) as a polygon of 64 sides; no place, the world. A period (from, to) is refused. Filters: OccurrenceQuery::TAXON (a number, an Identifier of pbdb, or a name: its subordinate taxa included), COUNTRY (ISO 3166-1 alpha-2, or a list), max_ma and min_ma (millions of years, PBDB's overlap rule), interval (a named interval: Maastrichtian, Jurassic). No sort: PBDB's own order (it answers 400 to its age orders on 2026-10-16). Page by offset, its total.

PbdbSourceFactory class

final class PbdbSourceFactory extends SourceFactory PbdbSourceFactory.php:21

The Paleobiology Database: taxa, fossil occurrences, a search of names, and the fossils of a place and an age (fossils(), outside the contract) - no key needed.

options: mailto: 'support@glitchr.io' # in the User-Agent radius_km: 10 # the circle around a Point, for fossils() when the query gives none throttle: 0 # seconds between two calls: PBDB publishes no rate base_uri: 'https://paleobiodb.org/data1.2/'

Options

OptionDefault
radius_km10.0
throttle0.0
base_uriPbdbSource::BASE_URI