VuFind API Documentation

SolrOverdrive extends SolrMarc
in package
implements LoggerAwareInterface Uses LoggerAwareTrait

VuFind Record Driver for SolrOverdrive Records

Tags
category

VuFind

author

Demian Katz demian.katz@villanova.edu

author

Brent Palmer brent-palmer@icpl.org

license

http://opensource.org/licenses/gpl-2.0.php GNU General Public License

link

Wiki

Interfaces, Classes, Traits and Enums

LoggerAwareInterface

Table of Contents

$config  : object
Overdrive Configuration Object
$connector  : OverdriveConnector
Overdrive Connector
$containerLinking  : bool
Should we use hierarchy fields for simple container-child records linking?
$dbServiceManager  : PluginManager
Database service plugin manager
$explainEnabled  : bool
If the explain feature is enabled
$extraDetails  : array<string|int, mixed>
For storing extra data with record
$fields  : array<string|int, mixed>
Raw data
$forbiddenSnippetFields  : array<string|int, mixed>
These Solr fields should NEVER be used for snippets. (We exclude author and title because they are already covered by displayed fields; we exclude spelling because it contains lots of fields jammed together and may cause glitchy output; we exclude ID because random numbers are not helpful).
$hierarchyDriver  : AbstractBase
Hierarchy driver for current object
$hierarchyDriverManager  : PluginManager
Hierarchy driver plugin manager
$highlight  : bool
Should we highlight fields in search results?
$highlightDetails  : array<string|int, mixed>
Highlighting details
$holdLogic  : Holds
Hold logic
$ils  : Connection
ILS connection
$ilsBackends  : array<string|int, string>
Backends with ILS integration.
$labels  : array<string|int, mixed>
Labels for the record
$lazyMarcReader  : mixed
MARC reader. Access only via getMarcReader() as this is initialized lazily.
$mainConfig  : Config
Main VuFind configuration
$marcReaderClass  : string
MARC reader class to use.
$otherVersions  : RecordCollectionInterface
Cached result of other versions (work expressions)
$otherVersionsCount  : int
Cached result of other versions (work expressions) count
$preferredSnippetFields  : array<string|int, mixed>
These Solr fields should be used for snippets if available (listed in order of preference).
$previousUniqueId  : string
Previous unique ID (if applicable).
$ratingCache  : array<string|int, mixed>
Cache for rating data
$recordConfig  : Config
Record-specific configuration
$searchBackendIdentifier  : string
Used for identifying the search backend used to find the record
$searchService  : Service
Search results plugin manager
$snippet  : bool
Should we include snippets in search results?
$snippetCaptions  : array<string|int, mixed>
These are captions corresponding with Solr fields for use when displaying snippets.
$sourceIdentifier  : string
Used for identifying record source backend
$subjectFields  : array<string|int, mixed>
Fields that may contain subject headings, and their descriptions
$subjectSources  : array<string|int, mixed>
Mappings from subject source indicators (2nd indicator of subject fields in MARC 21) to the their codes.
$tableManager  : PluginManager
Database table plugin manager
$titleHoldLogic  : TitleHolds
Title hold logic
$translator  : TranslatorInterface
Translator
$xmlType  : string
Type to export in getXML().
__construct()  : mixed
Constructor
addLabel()  : void
Add a label for the record
addOrUpdateRating()  : void
Add or update user's rating for the record.
addTags()  : void
Add tags to the record.
attachILS()  : void
Attach an ILS connection and related logic to the driver
attachSearchService()  : void
Attach a Search Results Plugin Manager connection and related logic to the driver
deleteTags()  : void
Remove tags from the record.
explainEnabled()  : bool
Get if the explain features is enabled.
getAccessRestrictions()  : array<string|int, mixed>
Get access restriction notes for the record.
getAllRecordLinks()  : null|array<string|int, mixed>
Get all record links related to the current record. Each link is returned as array.
getAllSubjectHeadings()  : array<string|int, mixed>
Get all subject headings associated with this record. Each heading is returned as an array of chunks, increasing from least specific to most specific.
getAuthorDataFields()  : array<string|int, mixed>
Get Author Information with Associated Data Fields
getAvailableDigitalFormats()  : array<string|int, mixed>
Get Available Digital Formats
getAwards()  : array<string|int, mixed>
Get award notes for the record.
getBibliographicLevel()  : string
Get the bibliographic level of the current record.
getBibliographyNotes()  : array<string|int, mixed>
Get notes on bibliography content.
getBreadcrumb()  : string
Get Bread Crumb
getBuildings()  : array<string|int, mixed>
Get the buildings containing the record.
getCallNumber()  : string
Get the first call number associated with the record (empty string if none).
getCallNumbers()  : array<string|int, mixed>
Get all call numbers associated with the record.
getChildRecordCount()  : int
Get the number of child records belonging to this record
getCitationFormats()  : array<string|int, mixed>
Get an array of supported, user-activated citation formats.
getCleanDOI()  : mixed
Return the first valid DOI found in the record (false if none).
getCleanISBN()  : mixed
Return the first valid ISBN found in the record (favoring ISBN-10 over ISBN-13 when possible).
getCleanISBNs()  : array<string|int, mixed>
Return all ISBNs found in the record.
getCleanISMN()  : mixed
Get just the base portion of the first listed ISMN (or false if no ISSMs).
getCleanISSN()  : mixed
Get just the base portion of the first listed ISSN (or false if no ISSNs).
getCleanNBN()  : mixed
Get just the first listed national bibliography number (or false if none available).
getCleanOCLCNum()  : mixed
Get just the first listed OCLC Number (or false if none available).
getCleanUPC()  : mixed
Get just the first listed UPC Number (or false if none available).
getCleanUuid()  : mixed
Get just the first listed UUID (Universally unique identifier), or false if none available.
getCoinsOpenUrl()  : string
Get the OpenURL parameters to represent this record for COinS even if supportsOpenUrl() is false for this RecordDriver.
getCollectionSearchId()  : string
Return the collection search ID for this record.
getComments()  : array<string|int, mixed>
Get comments associated with this record.
getConsortialIDs()  : array<string|int, mixed>
Return the list of "source records" for this consortial record.
getContainerEndPage()  : string
Get the end page of the item that contains this record.
getContainerIssue()  : string
Get the issue of the item that contains this record (i.e. MARC 773l of a journal).
getContainerRecordID()  : string
Get the container record id.
getContainerReference()  : string
Get a full, free-form reference to the context of the item that contains this record (i.e. volume, year, issue, pages).
getContainerStartPage()  : string
Get the start page of the item that contains this record (i.e. MARC 773q of a journal).
getContainerTitle()  : string
Get the title of the item that contains this record (i.e. MARC 773s of a journal).
getContainerVolume()  : string
Get the volume of the item that contains this record (i.e. MARC 773v of a journal).
getContainingCollections()  : array<string|int, mixed>
Get an associative array (id => title) of collections containing this record.
getContainingLists()  : array<string|int, mixed>
Get a list of lists containing this record.
getCoordinateLabels()  : array<string|int, mixed>
Get the map display (lat/lon) labels
getCorporateAuthors()  : array<string|int, mixed>
Get the main corporate authors (if any) for the record.
getCorporateAuthorsRoles()  : array<string|int, mixed>
Get an array of all main corporate authors roles.
getDateSpan()  : array<string|int, mixed>
Get the date coverage for a record which spans a period of time (i.e. a journal). Use getPublicationDates for publication dates of particular monographic items.
getDbService()  : T
Get a database service object.
getDbServiceManager()  : PluginManager
Get the service plugin manager. Throw an exception if it is missing.
getDbTable()  : Gateway
Get a database table object.
getDbTableManager()  : PluginManager
Get the table plugin manager. Throw an exception if it is missing.
getDedupData()  : array<string|int, mixed>
Get information on records deduplicated with this one
getDeduplicatedAuthors()  : array<string|int, mixed>
Deduplicate author information into associative array with main/corporate/ secondary keys.
getDigitalFormats()  : array<string|int, mixed>
Get Formats
getDisplayCoordinates()  : array<string|int, mixed>
Get the map display (lat/lon) coordinates
getEdition()  : string
Get the edition of the current record.
getExtraDetail()  : mixed
Retrieve a piece of supplemental information stored using setExtraDetail().
getFilteredXML()  : string
Return full record as filtered XML for public APIs.
getFindingAids()  : array<string|int, mixed>
Get notes on finding aids related to the record.
getFirstIndexed()  : string
Get the date this record was first indexed (if set).
getFormats()  : array<string|int, mixed>
Get an array of all the formats associated with the record.
getFormattedDigitalFormats()  : array<string|int, mixed>
Get an array of all the formats associated with the record with metadata associated with it. This array is designed to be used in a template.
getFormattedMarcDetails()  : array<string|int, mixed>
Get Status/Holdings Information from the internally stored MARC Record (support method used by the NoILS driver).
getFormattedRawData()  : array<string|int, mixed>
Get Formatted Raw Data
getFullTitlesAltScript()  : array<string|int, mixed>
Get the full titles of the record including section and part information in alternative scripts.
getGeneralNotes()  : array<string|int, mixed>
Get general notes on the record.
getGeoLocation()  : array<string|int, mixed>
Get the bbox-geo variable.
getHierarchicalPlaceNames()  : array<string|int, mixed>
Get hierarchical place names
getHierarchyDriver()  : AbstractBase|bool
Get a hierarchy driver appropriate to the current object. (May be false if disabled/unavailable).
getHierarchyTopID()  : array<string|int, mixed>
Get the hierarchy_top_id(s) associated with this item (empty if none).
getHierarchyTopTitle()  : array<string|int, mixed>
Get the absolute parent title(s) associated with this item (empty if none).
getHierarchyTrees()  : mixed
Get a list of hierarchy trees containing this record.
getHierarchyType()  : string|bool
Get the Hierarchy Type (false if none)
getHighlightDetails()  : array<string|int, mixed>
Get highlighting details from the object.
getHighlightedSnippet()  : mixed
Pick one line from the highlighted text (if any) to use as a snippet.
getHighlightedTitle()  : string
Get a highlighted title string, if available.
getHumanReadablePublicationDates()  : array<string|int, mixed>
Get human readable publication dates for display purposes (may not be suitable for computer processing -- use getPublicationDates() for that).
getInstitutions()  : array<string|int, mixed>
Get the institutions holding the record.
getISBNs()  : array<string|int, mixed>
Get an array of all ISBNs associated with the record (may be empty).
getIsMarc()  : bool
Is Marc Based Record
getISSNs()  : array<string|int, mixed>
Get an array of all ISSNs associated with the record (may be empty).
getLabels()  : array<string|int, mixed>
Return all labels for the record
getLanguages()  : array<string|int, mixed>
Get an array of all the languages associated with the record.
getLastIndexed()  : string
Get a string representing the last date that the record was indexed.
getLCCN()  : string
Get a LCCN, normalised according to info:lccn
getListNotes()  : array<string|int, mixed>
Get notes associated with this record in user lists.
getMarcReader()  : MarcReader
Get Marc Reader
getNewerTitles()  : array<string|int, mixed>
Get an array of newer titles for the record.
getOCLC()  : array<string|int, mixed>
Get the OCLC number(s) of the record.
getOpenUrl()  : string
Get the OpenURL parameters to represent this record (useful for the title attribute of a COinS span tag).
getOtherVersionCount()  : int
Return count of other versions available
getOverdriveAccess()  : bool
Get Overdrive Access
getOverdriveAvailability()  : object|bool
Returns the availability for the current record
getOverdriveID()  : string
Get Overdrive ID
getPermanentLink()  : array<string|int, mixed>
Get Permanent Link to the resource on your institution's OverDrive site
getPhysicalDescriptions()  : array<string|int, mixed>
Get an array of physical descriptions of the item.
getPlacesOfPublication()  : array<string|int, mixed>
Get the item's place of publication.
getPlayingTimes()  : array<string|int, mixed>
Get an array of playing times for the record (if applicable).
getPreviewLinks()  : array<string|int, mixed>
Returns links for showing previews
getPreviousTitles()  : array<string|int, mixed>
Get an array of previous titles for the record.
getPreviousUniqueId()  : string
Get previous unique ID (or null if not applicable).
getPrimaryAuthor()  : string
Get the main author of the record.
getPrimaryAuthors()  : array<string|int, mixed>
Get the main authors of the record.
getPrimaryAuthorsRoles()  : array<string|int, mixed>
Get an array of all main authors roles (complementing getSecondaryAuthorsRoles()).
getPrimaryAuthorsWithHighlighting()  : array<string|int, mixed>
Get primary author information with highlights applied (if applicable)
getProductionCredits()  : array<string|int, mixed>
Get credits of people involved in production of the item.
getPublicationDates()  : array<string|int, mixed>
Get the publication dates of the record. See also getDateSpan().
getPublicationDetails()  : array<string|int, mixed>
Get an array of publication detail lines combining information from getPublicationDates(), getPublishers() and getPlacesOfPublication().
getPublicationFrequency()  : array<string|int, mixed>
Get an array of publication frequency information.
getPublishers()  : array<string|int, mixed>
Get the publishers of the record.
getRatingBreakdown()  : array<string|int, mixed>
Get rating breakdown for this record.
getRatingData()  : array<string|int, mixed>
Get rating information for this record.
getRawAuthorHighlights()  : array<string|int, mixed>
Get highlighted author data, if available.
getRawData()  : mixed
Retrieve raw data from object (primarily for use in staff view and autocomplete; avoid using whenever possible).
getRawMarcData()  : string
Retrieve the raw MARC data for this record; note that format may vary depending on what was indexed (e.g. XML vs. binary MARC).
getRDFXML()  : mixed
Get an XML RDF representation of the data in this record.
getRealTimeHistory()  : array<string|int, mixed>
Get an array of information about record history, obtained in real-time from the ILS.
getRealTimeHoldings()  : array<string|int, mixed>
Get an array of information about record holdings, obtained in real-time from the ILS.
getRealTimeTitleHold()  : mixed
Get a link for placing a title level hold.
getRelationshipNotes()  : array<string|int, mixed>
Get an array of strings describing relationships to other items.
getSchemaOrgFormats()  : string
Get schema.org type mapping, expected to be a space-delimited string of sub-types of http://schema.org/CreativeWork, defaulting to CreativeWork itself if nothing else matches.
getSchemaOrgFormatsArray()  : array<string|int, mixed>
Get schema.org type mapping, an array of sub-types of http://schema.org/CreativeWork, defaulting to CreativeWork itself if nothing else matches.
getSearchBackendIdentifier()  : string
Return the search backend identifier used to find the record.
getSecondaryAuthors()  : array<string|int, mixed>
Get an array of all secondary authors (complementing getPrimaryAuthors()).
getSecondaryAuthorsRoles()  : array<string|int, mixed>
Get an array of all secondary authors roles (complementing getPrimaryAuthorsRoles()).
getSeries()  : array<string|int, mixed>
Get an array of all series names containing the record. Array entries may be either the name string, or an associative array with 'name' and 'number' keys.
getShortTitle()  : string
Get the short (pre-subtitle) title of the record.
getShortTitlesAltScript()  : array<string|int, mixed>
Get the short (pre-subtitle) title of the record in alternative scripts.
getSnippetCaption()  : mixed
Given a field name, return an appropriate caption.
getSortTitle()  : string
Get a sortable title for the record (i.e. no leading articles).
getSource()  : string
Get the item's source.
getSourceIdentifier()  : string
Return the source backend identifier.
getSubtitle()  : string
Get the subtitle of the record.
getSubtitlesAltScript()  : array<string|int, mixed>
Get the subtitle of the record in alternative script.
getSummary()  : array<string|int, mixed>
Get an array of summary strings for the record.
getSystemDetails()  : array<string|int, mixed>
Get an array of technical details on the item represented by the record.
getTags()  : array<string|int, mixed>
Get tags associated with this record.
getTargetAudienceNotes()  : array<string|int, mixed>
Get an array of note about the record's target audience.
getThumbnail()  : string|array<string|int, mixed>|bool
Returns one of three things: a full URL to a thumbnail preview of the record if an image is available in an external system; an array of parameters to send to VuFind's internal cover generator if no fixed URL exists; or false if no thumbnail can be generated.
getTitle()  : string
Get the full title of the record.
getTitlesAltScript()  : array<string|int, mixed>
Get the full titles of the record in alternative scripts.
getTitleSection()  : string
Get Title Section
getTitleSectionsAltScript()  : array<string|int, mixed>
Get the text of the part/section portion of the title in alternative scripts.
getTitleStatement()  : string
Get the statement of responsibility that goes with the title (i.e. "by John Smith").
getTOC()  : array<string|int, mixed>
Get an array of lines from the table of contents.
getTranslator()  : TranslatorInterface
Get translator object.
getTranslatorLocale()  : string
Get the locale from the translator.
getUniqueID()  : string
Return the unique identifier of this record for retrieving additional information (like tags and user comments) from the external MySQL database.
getUPC()  : array<string|int, mixed>
Get the UPC number(s) of the record.
getURLs()  : array<string|int, mixed>
Return an array of associative URL arrays with one or more of the following keys:
getUuids()  : array<string|int, mixed>
Get UUIDs (Universally unique identifier). These are commonly used in, for example, digital library or repository systems and can be a useful match point with third party systems.
getVersions()  : RecordCollectionInterface
Retrieve versions as a search result
getWorkKeys()  : array<string|int, mixed>
Get work identification keys
getXML()  : mixed
Return an XML representation of the record using the specified format.
isCheckedOut()  : object
Is Checked Out
isCollection()  : bool
Get the value of whether or not this is a collection level record
isHeld()  : object|bool
Is Held Checks to see if the current record is on hold through Overcdrive.
isLoggedIn()  : bool
Is Logged in
isRatingAllowed()  : bool
Check if rating the record is allowed.
setDbServiceManager()  : void
Set the service plugin manager.
setDbTableManager()  : void
Set the table plugin manager.
setExtraDetail()  : void
Store a piece of supplemental information in the record driver.
setHierarchyDriverManager()  : object
Inject a hierarchy driver plugin manager.
setHighlightDetails()  : void
Add highlighting details to the object.
setIlsBackends()  : void
Set the list of backends that support ILS integration.
setLabels()  : void
Set the labels for the record
setPreviousUniqueId()  : void
Set previous unique ID
setRawData()  : void
Set raw data to initialize the object.
setSourceIdentifier()  : void
Set the record source backend identifier.
setSourceIdentifiers()  : void
Set the source backend identifiers.
setTranslator()  : TranslatorAwareInterface
Set a translator
supportsAjaxStatus()  : bool
Returns true if the record supports real-time AJAX status lookups.
supportsCoinsOpenUrl()  : bool
Supports coins OpenURL
supportsOpenUrl()  : bool
Supports OpenURL
supportsPatronActions()  : bool
Returns a boolean indicating if patron actions are supported
translate()  : string
Translate a string (or string-castable object)
translateWithPrefix()  : string
Translate a string (or string-castable object) using a prefix, or without the prefix if a prefixed translation is not found.
tryMethod()  : mixed
Try to call the requested method and return null if it is unavailable; this is useful for checking for the existence of get methods for particular types of data without causing fatal errors.
debug()  : void
Log a debug message.
extractSingleMarcDetail()  : string|bool
Support method for getFormattedMarcDetails() -- extract a single result
extractTextDomain()  : array<string|int, mixed>
Given a translation string with or without a text domain, return an array with the raw string and the text domain separated.
getAllSubjectHeadingsNumericalOrder()  : array<string|int, mixed>
Get all subject headings associated with this record. Each heading is returned as an array of chunks, increasing from least specific to most specific. Sorted numerically on marc fields.
getAllSubjectHeadingsRecordOrder()  : array<string|int, mixed>
Get all subject headings associated with this record. Each heading is returned as an array of chunks, increasing from least specific to most specific. Sorted in the same way it is saved for the record.
getArticleOpenUrlParams()  : array<string|int, mixed>
Get OpenURL parameters for an article.
getBookOpenUrlParams()  : array<string|int, mixed>
Get OpenURL parameters for a book.
getCoinsID()  : string
Get the COinS identifier.
getDebugTranslation()  : string
Build a debug-mode translation
getDefaultOpenUrlParams()  : array<string|int, mixed>
Get default OpenURL parameters.
getFieldArray()  : array<string|int, mixed>
Return an array of all values extracted from the specified field/subfield combination. If multiple subfields are specified and $concat is true, they will be concatenated together in the order listed -- each entry in the array will correspond with a single MARC field. If $concat is false, the return array will contain separate entries for separate subfields.
getFieldData()  : array<string|int, mixed>|bool
Returns the array element for the 'getAllRecordLinks' method
getFirstFieldValue()  : string
Get the first value matching the specified MARC field and subfields.
getIdFromLinkingField()  : string|bool
Returns an id extracted from the identifier subfield passed in
getJournalOpenUrlParams()  : array<string|int, mixed>
Get OpenURL parameters for a journal.
getOpenUrlFormat()  : string
Support method for getOpenUrl() -- pick the OpenURL format.
getPublicationInfo()  : array<string|int, mixed>
Get the item's publication information
getRawLCCN()  : string
Get a raw, unnormalized LCCN. (See getLCCN for normalization).
getRecordLinkNote()  : string
Support method for getFieldData() -- factor the relationship indicator into the field number where relevant to generate a note to associate with a record link.
getSeriesFromMARC()  : array<string|int, mixed>
Support method for getSeries() -- given a field specification, look for series information in the MARC record.
getSubfield()  : string
Return first subfield with the given code in the provided MARC field
getSubfieldArray()  : array<string|int, mixed>
Return an array of non-empty subfield values found in the provided MARC field. If $concat is true, the array will contain either zero or one entries (empty array if no subfields found, subfield values concatenated together in specified order if found). If concat is false, the array will contain a separate entry for each subfield value found.
getSubfields()  : array<string|int, mixed>
Return all subfields with the given code in the provided MARC field
getSupportedCitationFormats()  : array<string|int, mixed>
Get an array of strings representing citation formats supported by this record's data (empty if none). For possible legal values, see /application/themes/root/helpers/Citation.php.
getUnknownFormatOpenUrlParams()  : array<string|int, mixed>
Get OpenURL parameters for an unknown format.
hasILS()  : bool
Do we have an attached ILS connection?
log()  : void
Send a message to the logger.
logError()  : void
Log an error message.
logWarning()  : void
Log a warning message.
processSubjectHeadings()  : array<string|int, mixed>|null
Get subject headings of a given record field.
sanitizeTranslationKey()  : string
Make sure there are not any illegal characters in the translation key that might prevent successful lookup in language files.
translateString()  : string
Get translation for a string

