.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Biber::Entry 3pm" .TH Biber::Entry 3pm 2023-07-25 "perl v5.38.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Biber::Entry \- Biber::Entry objects .SS new .IX Subsection "new" .Vb 1 \& Initialize a Biber::Entry object \& \& There are three types of field possible in an entry: \& \& * data \- These are fields which derive directly from or are themselves fields in the \& data source. Things like YEAR, MONTH, DAY etc. are such fields which are \& derived from, for example, the DATE field. They are part of the original \& data implicitly, derived from a field. \& * derived \- These are fields, often meta\-information like labelname, labelalpha etc. \& which are more removed from the data fields. \& \& The reason for this division is largely the entry cloning required for the related entry and \& inheritance features. When we clone an entry or copy some fields from one entry to another \& we generally don\*(Aqt want the "derived" category as such derived meta\-fields will often need \& to be re\-created or ignored so we need to know which are the actual "data" fields to \& copy/clone. .Ve .SS relclone .IX Subsection "relclone" .Vb 1 \& Recursively create related entry clones starting with an entry .Ve .SS clone .IX Subsection "clone" .Vb 2 \& Clone a Biber::Entry object and return a copy \& Accepts optionally a key for the copy .Ve .SS notnull .IX Subsection "notnull" .Vb 1 \& Test for an empty object .Ve .SS add_xdata_ref .IX Subsection "add_xdata_ref" .Vb 4 \& Add an XDATA reference to the entry \& Reference can be simply to an entire XDATA entry or a particular field+position in field \& Record reference and target positions so that the XDATA marker can be removed as otherwise \& it would break further parsing .Ve .SS get_xdata_refs .IX Subsection "get_xdata_refs" .Vb 1 \& Get the XDATA references .Ve .SS get_xdata_ref .IX Subsection "get_xdata_ref" .Vb 1 \& Get a specific XDATA reference .Ve .SS is_xdata_resolved .IX Subsection "is_xdata_resolved" .Vb 2 \& Checks if an XDATA reference was resolved. Returns false also for \& "no such reference". .Ve .SS set_labelname_info .IX Subsection "set_labelname_info" .Vb 3 \& Record the labelname information. This is special \& meta\-information so we have a separate method for this \& Takes a hash ref with the information. .Ve .SS get_labelname_info .IX Subsection "get_labelname_info" .Vb 3 \& Retrieve the labelname information. This is special \& meta\-information so we have a separate method for this \& Returns a hash ref with the information. .Ve .SS set_labelnamefh_info .IX Subsection "set_labelnamefh_info" .Vb 3 \& Record the fullhash labelname information. This is special \& meta\-information so we have a separate method for this \& Takes a hash ref with the information. .Ve .SS get_labelnamefh_info .IX Subsection "get_labelnamefh_info" .Vb 3 \& Retrieve the fullhash labelname information. This is special \& meta\-information so we have a separate method for this \& Returns a hash ref with the information. .Ve .SS set_labeltitle_info .IX Subsection "set_labeltitle_info" .Vb 3 \& Record the labeltitle information. This is special \& meta\-information so we have a separate method for this \& Takes a hash ref with the information. .Ve .SS get_labeltitle_info .IX Subsection "get_labeltitle_info" .Vb 3 \& Retrieve the labeltitle information. This is special \& meta\-information so we have a separate method for this \& Returns a hash ref with the information. .Ve .SS set_labeldate_info .IX Subsection "set_labeldate_info" .Vb 3 \& Record the labeldate information. This is special \& meta\-information so we have a separate method for this \& Takes a hash ref with the information. .Ve .SS get_labeldate_info .IX Subsection "get_labeldate_info" .Vb 3 \& Retrieve the labeldate information. This is special \& meta\-information so we have a separate method for this \& Returns a hash ref with the information. .Ve .SS set_field .IX Subsection "set_field" .Vb 2 \& Set a derived field for a Biber::Entry object, that is, a field \& which was not an actual bibliography field .Ve .SS get_field .IX Subsection "get_field" .Vb 2 \& Get a field for a Biber::Entry object \& Uses // as fields can be null (end dates etc). .Ve .SS set_datafield .IX Subsection "set_datafield" .Vb 1 \& Set a field which is in the .bib data file .Ve .SS get_datafield .IX Subsection "get_datafield" .Vb 1 \& Get a field that was in the original data file .Ve .SS del_field .IX Subsection "del_field" .Vb 1 \& Delete a field in a Biber::Entry object .Ve .SS del_datafield .IX Subsection "del_datafield" .Vb 1 \& Delete an original data source data field in a Biber::Entry object .Ve .SS field_exists .IX Subsection "field_exists" .Vb 1 \& Check whether a field exists (even if null) .Ve .SS date_fields_exist .IX Subsection "date_fields_exist" .Vb 1 \& Check whether any parts of a date field exist when passed a datepart field name .Ve .SS delete_date_fields .IX Subsection "delete_date_fields" .Vb 1 \& Delete all parts of a date field when passed any datepart field name .Ve .SS datafields .IX Subsection "datafields" .Vb 1 \& Returns a sorted array of the fields which came from the data source .Ve .SS count_datafields .IX Subsection "count_datafields" .Vb 1 \& Returns the number of datafields .Ve .SS derivedfields .IX Subsection "derivedfields" .Vb 1 \& Returns a sorted array of the fields which were added during processing .Ve .SS fields .IX Subsection "fields" .Vb 3 \& Returns a sorted array of all field names, including ones \& added during processing which are not necessarily fields \& which came from the data file .Ve .SS count_fields .IX Subsection "count_fields" .Vb 1 \& Returns the number of fields .Ve .SS has_keyword .IX Subsection "has_keyword" .Vb 2 \& Check if a Biber::Entry object has a particular keyword in \& in the KEYWORDS field. .Ve .SS add_warning .IX Subsection "add_warning" .Vb 1 \& Append a warning to a Biber::Entry object .Ve .SS set_inherit_from .IX Subsection "set_inherit_from" .Vb 1 \& Inherit fields from first child entry \& \& $entry\->set_inherit_from($firstchild); \& \& Takes a second Biber::Entry object as argument \& \& The purpose here is to inherit fields so that sorting/labelling defaults \& can be generated for set parents from the first child set member data, unless \& the set parent itself already has some fields set that will do this. Set \& parents only have certain fields output in the .bbl and those that output but \& are not used in sorting/labelling data generation should not be inherited. .Ve .SS resolve_xdata .IX Subsection "resolve_xdata" .Vb 2 \& Recursively resolve XDATA in an entry. Sets a flag in the XDATA metadata to \& say if the reference was successfully resolved. \& \& $entry\->resolve_xdata($xdata); .Ve .SS inherit_from .IX Subsection "inherit_from" .Vb 1 \& Inherit fields from parent entry (as indicated by the crossref field) \& \& $entry\->inherit_from($parententry); \& \& Takes a second Biber::Entry object as argument \& Uses the crossref inheritance specifications from the .bcf .Ve .SS dump .IX Subsection "dump" .Vb 1 \& Dump Biber::Entry object .Ve .SH AUTHORS .IX Header "AUTHORS" Philip Kime \f(CW\*(C`\*(C'\fR .SH BUGS .IX Header "BUGS" Please report any bugs or feature requests on our Github tracker at . .SH "COPYRIGHT & LICENSE" .IX Header "COPYRIGHT & LICENSE" Copyright 2009\-2012 François Charette and Philip Kime, all rights reserved. Copyright 2012\-2023 Philip Kime, all rights reserved. .PP This module is free software. You can redistribute it and/or modify it under the terms of the Artistic License 2.0. .PP This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.