This guide explains how to perform advanced search queries on Zenodo using easy to understand examples.
Example: open science
Results will match records with the terms open
or science
in any field. Note that stemming is applied so e.g. science
will also match sciences
. Search results are ranked according to an algorithm that takes your query terms into account.
You can require presence of both terms using either the +
or AND
operator:
Examples: +open +science
or open AND science
You can require absence of one or more terms using either the -
or NOT
operator:
Examples: -open +science
or NOT open AND science
Example: "open science"
Results will match records with the phrase open science
in any field.
Example: title:open
Results will match records with the term open
in the field title
. If you want to search for multiple terms in the title you must group the terms using parenthesis:
Example: title:(open science)
See the field reference below for the full list of fields you can search.
Example: +title:"open science" -title:policy
or e.g. title:(-open +science)
You can combine simple, phrase and field search to construct advanced search queries.
Example: publication_date:[2017-01-01 TO 2018-01-01]
(note, you must capitalize TO
).
Results will match any record with a publication date between 2017-01-01 and 2018-01-01 (both dates inclusive).
Use square brackets ([]
) for inclusive ranges and use curly brackets ({}
) for exclusive ranges, e.g.:
[2017-01-01 TO 2018-01-01}
is equivalent to [2017-01-01 TO 2017-12-31]
.Examples of other ranges:
publication_date:{* TO 2017-01-01}
: All days until 2017.publication_date:[2017-01-01 TO *]
: All days from 2017.size:[1000000 TO *]
: File size bigger than 1MB.size:>1000000
: File size bigger than 1MB.size:>=1000000
: File size bigger than or equal to 1MB.By default all searches are sorted according to an internal ranking algorithm that scores each match against your query. In both the user interface and REST API, it's possible to sort the results by:
Regular expressions are a powerful pattern matching language that allow to search for specific patterns in a field. For instance if we wanted to find all records with a DOI-prefix 10.5281 we could use a regular expression search:
Example: doi:/10\.5281\/.+/
Careful, the regular expression must match the entire field value. See the regular expression syntax for further details.
It is possible to search for records that either are missing a value or have a value in a specific field using the _exists_
and _missing_
field names.
Example: _missing_:notes
(all records without notes)
Example: _exists_:notes
(all records with notes)
You can use the boost operator ^
when one term is more relevant than another. For instance, you can search for all records with the phrase open science in either title or description field, but rank records with the phrase in the title field higher:
Example: title:"open science"^5 description:"open science"
You can search for terms similar to but not exactly like your search term using the fuzzy operator ~
.
Example: oepn~
Results will match records with terms similar to oepn
which would e.g. also match open
.
A phrase search like "open science"
by default expect all terms in exactly the same order, and thus for instance would not match a record containing the phrase "open access and science". A proximity search allows that the terms are not in the exact order and may include other terms inbetween. The degree of flexiblity is specified by an integer afterwards:
Example: "open science"~5
You can use wildcards in search terms to replace a single character (using ?
operator) or zero or more characters (using *
operator).
Example: ope? scien*
Wildcard searches can be slow and should normally be avoided if possible.
The table below lists the data type of each field. Below is a quick description of what each data type means and what is possible.
title
).doi
).2017-12-31
(range queries possible).true
or false
.Field name | Type | Notes | |
---|---|---|---|
access_conditions |
string | ||
access_right |
CV | See "Access rights (CV)" below. | |
alternate.identifier |
string (exact) | ||
alternate.scheme |
CV | See "Identifier schemes (CV)" below. | |
communities |
string (exact) | Identifier of community. | |
conceptdoi |
string (exact) | Related to DOI versioning. | |
contributors.\* |
string | Contributors name, affiliation, type and ORCID | |
contributors.affiliation |
string | ||
contributors.name |
string | ||
contributors.orcid |
string (exact) | ||
contributors.type |
CV | See "Contributor types (CV)" below. | |
created |
datetime | Creation timestamp of record in Zenodo. | |
creators.\* |
string | ||
creators.affiliation |
string | ||
creators.name |
string | ||
creators.orcid |
string (exact) | ||
description |
string | ||
doi |
string (exact) | ||
embargodate |
datetime | ||
filecount |
integer | Number of files in record. | |
filename |
string (exact) | ||
filetype |
string (exact) | File extension (e.g. pdf ). |
|
grants.\* |
string | ||
grants.acronym |
string | ||
grants.code |
string (exact) | ||
grants.funder.\* |
string | ||
grants.funder.acronyms |
string | ||
grants.funder.doi |
string (exact) | Open Funder Registry DOI | |
grants.funder.name |
string | ||
grants.program |
string | ||
grants.title |
string | ||
imprint.\* |
string | ||
imprint.place |
string | ||
imprint.publisher |
string | ||
isbn |
string (exact) | ||
journal.\* |
string | ||
journal.issue |
string | ||
journal.pages |
string | ||
journal.title |
string | ||
journal.volume |
string | ||
journal.year |
string | ||
keywords |
string | ||
language |
CV | ISO639 two or three letter language code. | |
license.\* |
string | ||
license.identifier |
CV | ||
license.license |
string (exact) | ||
license.url |
string (exact) | ||
meeting.\* |
string | ||
meeting.acronym |
string (exact) | ||
meeting.dates |
string | ||
meeting.place |
string | ||
meeting.session_part |
string (exact) | ||
meeting.session |
string (exact) | ||
meeting.title |
string | ||
meeting.url |
string (exact) | ||
notes |
string | ||
owners |
integer | ||
part_of.\* |
string | ||
part_of.pages |
string | ||
part_of.title |
string | ||
publicationdate |
datetime | Date of publication (see also created and updated fields). |
|
recid |
integer | Zenodo specific record identifier. | |
references.\* |
string | ||
related.identifier |
string (exact) | ||
related.scheme |
CV | See "Identifier schemes (CV)" below. | |
related.relation |
CV | See "Relations (CV)" below. | |
relations.version.count |
integer | Number of versions of record. | |
resource_type.subtype |
CV | See "Resource types (CV)" below. | |
resource_type.type |
CV | See "Resource types (CV)" below. | |
size |
integer | File size in bytes. | |
subject.term |
string | ||
subject.identifier |
string (exact) | ||
title |
string | ||
type |
CV | See also resource_type field, as well as "Resource types (CV)" below. |
|
updated |
datetime | Timestamp of last update to record | |
version |
string | Version information text (e.g. v1.0.2 ) |
Example: resource_type.type:software
publication
poster
presentation
dataset
image
video
software
lesson
other
Example: access_right:closed
open
- Open access (see field also license
).closed
- Closed access (access to files only by owner).embargoed
- Embargoed access (see also field embargodate
and license
).restricted
- Restricted access (see also field access_conditions
).Example: related.scheme:ads
ads
ark
arxiv
bibcode
doi
ean13
ean8
eissn
gnd
handle
isbn
issn
istc
lissn
lsid
orcid
pmcid
pmid
purl
upc
url
urn
Example: related.relation:cites
cites
compiles
continues
documents
hasMetadata
hasPart
isCitedBy
isCompiledBy
isContinuedBy
isDerivedFrom
isDocumentedBy
isIdenticalTo
isMetadataFor
isNewVersionOf
isOrignialFormOf
isPartOf
isPreviousVersionOf
isReferencedBy
isReviewedBy
isSourceOf
isSupplementedBy
isSupplementTo
isVariantFormOf
references
reviews
Example: contributors.type:ContactPerson
ContactPerson
DataCollector
DataCurator
DataManager
Distributor
Editor
Funder
HostingInstitution
Other
Producer
ProjectLeader
ProjectManager
ProjectMember
RegistrationAgency
RegistrationAuthority
RelatedPerson
ResearchGroup
RightsHolder
Researcher
Sponsor
Supervisor
WorkPackageLeader