Properties

$config

Overdrive Configuration Object

protected object $config

$containerLinking

Should we use hierarchy fields for simple container-child records linking?

protected bool $containerLinking = false

$explainEnabled

If the explain feature is enabled

protected bool $explainEnabled = false

$extraDetails

For storing extra data with record

protected array<string|int, mixed> $extraDetails = []

$fields

Raw data

protected array<string|int, mixed> $fields = []

$forbiddenSnippetFields

These Solr fields should NEVER be used for snippets. (We exclude author and title because they are already covered by displayed fields; we exclude spelling because it contains lots of fields jammed together and may cause glitchy output; we exclude ID because random numbers are not helpful).

protected array<string|int, mixed> $forbiddenSnippetFields = ['author', 'title', 'title_short', 'title_full', 'title_full_unstemmed', 'title_auth', 'title_sub', 'spelling', 'id', 'ctrlnum', 'author_variant', 'author2_variant', 'fullrecord', 'work_keys_str_mv']

$highlight

Should we highlight fields in search results?

protected bool $highlight = false

$highlightDetails

Highlighting details

protected array<string|int, mixed> $highlightDetails = []

$ilsBackends

Backends with ILS integration.

protected array<string|int, string> $ilsBackends = []

$labels

Labels for the record

protected array<string|int, mixed> $labels = []

