# Repository

A Repository is the target of a [Deposit](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/deposit). It is a platform where [copies](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/repositorycopy) of [publications](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/publication) can be [deposited](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/deposit) in order to comply with [Funder](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/funder) and institutional access [policies](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/policy).

| Field           | Type      | Description                                                                                                                                                                                                                                                          |
| --------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id\*            | String    | Autogenerated identifier of object                                                                                                                                                                                                                                   |
| name\*          | String    | Name of repository e.g. "PubMed Central"                                                                                                                                                                                                                             |
| description     | String    | Several sentence description of repository                                                                                                                                                                                                                           |
| url             | String    | URL to the homepage of the repository so that PASS users can view the platform before deciding whether to participate in it                                                                                                                                          |
| agreementText   | String    | The legal text that a `submitter` must agree to in order to submit a publication to this Repository                                                                                                                                                                  |
| formSchema      | String    | *(deprecated)* Stringified JSON representing a form template to be loaded by the front-end when this Repository is selected                                                                                                                                          |
| integrationType | String    | Type of integration that PASS has with the Repository ([*see list below*](#integration-type-options))                                                                                                                                                                |
| repositoryKey   | String    | Key that is unique to this Repository instance within PASS. Used to look up the Repository when its URI is not available e.g., prior to the creation of this Repository resource in Fedora. See below for a [*list of currently used keys*](#repository-key-values). |
| schemas         | String\[] | Contains an array of relative URIs that the pass-core metadata service can resolve to JSON schema documents describing the repository's metadata requirements                                                                                                        |

\*required

## Integration type options

These are the possible types of integration a Repository can have with PASS.

| Value    | Description                                                                                                                                                                                                   |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| full     | PASS can make [Deposits](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/deposit) to this Repository, and will received updates about its status                 |
| one-way  | PASS can make [Deposits](https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/deposit) to this Repository but will not automatically receive updates about its status |
| web-link | A deposit cannot automatically be made to this Repository from PASS, only a web link can be created.                                                                                                          |

## Repository key values

These are the repository keys currently used in PASS. This list will grow as more repositories are supported.

| Value        | Repository name                                                          |
| ------------ | ------------------------------------------------------------------------ |
| pmc          | [PubMed Central](https://www.ncbi.nlm.nih.gov/pmc/)                      |
| jscholarship | [Johns Hopkins JScholarship](https://jscholarship.library.jhu.edu/)      |
| eric         | [Education Resources Information Center](https://eric.ed.gov/) (ERIC)    |
| dec          | [Development Experience Clearinghouse](https://dec.usaid.gov/dec/) (DEC) |
| dash         | [Harvard DASH](https://dash.harvard.edu/)                                |
| inveniordm   | [Invenio RDM](https://inveniosoftware.org/products/rdm/)                 |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.eclipse-pass.org/pass-documentation-dev/developer-documentation/pass-core/model/repository.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
