Resource
in package
Maps ARCHE resource metadata to a BibLaTeX bibliographic entry.
Fro BibTeX/BibLaTeX/CSL bibliographic entry reference see:
- https://www.bibtex.com/g/bibtex-format/#fields
- chapter 8 of http://tug.ctan.org/info/bibtex/tamethebeast/ttb_en.pdf
- https://mirror.kumi.systems/ctan/macros/latex/contrib/biblatex/doc/biblatex.pdf
- https://docs.citationstyles.org/en/stable/specification.html#appendix-iv-variables
Tags
Table of Contents
Constants
- CSL_SCHEMA_URL = 'https://raw.githubusercontent.com/citation-style-language/schema/refs/heads/master/schemas/input/csl-data.json'
- MIME_BIBLATEX = 'application/x-bibtex'
- MIME_CSL_JSON = 'application/vnd.citationstyles.csl+json'
- MIME_JSON = 'application/json'
- NO_OVERRIDE = 'NOOVERRIDE'
- TYPE_CONST = 'const'
- TYPE_CURRENT_DATE = 'currentDate'
- TYPE_DATE = 'date'
- TYPE_ID = 'id'
- TYPE_LITERAL = 'literal'
- TYPE_NOT_LINKED_ID = 'notLinkedId'
- TYPE_PERSON = 'person'
- TYPE_URL = 'url'
Properties
- $config : object
- $lang : string
- $log : LoggerInterface|null
- $mapping : object
- $meta : DatasetInterface
- $node : TermInterface
- $res : RepoResourceInterface
- $schema : Schema
Methods
- __construct() : mixed
- cacheHandler() : ResponseCacheItem
- getBiblatex() : string
- getCsl() : array<string|int, mixed>
- applyOverrides() : void
- applyOverridesBiblatex() : void
- applyOverridesCsl() : mixed
- biblatex2Csl() : string|null
- biblatexPersons2CslPersons() : array<string|int, array<string, string>>
- csl2Biblatex() : string|null
- escapeBiblatex() : string
- formatAll() : string
- Gathers all values of given properties.
- formatKey() : string
- formatParent() : string|array<string|int, mixed>|null
- formatPerson() : array<string, string>
- formatPersons() : array<string|int, array<string, string>>
- formatProperty() : string|array<string|int, mixed>|null
- getCslPropertyType() : string
- getLiteral() : string|null
Constants
CSL_SCHEMA_URL
public
mixed
CSL_SCHEMA_URL
= 'https://raw.githubusercontent.com/citation-style-language/schema/refs/heads/master/schemas/input/csl-data.json'
MIME_BIBLATEX
public
mixed
MIME_BIBLATEX
= 'application/x-bibtex'
MIME_CSL_JSON
public
mixed
MIME_CSL_JSON
= 'application/vnd.citationstyles.csl+json'
MIME_JSON
public
mixed
MIME_JSON
= 'application/json'
NO_OVERRIDE
public
mixed
NO_OVERRIDE
= 'NOOVERRIDE'
TYPE_CONST
public
mixed
TYPE_CONST
= 'const'
TYPE_CURRENT_DATE
public
mixed
TYPE_CURRENT_DATE
= 'currentDate'
TYPE_DATE
public
mixed
TYPE_DATE
= 'date'
TYPE_ID
public
mixed
TYPE_ID
= 'id'
TYPE_LITERAL
public
mixed
TYPE_LITERAL
= 'literal'
TYPE_NOT_LINKED_ID
public
mixed
TYPE_NOT_LINKED_ID
= 'notLinkedId'
TYPE_PERSON
public
mixed
TYPE_PERSON
= 'person'
TYPE_URL
public
mixed
TYPE_URL
= 'url'
Properties
$config
private
object
$config
$lang
private
string
$lang
$log
private
LoggerInterface|null
$log
= null
$mapping
private
object
$mapping
$meta
private
DatasetInterface
$meta
$node
private
TermInterface
$node
$res
private
RepoResourceInterface
$res
$schema
private
Schema
$schema
Methods
__construct()
public
__construct(RepoResourceInterface $res, object $config[, LoggerInterface|null $log = null ]) : mixed
Parameters
- $res : RepoResourceInterface
- $config : object
- $log : LoggerInterface|null = null
cacheHandler()
public
static cacheHandler(RepoResourceInterface $res, array<string|int, mixed> $param, object $config[, LoggerInterface|null $log = null ]) : ResponseCacheItem
Parameters
- $res : RepoResourceInterface
- $param : array<string|int, mixed>
- $config : object
- $log : LoggerInterface|null = null
Return values
ResponseCacheItemgetBiblatex()
public
getBiblatex(string $lang[, string|null $override = null ]) : string
Parameters
- $lang : string
- $override : string|null = null
Return values
stringgetCsl()
public
getCsl(string $lang[, string|null $override = null ][, object|null $mapping = null ]) : array<string|int, mixed>
Parameters
- $lang : string
- $override : string|null = null
- $mapping : object|null = null
Return values
array<string|int, mixed>applyOverrides()
private
applyOverrides(array<string, mixed> &$fields[, string|null $override = null ]) : void
Parameters
- $fields : array<string, mixed>
- $override : string|null = null
applyOverridesBiblatex()
private
applyOverridesBiblatex(array<string, mixed> &$fields[, string|null $biblatex = null ]) : void
Parameters
- $fields : array<string, mixed>
- $biblatex : string|null = null
applyOverridesCsl()
private
applyOverridesCsl(array<string, mixed> &$fields, array<string, mixed> $csl) : mixed
Parameters
- $fields : array<string, mixed>
- $csl : array<string, mixed>
biblatex2Csl()
private
biblatex2Csl(string $dict, string $val) : string|null
Parameters
- $dict : string
- $val : string
Return values
string|nullbiblatexPersons2CslPersons()
private
biblatexPersons2CslPersons(string $src) : array<string|int, array<string, string>>
Parameters
- $src : string
Return values
array<string|int, array<string, string>>csl2Biblatex()
private
csl2Biblatex(string $dict, string $val) : string|null
Parameters
- $dict : string
- $val : string
Return values
string|nullescapeBiblatex()
private
escapeBiblatex(string $value) : string
Parameters
- $value : string
Return values
stringformatAll()
Gathers all values of given properties.
private
formatAll(array<string|int, string> $properties[, TermInterface|null $resource = null ][, bool $onlyUrl = false ][, string|null $nmsp = null ][, bool $reqNmsp = false ]) : string
If a given property has at least one literal value in the preferred language, literal values in other language are discarded.
Empty values are discarded.
Parameters
- $properties : array<string|int, string>
- $resource : TermInterface|null = null
- $onlyUrl : bool = false
- $nmsp : string|null = null
- $reqNmsp : bool = false
Return values
stringformatKey()
private
formatKey(object $keyCfg) : string
Parameters
- $keyCfg : object
Return values
stringformatParent()
private
formatParent(string $key, object $definition) : string|array<string|int, mixed>|null
Parameters
- $key : string
- $definition : object
Return values
string|array<string|int, mixed>|nullformatPerson()
private
formatPerson(TermInterface $person) : array<string, string>
Parameters
- $person : TermInterface
Return values
array<string, string>formatPersons()
private
formatPersons(array<string|int, string> $properties[, TermInterface|string|null $resource = null ]) : array<string|int, array<string, string>>
Parameters
- $properties : array<string|int, string>
- $resource : TermInterface|string|null = null
Return values
array<string|int, array<string, string>>formatProperty()
private
formatProperty(string $key, mixed $definition) : string|array<string|int, mixed>|null
Parameters
- $key : string
- $definition : mixed
Return values
string|array<string|int, mixed>|nullgetCslPropertyType()
private
getCslPropertyType(string $property) : string
Parameters
- $property : string
Return values
stringgetLiteral()
private
getLiteral(QuadTemplate|PredicateTemplate $tmpl) : string|null
Parameters
- $tmpl : QuadTemplate|PredicateTemplate