$lazyMarcReader

MARC reader. Access only via getMarcReader() as this is initialized lazily.

protected mixed $lazyMarcReader = null

$mainConfig

Main VuFind configuration

protected Config $mainConfig

$marcReaderClass

MARC reader class to use.

protected string $marcReaderClass = \VuFind\Marc\MarcReader::class

$otherVersionsCount

Cached result of other versions (work expressions) count

protected int $otherVersionsCount = null

$preferredSnippetFields

These Solr fields should be used for snippets if available (listed in order of preference).

protected array<string|int, mixed> $preferredSnippetFields = ['contents', 'topic']

$previousUniqueId

Previous unique ID (if applicable).

protected string $previousUniqueId = null

$ratingCache

Cache for rating data

protected array<string|int, mixed> $ratingCache = []

$recordConfig

Record-specific configuration

protected Config $recordConfig

$searchBackendIdentifier

Used for identifying the search backend used to find the record

protected string $searchBackendIdentifier = ''

$snippet

Should we include snippets in search results?

protected bool $snippet = false

$snippetCaptions

These are captions corresponding with Solr fields for use when displaying snippets.

protected array<string|int, mixed> $snippetCaptions = []

$sourceIdentifier

Used for identifying record source backend

protected string $sourceIdentifier = ''

$subjectFields

Fields that may contain subject headings, and their descriptions

protected array<string|int, mixed> $subjectFields = ['600' => 'personal name', '610' => 'corporate name', '611' => 'meeting name', '630' => 'uniform title', '648' => 'chronological', '650' => 'topic', '651' => 'geographic', '653' => '', '655' => 'genre/form', '656' => 'occupation']

$subjectSources

Mappings from subject source indicators (2nd indicator of subject fields in MARC 21) to the their codes.

protected array<string|int, mixed> $subjectSources = ['0' => 'lcsh', '1' => 'lcshac', '2' => 'mesh', '3' => 'nal', '4' => 'unknown', '5' => 'cash', '6' => 'rvm']
Tags
link

Subject field docs

link

Code list

$xmlType

Type to export in getXML().

protected string $xmlType = 'Bibliographic'

Methods

__construct()

Constructor

public __construct([Config $mainConfig = null ][, Config $recordConfig = null ][, OverdriveConnector $connector = null ]) : mixed
Parameters
$mainConfig : Config = null

VuFind main configuration

$recordConfig : Config = null

Record-specific configuration

$connector : OverdriveConnector = null

Overdrive Connector

Return values
mixed

addLabel()

Add a label for the record

public addLabel(string $label, string $class) : void
Parameters
$label : string

Label, may be a translation key

$class : string

Label class

Return values
void

addOrUpdateRating()

Add or update user's rating for the record.

public addOrUpdateRating(int $userId, int|null $rating) : void
Parameters
$userId : int

ID of the user posting the rating

$rating : int|null

The user-provided rating, or null to clear any existing rating

Tags
deprecated

Use \VuFind\Ratings\RatingsService::saveRating()

Return values
void

addTags()

Add tags to the record.

public addTags(UserEntityInterface $user, array<string|int, mixed> $tags) : void
Parameters
$user : UserEntityInterface

The user posting the tag

$tags : array<string|int, mixed>

The user-provided tags

Tags
deprecated

Use \VuFind\Tags\TagsService::linkTagsToRecord()

Return values
void

attachILS()

Attach an ILS connection and related logic to the driver

public attachILS(Connection $ils, Holds $holdLogic, TitleHolds $titleHoldLogic) : void
Parameters
$ils : Connection

ILS connection

$holdLogic : Holds

Hold logic handler

$titleHoldLogic : TitleHolds

Title hold logic handler

Return values
void

attachSearchService()

Attach a Search Results Plugin Manager connection and related logic to the driver

public attachSearchService(Service $service) : void
Parameters
$service : Service

Search Service Manager

Return values
void

deleteTags()

Remove tags from the record.

public deleteTags(UserEntityInterface $user, array<string|int, mixed> $tags) : void
Parameters
$user : UserEntityInterface

The user posting the tag

$tags : array<string|int, mixed>

The user-provided tags

Tags
deprecated

Use \VuFind\Tags\TagsService::unlinkTagsFromRecord()

Return values
void

explainEnabled()

Get if the explain features is enabled.

public explainEnabled() : bool
Return values
bool

getAccessRestrictions()

Get access restriction notes for the record.

public getAccessRestrictions() : array<string|int, mixed>
Return values
array<string|int, mixed>

Get all record links related to the current record. Each link is returned as array.

public getAllRecordLinks() : null|array<string|int, mixed>

NB: to use this method you must override it. Format: array( array( 'title' => label_for_title 'value' => link_name 'link' => link_URI ), ... )

Return values
null|array<string|int, mixed>

getAllSubjectHeadings()

Get all subject headings associated with this record. Each heading is returned as an array of chunks, increasing from least specific to most specific.

public getAllSubjectHeadings([bool $extended = false ]) : array<string|int, mixed>
Parameters
$extended : bool = false

Whether to return a keyed array with the following keys:

  • heading: the actual subject heading chunks
  • type: heading type
  • source: source vocabulary
Return values
array<string|int, mixed>

getAuthorDataFields()

Get Author Information with Associated Data Fields

public getAuthorDataFields(string $index[, array<string|int, mixed> $dataFields = [] ]) : array<string|int, mixed>
Parameters
$index : string

The author index [primary, corporate, or secondary] used to construct a method name for retrieving author data (e.g. getPrimaryAuthors).

$dataFields : array<string|int, mixed> = []

An array of fields to used to construct method names for retrieving author-related data (e.g., if you pass 'role' the data method will be similar to getPrimaryAuthorsRoles). This value will also be used as a key associated with each author in the resulting data array.

Return values
array<string|int, mixed>

getAvailableDigitalFormats()

Get Available Digital Formats

public getAvailableDigitalFormats() : array<string|int, mixed>

Return the digital download formats that are available for linking to.

Tags
throws
Exception
Return values
array<string|int, mixed>

getAwards()

Get award notes for the record.

public getAwards() : array<string|int, mixed>
Return values
array<string|int, mixed>

getBibliographicLevel()

Get the bibliographic level of the current record.

public getBibliographicLevel() : string
Return values
string

getBibliographyNotes()

Get notes on bibliography content.

public getBibliographyNotes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getBreadcrumb()

Get Bread Crumb

public getBreadcrumb() : string
Return values
string

getBuildings()

Get the buildings containing the record.

public getBuildings() : array<string|int, mixed>
Return values
array<string|int, mixed>

getCallNumber()

Get the first call number associated with the record (empty string if none).

public getCallNumber() : string
Return values
string

getCallNumbers()

Get all call numbers associated with the record.

public getCallNumbers() : array<string|int, mixed>
Return values
array<string|int, mixed>

getChildRecordCount()

Get the number of child records belonging to this record

public getChildRecordCount() : int
Return values
int

Number of records

getCitationFormats()

Get an array of supported, user-activated citation formats.

public getCitationFormats() : array<string|int, mixed>
Return values
array<string|int, mixed>

Strings representing citation formats.

getCleanDOI()

Return the first valid DOI found in the record (false if none).

public getCleanDOI() : mixed
Return values
mixed

getCleanISBN()

Return the first valid ISBN found in the record (favoring ISBN-10 over ISBN-13 when possible).

public getCleanISBN() : mixed
Return values
mixed

getCleanISBNs()

Return all ISBNs found in the record.

public getCleanISBNs([string $mode = 'prefer10' ][, bool $filterInvalid = true ]) : array<string|int, mixed>
Parameters
$mode : string = 'prefer10'

Mode for returning ISBNs:

  • 'only10' returns only ISBN-10s
  • 'prefer10' returns ISBN-10s if available, otherwise ISBN-13s (default)
  • 'normalize13' returns ISBN-13s, normalizing ISBN-10s to ISBN-13s
$filterInvalid : bool = true

Whether to filter out invalid ISBNs

Return values
array<string|int, mixed>

getCleanISMN()

Get just the base portion of the first listed ISMN (or false if no ISSMs).

public getCleanISMN() : mixed
Return values
mixed

getCleanISSN()

Get just the base portion of the first listed ISSN (or false if no ISSNs).

public getCleanISSN() : mixed
Return values
mixed

getCleanNBN()

Get just the first listed national bibliography number (or false if none available).

public getCleanNBN() : mixed
Return values
mixed

getCleanOCLCNum()

Get just the first listed OCLC Number (or false if none available).

public getCleanOCLCNum() : mixed
Return values
mixed

getCleanUPC()

Get just the first listed UPC Number (or false if none available).

public getCleanUPC() : mixed
Return values
mixed

getCleanUuid()

Get just the first listed UUID (Universally unique identifier), or false if none available.

public getCleanUuid() : mixed
Return values
mixed

getCoinsOpenUrl()

Get the OpenURL parameters to represent this record for COinS even if supportsOpenUrl() is false for this RecordDriver.

public getCoinsOpenUrl() : string
Return values
string

OpenURL parameters.

getCollectionSearchId()

Return the collection search ID for this record.

public getCollectionSearchId() : string
Return values
string

getComments()

Get comments associated with this record.

public getComments() : array<string|int, mixed>
Tags
deprecated

Use CommentsServiceInterface::getRecordComments()

Return values
array<string|int, mixed>

getConsortialIDs()

Return the list of "source records" for this consortial record.

public getConsortialIDs() : array<string|int, mixed>
Return values
array<string|int, mixed>

getContainerEndPage()

Get the end page of the item that contains this record.

public getContainerEndPage() : string
Return values
string

getContainerIssue()

Get the issue of the item that contains this record (i.e. MARC 773l of a journal).

public getContainerIssue() : string
Return values
string

getContainerRecordID()

Get the container record id.

public getContainerRecordID() : string
Return values
string

Container record id (empty string if none)

getContainerReference()

Get a full, free-form reference to the context of the item that contains this record (i.e. volume, year, issue, pages).

public getContainerReference() : string
Return values
string

getContainerStartPage()

Get the start page of the item that contains this record (i.e. MARC 773q of a journal).

public getContainerStartPage() : string
Return values
string

getContainerTitle()

Get the title of the item that contains this record (i.e. MARC 773s of a journal).

public getContainerTitle() : string
Return values
string

getContainerVolume()

Get the volume of the item that contains this record (i.e. MARC 773v of a journal).

public getContainerVolume() : string
Return values
string

getContainingCollections()

Get an associative array (id => title) of collections containing this record.

public getContainingCollections() : array<string|int, mixed>
Return values
array<string|int, mixed>

getContainingLists()

Get a list of lists containing this record.

public getContainingLists([int $user_id = null ]) : array<string|int, mixed>
Parameters
$user_id : int = null

ID of user to load tags from (null for all users)

Tags
deprecated

Use UserListServiceInterface::getListsContainingRecord()

Return values
array<string|int, mixed>

getCoordinateLabels()

Get the map display (lat/lon) labels

public getCoordinateLabels() : array<string|int, mixed>
Return values
array<string|int, mixed>

getCorporateAuthors()

Get the main corporate authors (if any) for the record.

public getCorporateAuthors() : array<string|int, mixed>
Return values
array<string|int, mixed>

getCorporateAuthorsRoles()

Get an array of all main corporate authors roles.

public getCorporateAuthorsRoles() : array<string|int, mixed>
Return values
array<string|int, mixed>

getDateSpan()

Get the date coverage for a record which spans a period of time (i.e. a journal). Use getPublicationDates for publication dates of particular monographic items.

public getDateSpan() : array<string|int, mixed>
Return values
array<string|int, mixed>

getDbService()

Get a database service object.

public getDbService(class-string<\VuFind\Db\Service\T> $name) : T
Parameters
$name : class-string<\VuFind\Db\Service\T>

Name of service to retrieve

Tags
template

T

Return values
T

getDbTable()

Get a database table object.

public getDbTable(string $table) : Gateway
Parameters
$table : string

Table to load.

Return values
Gateway

getDedupData()

Get information on records deduplicated with this one

public getDedupData() : array<string|int, mixed>
Return values
array<string|int, mixed>

Array keyed by source id containing record id

getDeduplicatedAuthors()

Deduplicate author information into associative array with main/corporate/ secondary keys.

public getDeduplicatedAuthors([array<string|int, mixed> $dataFields = ['role'] ]) : array<string|int, mixed>
Parameters
$dataFields : array<string|int, mixed> = ['role']

An array of extra data fields to retrieve (see getAuthorDataFields)

Return values
array<string|int, mixed>

getDigitalFormats()

Get Formats

public getDigitalFormats() : array<string|int, mixed>

Returns an array of digital formats for this resource.

Tags
throws
Exception
Return values
array<string|int, mixed>

Array of formats.

getDisplayCoordinates()

Get the map display (lat/lon) coordinates

public getDisplayCoordinates() : array<string|int, mixed>
Return values
array<string|int, mixed>

getEdition()

Get the edition of the current record.

public getEdition() : string
Return values
string

getExtraDetail()

Retrieve a piece of supplemental information stored using setExtraDetail().

public getExtraDetail(string $key) : mixed
Parameters
$key : string

Name of stored information

Return values
mixed

getFilteredXML()

Return full record as filtered XML for public APIs.

public getFilteredXML() : string
Return values
string

getFindingAids()

Get notes on finding aids related to the record.

public getFindingAids() : array<string|int, mixed>
Return values
array<string|int, mixed>

getFirstIndexed()

Get the date this record was first indexed (if set).

public getFirstIndexed() : string
Return values
string

getFormats()

Get an array of all the formats associated with the record.

public getFormats() : array<string|int, mixed>
Return values
array<string|int, mixed>

getFormattedDigitalFormats()

Get an array of all the formats associated with the record with metadata associated with it. This array is designed to be used in a template.

public getFormattedDigitalFormats() : array<string|int, mixed>

The key for each entry is the translatable token for the format name

Tags
throws
Exception
Return values
array<string|int, mixed>

getFormattedMarcDetails()

Get Status/Holdings Information from the internally stored MARC Record (support method used by the NoILS driver).

public getFormattedMarcDetails(string $defaultField, array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
$defaultField : string

The MARC Field to retrieve if $data commands do not request something more specific

$data : array<string|int, mixed>

The type of data to retrieve from the MARC field; an array of pipe-delimited commands where the first part determines the data retrieval mode, the second part provides further instructions, and the optional third part provides a field to override $defaultField; supported modes: "msg" (for a hard-coded message) and "marc" (for fetching subfield data)

Return values
array<string|int, mixed>

getFormattedRawData()

Get Formatted Raw Data

public getFormattedRawData() : array<string|int, mixed>

Returns the raw data formatted for staff display tab

Return values
array<string|int, mixed>

Multidimensional array with data

getFullTitlesAltScript()

Get the full titles of the record including section and part information in alternative scripts.

public getFullTitlesAltScript() : array<string|int, mixed>
Return values
array<string|int, mixed>

getGeneralNotes()

Get general notes on the record.

public getGeneralNotes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getGeoLocation()

Get the bbox-geo variable.

public getGeoLocation() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHierarchicalPlaceNames()

Get hierarchical place names

public getHierarchicalPlaceNames() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHierarchyTopID()

Get the hierarchy_top_id(s) associated with this item (empty if none).

public getHierarchyTopID() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHierarchyTopTitle()

Get the absolute parent title(s) associated with this item (empty if none).

public getHierarchyTopTitle() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHierarchyTrees()

Get a list of hierarchy trees containing this record.

public getHierarchyTrees([string $hierarchyID = false ]) : mixed
Parameters
$hierarchyID : string = false

The hierarchy to get the tree for

Tags
SuppressWarnings

(PHPMD.UnusedFormalParameter)

Return values
mixed

An associative array of hierarchy trees on success (id => title), false if no hierarchies found

getHierarchyType()

Get the Hierarchy Type (false if none)

public getHierarchyType() : string|bool
Return values
string|bool

getHighlightDetails()

Get highlighting details from the object.

public getHighlightDetails() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHighlightedSnippet()

Pick one line from the highlighted text (if any) to use as a snippet.

public getHighlightedSnippet() : mixed
Return values
mixed

False if no snippet found, otherwise associative array with 'snippet' and 'caption' keys.

getHighlightedTitle()

Get a highlighted title string, if available.

public getHighlightedTitle() : string
Return values
string

getHumanReadablePublicationDates()

Get human readable publication dates for display purposes (may not be suitable for computer processing -- use getPublicationDates() for that).

public getHumanReadablePublicationDates() : array<string|int, mixed>
Return values
array<string|int, mixed>

getInstitutions()

Get the institutions holding the record.

public getInstitutions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getISBNs()

Get an array of all ISBNs associated with the record (may be empty).

public getISBNs() : array<string|int, mixed>
Return values
array<string|int, mixed>

getIsMarc()

Is Marc Based Record

public getIsMarc() : bool

Return whether this is a marc-based record.

Return values
bool

getISSNs()

Get an array of all ISSNs associated with the record (may be empty).

public getISSNs() : array<string|int, mixed>
Return values
array<string|int, mixed>

getLabels()

Return all labels for the record

public getLabels() : array<string|int, mixed>
Return values
array<string|int, mixed>

An array of associative arrays with keys 'label' and 'class'

getLanguages()

Get an array of all the languages associated with the record.

public getLanguages() : array<string|int, mixed>
Return values
array<string|int, mixed>

getLastIndexed()

Get a string representing the last date that the record was indexed.

public getLastIndexed() : string
Return values
string

getLCCN()

Get a LCCN, normalised according to info:lccn

public getLCCN() : string
Return values
string

getListNotes()

Get notes associated with this record in user lists.

public getListNotes([int $list_id = null ][, int $user_id = null ]) : array<string|int, mixed>
Parameters
$list_id : int = null

ID of list to load tags from (null for all lists)

$user_id : int = null

ID of user to load tags from (null for all users)

Tags
deprecated

Use \VuFind\View\Helper\Root\Record::getListNotes()

Return values
array<string|int, mixed>

getMarcReader()

Get Marc Reader

public getMarcReader() : MarcReader

Override the base marc trait to return an empty marc reader object if no MARC is available.

Return values
MarcReader

getNewerTitles()

Get an array of newer titles for the record.

public getNewerTitles() : array<string|int, mixed>
Return values
array<string|int, mixed>

getOCLC()

Get the OCLC number(s) of the record.

public getOCLC() : array<string|int, mixed>
Return values
array<string|int, mixed>

getOpenUrl()

Get the OpenURL parameters to represent this record (useful for the title attribute of a COinS span tag).

public getOpenUrl([bool $overrideSupportsOpenUrl = false ]) : string
Parameters
$overrideSupportsOpenUrl : bool = false

Flag to override checking supportsOpenUrl() (default is false)

Return values
string

OpenURL parameters.

getOtherVersionCount()

Return count of other versions available

public getOtherVersionCount() : int
Return values
int

getOverdriveAccess()

Get Overdrive Access

public getOverdriveAccess() : bool

Pass-through to the connector to determine whether logged-in user has access to Overdrive actions

Return values
bool

Whether the logged-in user has access to Overdrive.

getOverdriveAvailability()

Returns the availability for the current record

public getOverdriveAvailability() : object|bool
Tags
throws
Exception
Return values
object|bool

returns an object with the info in it (see URL above) or false if there was a problem.

getOverdriveID()

Get Overdrive ID

public getOverdriveID() : string

Returns the Overdrive ID (or resource ID) for the current item. Note: for records in marc format, this may be different than the Solr Record ID

Tags
throws
Exception
Return values
string

OverdriveID

Get Permanent Link to the resource on your institution's OverDrive site

public getPermanentLink() : array<string|int, mixed>
Return values
array<string|int, mixed>

the permanent link to the resource

getPhysicalDescriptions()

Get an array of physical descriptions of the item.

public getPhysicalDescriptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPlacesOfPublication()

Get the item's place of publication.

public getPlacesOfPublication() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPlayingTimes()

Get an array of playing times for the record (if applicable).

public getPlayingTimes() : array<string|int, mixed>
Return values
array<string|int, mixed>

Returns links for showing previews

public getPreviewLinks() : array<string|int, mixed>
Tags
throws
Exception
Return values
array<string|int, mixed>

an array of links

getPreviousTitles()

Get an array of previous titles for the record.

public getPreviousTitles() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPreviousUniqueId()

Get previous unique ID (or null if not applicable).

public getPreviousUniqueId() : string
Return values
string

getPrimaryAuthor()

Get the main author of the record.

public getPrimaryAuthor() : string
Return values
string

getPrimaryAuthors()

Get the main authors of the record.

public getPrimaryAuthors() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPrimaryAuthorsRoles()

Get an array of all main authors roles (complementing getSecondaryAuthorsRoles()).

public getPrimaryAuthorsRoles() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPrimaryAuthorsWithHighlighting()

Get primary author information with highlights applied (if applicable)

public getPrimaryAuthorsWithHighlighting() : array<string|int, mixed>
Return values
array<string|int, mixed>

getProductionCredits()

Get credits of people involved in production of the item.

public getProductionCredits() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPublicationDates()

Get the publication dates of the record. See also getDateSpan().

public getPublicationDates() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPublicationDetails()

Get an array of publication detail lines combining information from getPublicationDates(), getPublishers() and getPlacesOfPublication().

public getPublicationDetails() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPublicationFrequency()

Get an array of publication frequency information.

public getPublicationFrequency() : array<string|int, mixed>
Return values
array<string|int, mixed>

getPublishers()

Get the publishers of the record.

public getPublishers() : array<string|int, mixed>
Return values
array<string|int, mixed>

getRatingBreakdown()

Get rating breakdown for this record.

public getRatingBreakdown(array<string|int, mixed> $groups) : array<string|int, mixed>

Returns an array with the following keys:

rating - average rating (0-100) count - count of ratings groups - grouped counts

Parameters
$groups : array<string|int, mixed>

Group definition (key => [min, max])

Tags
deprecated

Use \VuFind\Ratings\RatingsService::getRatingBreakdown()

Return values
array<string|int, mixed>

getRatingData()

Get rating information for this record.

public getRatingData([int|null $userId = null ]) : array<string|int, mixed>

Returns an array with the following keys:

rating - average rating (0-100) count - count of ratings

Parameters
$userId : int|null = null

User ID, or null for all users

Tags
deprecated

Use \VuFind\Ratings\RatingsService::getRatingData()

Return values
array<string|int, mixed>

getRawAuthorHighlights()

Get highlighted author data, if available.

public getRawAuthorHighlights() : array<string|int, mixed>
Return values
array<string|int, mixed>

getRawData()

Retrieve raw data from object (primarily for use in staff view and autocomplete; avoid using whenever possible).

public getRawData() : mixed
Return values
mixed

getRawMarcData()

Retrieve the raw MARC data for this record; note that format may vary depending on what was indexed (e.g. XML vs. binary MARC).

public getRawMarcData() : string
Return values
string

getRDFXML()

Get an XML RDF representation of the data in this record.

public getRDFXML() : mixed
Return values
mixed

XML RDF data (empty if unsupported or error).

getRealTimeHistory()

Get an array of information about record history, obtained in real-time from the ILS.

public getRealTimeHistory() : array<string|int, mixed>
Return values
array<string|int, mixed>

getRealTimeHoldings()

Get an array of information about record holdings, obtained in real-time from the ILS.

public getRealTimeHoldings() : array<string|int, mixed>
Return values
array<string|int, mixed>

getRealTimeTitleHold()

Get a link for placing a title level hold.

public getRealTimeTitleHold() : mixed
Return values
mixed

A url if a hold is possible, boolean false if not

getRelationshipNotes()

Get an array of strings describing relationships to other items.

public getRelationshipNotes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSchemaOrgFormats()

Get schema.org type mapping, expected to be a space-delimited string of sub-types of http://schema.org/CreativeWork, defaulting to CreativeWork itself if nothing else matches.

public getSchemaOrgFormats() : string
Return values
string

getSchemaOrgFormatsArray()

Get schema.org type mapping, an array of sub-types of http://schema.org/CreativeWork, defaulting to CreativeWork itself if nothing else matches.

public getSchemaOrgFormatsArray() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSearchBackendIdentifier()

Return the search backend identifier used to find the record.

public getSearchBackendIdentifier() : string
Return values
string

getSecondaryAuthors()

Get an array of all secondary authors (complementing getPrimaryAuthors()).

public getSecondaryAuthors() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSecondaryAuthorsRoles()

Get an array of all secondary authors roles (complementing getPrimaryAuthorsRoles()).

public getSecondaryAuthorsRoles() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSeries()

Get an array of all series names containing the record. Array entries may be either the name string, or an associative array with 'name' and 'number' keys.

public getSeries() : array<string|int, mixed>
Return values
array<string|int, mixed>

getShortTitle()

Get the short (pre-subtitle) title of the record.

public getShortTitle() : string
Return values
string

getShortTitlesAltScript()

Get the short (pre-subtitle) title of the record in alternative scripts.

public getShortTitlesAltScript() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSnippetCaption()

Given a field name, return an appropriate caption.

public getSnippetCaption(string $field) : mixed
Parameters
$field : string

Field name

Tags
SuppressWarnings

(PHPMD.UnusedFormalParameter)

Return values
mixed

Caption if found, false if none available.

getSortTitle()

Get a sortable title for the record (i.e. no leading articles).

public getSortTitle() : string
Return values
string

getSource()

Get the item's source.

public getSource() : string
Return values
string

getSourceIdentifier()

Return the source backend identifier.

public getSourceIdentifier() : string
Return values
string

getSubtitle()

Get the subtitle of the record.

public getSubtitle() : string
Return values
string

getSubtitlesAltScript()

Get the subtitle of the record in alternative script.

public getSubtitlesAltScript() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSummary()

Get an array of summary strings for the record.

public getSummary() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSystemDetails()

Get an array of technical details on the item represented by the record.

public getSystemDetails() : array<string|int, mixed>
Return values
array<string|int, mixed>

getTags()

Get tags associated with this record.

public getTags([int $list_id = null ][, int $user_id = null ][, string $sort = 'count' ][, int $ownerId = null ]) : array<string|int, mixed>
Parameters
$list_id : int = null

ID of list to load tags from (null for all lists)

$user_id : int = null

ID of user to load tags from (null for all users)

$sort : string = 'count'

Sort type ('count' or 'tag')

$ownerId : int = null

ID of user to check for ownership

Tags
deprecated

Use TagServiceInterface::getRecordTags() or TagServiceInterface::getRecordTagsFromFavorites() or TagServiceInterface::getRecordTagsNotInFavorites()

Return values
array<string|int, mixed>

getTargetAudienceNotes()

Get an array of note about the record's target audience.

public getTargetAudienceNotes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getThumbnail()

Returns one of three things: a full URL to a thumbnail preview of the record if an image is available in an external system; an array of parameters to send to VuFind's internal cover generator if no fixed URL exists; or false if no thumbnail can be generated.

public getThumbnail([string $size = 'small' ]) : string|array<string|int, mixed>|bool
Parameters
$size : string = 'small'

Size of thumbnail (small, medium or large -- small is default).

Tags
throws
Exception
Return values
string|array<string|int, mixed>|bool

getTitle()

Get the full title of the record.

public getTitle() : string
Return values
string

getTitlesAltScript()

Get the full titles of the record in alternative scripts.

public getTitlesAltScript() : array<string|int, mixed>
Return values
array<string|int, mixed>

getTitleSection()

Get Title Section

public getTitleSection() : string
Return values
string

getTitleSectionsAltScript()

Get the text of the part/section portion of the title in alternative scripts.

public getTitleSectionsAltScript() : array<string|int, mixed>
Return values
array<string|int, mixed>

getTitleStatement()

Get the statement of responsibility that goes with the title (i.e. "by John Smith").

public getTitleStatement() : string
Return values
string

getTOC()

Get an array of lines from the table of contents.

public getTOC() : array<string|int, mixed>
Return values
array<string|int, mixed>

getTranslator()

Get translator object.

public getTranslator() : TranslatorInterface
Return values
TranslatorInterface

getTranslatorLocale()

Get the locale from the translator.

public getTranslatorLocale([string $default = 'en' ]) : string
Parameters
$default : string = 'en'

Default to use if translator absent.

Return values
string

getUniqueID()

Return the unique identifier of this record for retrieving additional information (like tags and user comments) from the external MySQL database.

public abstract getUniqueID() : string
Return values
string

Unique identifier.

getUPC()

Get the UPC number(s) of the record.

public getUPC() : array<string|int, mixed>
Return values
array<string|int, mixed>

getURLs()

Return an array of associative URL arrays with one or more of the following keys:

public getURLs() : array<string|int, mixed>
    • desc: URL description text to display (optional)
      url: fully-formed URL (required if 'route' is absent)
      route: VuFind route to build URL with (required if 'url' is absent)
      routeParams: Parameters for route (optional)
      queryString: Query params to append after building route (optional)
  • Return values
    array<string|int, mixed>

    getUuids()

    Get UUIDs (Universally unique identifier). These are commonly used in, for example, digital library or repository systems and can be a useful match point with third party systems.

    public getUuids() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    getVersions()

    Retrieve versions as a search result

    public getVersions([bool $includeSelf = false ][, int $count = 20 ], int $offset) : RecordCollectionInterface
    Parameters
    $includeSelf : bool = false

    Whether to include this record

    $count : int = 20

    Maximum number of records to display

    $offset : int

    Start position (0-based)

    Return values
    RecordCollectionInterface

    getWorkKeys()

    Get work identification keys

    public getWorkKeys() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    getXML()

    Return an XML representation of the record using the specified format.

    public getXML(string $format[, string $baseUrl = null ][, RecordLinker $linker = null ]) : mixed

    Return false if the format is unsupported.

    Parameters
    $format : string

    Name of format to use (corresponds with OAI-PMH metadataPrefix parameter).

    $baseUrl : string = null

    Base URL of host containing VuFind (optional; may be used to inject record URLs into XML when appropriate).

    $linker : RecordLinker = null

    Record linker helper (optional; may be used to inject record URLs into XML when appropriate).

    Return values
    mixed

    XML, or false if format unsupported.

    isCheckedOut()

    Is Checked Out

    public isCheckedOut() : object

    Is this resource already checked out to the user?

    Tags
    throws
    Exception
    Return values
    object

    Returns the checkout information if currently checked out by this user or false in the data property if not.

    isCollection()

    Get the value of whether or not this is a collection level record

    public isCollection() : bool

    NOTE: \VuFind\Hierarchy\TreeDataFormatter\AbstractBase::isCollection() duplicates some of this logic.

    Return values
    bool

    isHeld()

    Is Held Checks to see if the current record is on hold through Overcdrive.

    public isHeld() : object|bool
    Tags
    throws
    Exception
    Return values
    object|bool

    Returns the hold info if on hold or false if not.

    isLoggedIn()

    Is Logged in

    public isLoggedIn() : bool

    Returns whether the current user is logged in

    Return values
    bool

    isRatingAllowed()

    Check if rating the record is allowed.

    public isRatingAllowed() : bool
    Return values
    bool

    setExtraDetail()

    Store a piece of supplemental information in the record driver.

    public setExtraDetail(string $key, mixed $val) : void
    Parameters
    $key : string

    Name of stored information

    $val : mixed

    Information to store

    Return values
    void

    setHighlightDetails()

    Add highlighting details to the object.

    public setHighlightDetails(array<string|int, mixed> $details) : void
    Parameters
    $details : array<string|int, mixed>

    Details to add

    Return values
    void

    setIlsBackends()

    Set the list of backends that support ILS integration.

    public setIlsBackends(array<string|int, mixed> $backends) : void
    Parameters
    $backends : array<string|int, mixed>

    List of backends that support ILS integration

    Return values
    void

    setLabels()

    Set the labels for the record

    public setLabels(array<string|int, mixed> $labels) : void
    Parameters
    $labels : array<string|int, mixed>

    An array of associative arrays with keys 'label' and 'class'

    Return values
    void

    setPreviousUniqueId()

    Set previous unique ID

    public setPreviousUniqueId(string $id) : void
    Parameters
    $id : string

    ID to set

    Return values
    void

    setRawData()

    Set raw data to initialize the object.

    public setRawData(mixed $data) : void
    Parameters
    $data : mixed

    Raw data representing the record; Record Model objects are normally constructed by Record Driver objects using data passed in from a Search Results object. The exact nature of the data may vary depending on the data source -- the important thing is that the Record Driver + Search Results objects work together correctly.

    Return values
    void

    setSourceIdentifier()

    Set the record source backend identifier.

    public setSourceIdentifier(string $identifier) : void
    Parameters
    $identifier : string

    Record source identifier

    Tags
    deprecated

    Use setSourceIdentifiers instead

    Return values
    void

    setSourceIdentifiers()

    Set the source backend identifiers.

    public setSourceIdentifiers(string $recordSourceId[, string $searchBackendId = '' ]) : void
    Parameters
    $recordSourceId : string

    Record source identifier

    $searchBackendId : string = ''

    Search backend identifier (if different from $recordSourceId)

    Return values
    void

    supportsAjaxStatus()

    Returns true if the record supports real-time AJAX status lookups.

    public supportsAjaxStatus() : bool
    Return values
    bool

    supportsCoinsOpenUrl()

    Supports coins OpenURL

    public supportsCoinsOpenUrl() : bool
    Return values
    bool

    supportsOpenUrl()

    Supports OpenURL

    public supportsOpenUrl() : bool
    Return values
    bool

    supportsPatronActions()

    Returns a boolean indicating if patron actions are supported

    public supportsPatronActions() : bool
    Return values
    bool

    translate()

    Translate a string (or string-castable object)

    public translate(string|object|array<string|int, mixed> $target[, array<string|int, mixed> $tokens = [] ][, string $default = null ][, bool $useIcuFormatter = false ][, array<string|int, string> $fallbackDomains = [] ]) : string
    Parameters
    $target : string|object|array<string|int, mixed>

    String to translate or an array of text domain and string to translate

    $tokens : array<string|int, mixed> = []

    Tokens to inject into the translated string

    $default : string = null

    Default value to use if no translation is found (null for no default).

    $useIcuFormatter : bool = false

    Should we use an ICU message formatter instead of the default behavior?

    $fallbackDomains : array<string|int, string> = []

    Text domains to check if no match is found in the domain specified in $target

    Return values
    string

    translateWithPrefix()

    Translate a string (or string-castable object) using a prefix, or without the prefix if a prefixed translation is not found.

    public translateWithPrefix(string $prefix, string|object|array<string|int, mixed> $target[, array<string|int, mixed> $tokens = [] ][, string $default = null ][, bool $useIcuFormatter = false ][, array<string|int, string> $fallbackDomains = [] ]) : string
    Parameters
    $prefix : string

    Translation key prefix

    $target : string|object|array<string|int, mixed>

    String to translate or an array of text domain and string to translate

    $tokens : array<string|int, mixed> = []

    Tokens to inject into the translated string

    $default : string = null

    Default value to use if no translation is found (null for no default).

    $useIcuFormatter : bool = false

    Should we use an ICU message formatter instead of the default behavior?

    $fallbackDomains : array<string|int, string> = []

    Text domains to check if no match is found in the domain specified in $target

    Return values
    string

    tryMethod()

    Try to call the requested method and return null if it is unavailable; this is useful for checking for the existence of get methods for particular types of data without causing fatal errors.

    public tryMethod(string $method[, array<string|int, mixed> $params = [] ][, mixed $default = null ]) : mixed
    Parameters
    $method : string

    Name of method to call.

    $params : array<string|int, mixed> = []

    Array of parameters to pass to method.

    $default : mixed = null

    A default value to return if the method is not callable

    Return values
    mixed

    debug()

    Log a debug message.

    protected debug(string $msg[, array<string|int, mixed> $context = [] ][, bool $prependClass = true ]) : void
    Parameters
    $msg : string

    Log message

    $context : array<string|int, mixed> = []

    Log context

    $prependClass : bool = true

    Prepend class name to message?

    Return values
    void

    extractSingleMarcDetail()

    Support method for getFormattedMarcDetails() -- extract a single result

    protected extractSingleMarcDetail(array<string|int, mixed> $currentField, array<string|int, mixed> $details) : string|bool
    Parameters
    $currentField : array<string|int, mixed>

    Result from MarcReader::getFields

    $details : array<string|int, mixed>

    Parsed instructions from getFormattedMarcDetails()

    Return values
    string|bool

    extractTextDomain()

    Given a translation string with or without a text domain, return an array with the raw string and the text domain separated.

    protected extractTextDomain(string|object|array<string|int, mixed> $target) : array<string|int, mixed>
    Parameters
    $target : string|object|array<string|int, mixed>

    String to translate or an array of text domain and string to translate

    Return values
    array<string|int, mixed>

    getAllSubjectHeadingsNumericalOrder()

    Get all subject headings associated with this record. Each heading is returned as an array of chunks, increasing from least specific to most specific. Sorted numerically on marc fields.

    protected getAllSubjectHeadingsNumericalOrder([bool $extended = false ]) : array<string|int, mixed>
    Parameters
    $extended : bool = false

    Whether to return a keyed array with the following keys:

    • heading: the actual subject heading chunks
    • type: heading type
    • source: source vocabulary
    Return values
    array<string|int, mixed>

    getAllSubjectHeadingsRecordOrder()

    Get all subject headings associated with this record. Each heading is returned as an array of chunks, increasing from least specific to most specific. Sorted in the same way it is saved for the record.

    protected getAllSubjectHeadingsRecordOrder([bool $extended = false ]) : array<string|int, mixed>
    Parameters
    $extended : bool = false

    Whether to return a keyed array with the following keys:

    • heading: the actual subject heading chunks
    • type: heading type
    • source: source vocabulary
    Return values
    array<string|int, mixed>

    getArticleOpenUrlParams()

    Get OpenURL parameters for an article.

    protected getArticleOpenUrlParams() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    getBookOpenUrlParams()

    Get OpenURL parameters for a book.

    protected getBookOpenUrlParams() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    getCoinsID()

    Get the COinS identifier.

    protected getCoinsID() : string
    Return values
    string

    getDebugTranslation()

    Build a debug-mode translation

    protected getDebugTranslation(string $domain, string $str, array<string|int, mixed> $tokens) : string
    Parameters
    $domain : string

    Text domain

    $str : string

    String to translate

    $tokens : array<string|int, mixed>

    Tokens to inject into the translated string

    Return values
    string

    getDefaultOpenUrlParams()

    Get default OpenURL parameters.

    protected getDefaultOpenUrlParams() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    getFieldArray()

    Return an array of all values extracted from the specified field/subfield combination. If multiple subfields are specified and $concat is true, they will be concatenated together in the order listed -- each entry in the array will correspond with a single MARC field. If $concat is false, the return array will contain separate entries for separate subfields.

    protected getFieldArray(string $field[, array<string|int, mixed> $subfields = null ][, bool $concat = true ][, string $separator = ' ' ]) : array<string|int, mixed>
    Parameters
    $field : string

    The MARC field number to read

    $subfields : array<string|int, mixed> = null

    The MARC subfield codes to read

    $concat : bool = true

    Should we concatenate subfields?

    $separator : string = ' '

    Separator string (used only when $concat === true)

    Return values
    array<string|int, mixed>

    getFieldData()

    Returns the array element for the 'getAllRecordLinks' method

    protected getFieldData(array<string|int, mixed> $field) : array<string|int, mixed>|bool
    Parameters
    $field : array<string|int, mixed>

    Field to examine

    Return values
    array<string|int, mixed>|bool

    Array on success, boolean false if no valid link could be found in the data.

    getFirstFieldValue()

    Get the first value matching the specified MARC field and subfields.

    protected getFirstFieldValue(string $field[, array<string|int, mixed> $subfields = null ]) : string

    If multiple subfields are specified, they will be concatenated together.

    Parameters
    $field : string

    The MARC field to read

    $subfields : array<string|int, mixed> = null

    The MARC subfield codes to read

    Return values
    string

    getIdFromLinkingField()

    Returns an id extracted from the identifier subfield passed in

    protected getIdFromLinkingField(string $idField[, string $prefix = null ][, bool $raw = false ]) : string|bool
    Parameters
    $idField : string

    MARC subfield containing id information

    $prefix : string = null

    Prefix to search for in id field

    $raw : bool = false

    Return raw match, or normalize?

    Return values
    string|bool

    ID on success, false on failure

    getJournalOpenUrlParams()

    Get OpenURL parameters for a journal.

    protected getJournalOpenUrlParams() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    getOpenUrlFormat()

    Support method for getOpenUrl() -- pick the OpenURL format.

    protected getOpenUrlFormat() : string
    Return values
    string

    getPublicationInfo()

    Get the item's publication information

    protected getPublicationInfo([string $subfield = 'a' ]) : array<string|int, mixed>
    Parameters
    $subfield : string = 'a'

    The subfield to retrieve ('a' = location, 'c' = date)

    Return values
    array<string|int, mixed>

    getRawLCCN()

    Get a raw, unnormalized LCCN. (See getLCCN for normalization).

    protected getRawLCCN() : string
    Return values
    string

    getRecordLinkNote()

    Support method for getFieldData() -- factor the relationship indicator into the field number where relevant to generate a note to associate with a record link.

    protected getRecordLinkNote(array<string|int, mixed> $field) : string
    Parameters
    $field : array<string|int, mixed>

    Field to examine

    Return values
    string

    getSeriesFromMARC()

    Support method for getSeries() -- given a field specification, look for series information in the MARC record.

    protected getSeriesFromMARC(array<string|int, mixed> $fieldInfo) : array<string|int, mixed>
    Parameters
    $fieldInfo : array<string|int, mixed>

    Associative array of field => subfield information (used to find series name)

    Return values
    array<string|int, mixed>

    getSubfield()

    Return first subfield with the given code in the provided MARC field

    protected getSubfield(array<string|int, mixed> $field, string $subfield) : string
    Parameters
    $field : array<string|int, mixed>

    Result from MarcReader::getFields

    $subfield : string

    The MARC subfield code to get

    Return values
    string

    getSubfieldArray()

    Return an array of non-empty subfield values found in the provided MARC field. If $concat is true, the array will contain either zero or one entries (empty array if no subfields found, subfield values concatenated together in specified order if found). If concat is false, the array will contain a separate entry for each subfield value found.

    protected getSubfieldArray(array<string|int, mixed> $currentField, array<string|int, mixed> $subfields[, bool $concat = true ][, string $separator = ' ' ]) : array<string|int, mixed>
    Parameters
    $currentField : array<string|int, mixed>

    Result from MarcReader::getFields

    $subfields : array<string|int, mixed>

    The MARC subfield codes to read

    $concat : bool = true

    Should we concatenate subfields?

    $separator : string = ' '

    Separator string (used only when $concat === true)

    Return values
    array<string|int, mixed>

    getSubfields()

    Return all subfields with the given code in the provided MARC field

    protected getSubfields(array<string|int, mixed> $field, string $subfield) : array<string|int, mixed>
    Parameters
    $field : array<string|int, mixed>

    Result from MarcReader::getFields

    $subfield : string

    The MARC subfield code to get

    Return values
    array<string|int, mixed>

    getSupportedCitationFormats()

    Get an array of strings representing citation formats supported by this record's data (empty if none). For possible legal values, see /application/themes/root/helpers/Citation.php.

    protected getSupportedCitationFormats() : array<string|int, mixed>
    Return values
    array<string|int, mixed>

    Strings representing citation formats.

    getUnknownFormatOpenUrlParams()

    Get OpenURL parameters for an unknown format.

    protected getUnknownFormatOpenUrlParams([string $format = 'UnknownFormat' ]) : array<string|int, mixed>
    Parameters
    $format : string = 'UnknownFormat'

    Name of format

    Return values
    array<string|int, mixed>

    hasILS()

    Do we have an attached ILS connection?

    protected hasILS() : bool
    Return values
    bool

    log()

    Send a message to the logger.

    protected log(string $level, string $message[, array<string|int, mixed> $context = [] ][, bool $prependClass = false ]) : void
    Parameters
    $level : string

    Log level

    $message : string

    Log message

    $context : array<string|int, mixed> = []

    Log context

    $prependClass : bool = false

    Prepend class name to message?

    Return values
    void

    logError()

    Log an error message.

    protected logError(string $msg[, array<string|int, mixed> $context = [] ][, bool $prependClass = true ]) : void
    Parameters
    $msg : string

    Log message

    $context : array<string|int, mixed> = []

    Log context

    $prependClass : bool = true

    Prepend class name to message?

    Return values
    void

    logWarning()

    Log a warning message.

    protected logWarning(string $msg[, array<string|int, mixed> $context = [] ][, bool $prependClass = true ]) : void
    Parameters
    $msg : string

    Log message

    $context : array<string|int, mixed> = []

    Log context

    $prependClass : bool = true

    Prepend class name to message?

    Return values
    void

    processSubjectHeadings()

    Get subject headings of a given record field.

    protected processSubjectHeadings(array<string|int, mixed> $field, bool $extended, string $fieldType) : array<string|int, mixed>|null

    The heading is returned as a chunk, increasing from least specific to most specific.

    Parameters
    $field : array<string|int, mixed>

    field to handle

    $extended : bool

    Whether to return a keyed array with the following keys:

    • heading: the actual subject heading chunks - type: heading type - source: source vocabulary
    $fieldType : string

    Type of the field

    Return values
    array<string|int, mixed>|null

    sanitizeTranslationKey()

    Make sure there are not any illegal characters in the translation key that might prevent successful lookup in language files.

    protected sanitizeTranslationKey(string $key) : string
    Parameters
    $key : string

    Key to sanitize

    Return values
    string

    Sanitized key

    translateString()

    Get translation for a string

    protected translateString(string $rawStr[, array<string|int, mixed> $tokens = [] ][, string $default = null ][, string $domain = 'default' ][, bool $useIcuFormatter = false ]) : string
    Parameters
    $rawStr : string

    String to translate

    $tokens : array<string|int, mixed> = []

    Tokens to inject into the translated string

    $default : string = null

    Default value to use if no translation is found (null for no default).

    $domain : string = 'default'

    Text domain (omit for default)

    $useIcuFormatter : bool = false

    Should we use an ICU message formatter instead of the default behavior?

    Return values
    string

    Search results