package eu.eudat.models.rda; import java.io.Serializable; import java.net.URI; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import eu.eudat.logic.utilities.json.MultiDateDeserializer; /** * The DMP Schema *
* * */ @JsonIgnoreProperties(value = { "schema" }, ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "contact", "contributor", "cost", "created", "dataset", "description", "dmp_id", "ethical_issues_description", "ethical_issues_exist", "ethical_issues_report", "language", "modified", "project", "title", "additional_properties" }) public class Dmp implements Serializable { /** * The DMP Contact Schema *
* * (Required) * */ @JsonProperty("contact") private Contact contact; /** * The Contributor Schema *
*
*
*/
@JsonProperty("contributor")
private List
*
*
*/
@JsonProperty("cost")
private List
*
*
*/
@JsonProperty("created")
@JsonDeserialize(using = MultiDateDeserializer.class)
@JsonPropertyDescription("")
private Date created;
/**
* The Dataset Schema
*
*
* (Required)
*
*/
@JsonProperty("dataset")
private List
* To provide any free-form text information on a DMP
*
*/
@JsonProperty("description")
@JsonPropertyDescription("To provide any free-form text information on a DMP")
private String description;
/**
* The DMP Identifier Schema
*
* Identifier for the DMP itself
* (Required)
*
*/
@JsonProperty("dmp_id")
@JsonPropertyDescription("Identifier for the DMP itself")
private DmpId dmpId;
/**
* The DMP Ethical Issues Description Schema
*
* To describe ethical issues directly in a DMP
*
*/
@JsonProperty("ethical_issues_description")
@JsonPropertyDescription("To describe ethical issues directly in a DMP")
private String ethicalIssuesDescription;
/**
* The DMP Ethical Issues Exist Schema
*
* To indicate whether there are ethical issues related to data that this DMP describes. Allowed values: yes, no, unknown
* (Required)
*
*/
@JsonProperty("ethical_issues_exist")
@JsonPropertyDescription("To indicate whether there are ethical issues related to data that this DMP describes. Allowed values: yes, no, unknown")
private Dmp.EthicalIssuesExist ethicalIssuesExist;
/**
* The DMP Ethical Issues Report Schema
*
* To indicate where a protocol from a meeting with an ethical commitee can be found
*
*/
@JsonProperty("ethical_issues_report")
@JsonPropertyDescription("To indicate where a protocol from a meeting with an ethical commitee can be found")
private URI ethicalIssuesReport;
/**
* The DMP Language Schema
*
* Language of the DMP expressed using ISO 639-3.
* (Required)
*
*/
@JsonProperty("language")
@JsonPropertyDescription("Language of the DMP expressed using ISO 639-3.")
private Language language;
/**
* The DMP Modification Schema
*
* Must be set each time DMP is modified. Indicates DMP version.
* (Required)
*
*/
@JsonProperty("modified")
@JsonDeserialize(using = MultiDateDeserializer.class)
@JsonPropertyDescription("Must be set each time DMP is modified. Indicates DMP version.")
private Date modified;
/**
* The DMP Project Schema
*
* Project related to a DMP
*
*/
@JsonProperty("project")
@JsonPropertyDescription("Project related to a DMP")
private List
* Title of a DMP
* (Required)
*
*/
@JsonProperty("title")
@JsonPropertyDescription("Title of a DMP")
private String title;
@JsonProperty("additional_properties")
private Map
*
* (Required)
*
*/
@JsonProperty("contact")
public Contact getContact() {
return contact;
}
/**
* The DMP Contact Schema
*
*
* (Required)
*
*/
@JsonProperty("contact")
public void setContact(Contact contact) {
this.contact = contact;
}
/**
* The Contributor Schema
*
*
*
*/
@JsonProperty("contributor")
public List
*
*
*/
@JsonProperty("contributor")
public void setContributor(List
*
*
*/
@JsonProperty("cost")
public List
*
*
*/
@JsonProperty("cost")
public void setCost(List
*
*
*/
@JsonProperty("created")
public Date getCreated() {
return created;
}
/**
* The DMP Creation Schema
*
*
*
*/
@JsonProperty("created")
public void setCreated(Date created) {
this.created = created;
}
/**
* The Dataset Schema
*
*
* (Required)
*
*/
@JsonProperty("dataset")
public List
*
* (Required)
*
*/
@JsonProperty("dataset")
public void setDataset(List
* To provide any free-form text information on a DMP
*
*/
@JsonProperty("description")
public String getDescription() {
return description;
}
/**
* The DMP Description Schema
*
* To provide any free-form text information on a DMP
*
*/
@JsonProperty("description")
public void setDescription(String description) {
this.description = description;
}
/**
* The DMP Identifier Schema
*
* Identifier for the DMP itself
* (Required)
*
*/
@JsonProperty("dmp_id")
public DmpId getDmpId() {
return dmpId;
}
/**
* The DMP Identifier Schema
*
* Identifier for the DMP itself
* (Required)
*
*/
@JsonProperty("dmp_id")
public void setDmpId(DmpId dmpId) {
this.dmpId = dmpId;
}
/**
* The DMP Ethical Issues Description Schema
*
* To describe ethical issues directly in a DMP
*
*/
@JsonProperty("ethical_issues_description")
public String getEthicalIssuesDescription() {
return ethicalIssuesDescription;
}
/**
* The DMP Ethical Issues Description Schema
*
* To describe ethical issues directly in a DMP
*
*/
@JsonProperty("ethical_issues_description")
public void setEthicalIssuesDescription(String ethicalIssuesDescription) {
this.ethicalIssuesDescription = ethicalIssuesDescription;
}
/**
* The DMP Ethical Issues Exist Schema
*
* To indicate whether there are ethical issues related to data that this DMP describes. Allowed values: yes, no, unknown
* (Required)
*
*/
@JsonProperty("ethical_issues_exist")
public Dmp.EthicalIssuesExist getEthicalIssuesExist() {
return ethicalIssuesExist;
}
/**
* The DMP Ethical Issues Exist Schema
*
* To indicate whether there are ethical issues related to data that this DMP describes. Allowed values: yes, no, unknown
* (Required)
*
*/
@JsonProperty("ethical_issues_exist")
public void setEthicalIssuesExist(Dmp.EthicalIssuesExist ethicalIssuesExist) {
this.ethicalIssuesExist = ethicalIssuesExist;
}
/**
* The DMP Ethical Issues Report Schema
*
* To indicate where a protocol from a meeting with an ethical commitee can be found
*
*/
@JsonProperty("ethical_issues_report")
public URI getEthicalIssuesReport() {
return ethicalIssuesReport;
}
/**
* The DMP Ethical Issues Report Schema
*
* To indicate where a protocol from a meeting with an ethical commitee can be found
*
*/
@JsonProperty("ethical_issues_report")
public void setEthicalIssuesReport(URI ethicalIssuesReport) {
this.ethicalIssuesReport = ethicalIssuesReport;
}
/**
* The DMP Language Schema
*
* Language of the DMP expressed using ISO 639-3.
* (Required)
*
*/
@JsonProperty("language")
public Language getLanguage() {
return language;
}
/**
* The DMP Language Schema
*
* Language of the DMP expressed using ISO 639-3.
* (Required)
*
*/
@JsonProperty("language")
public void setLanguage(Language language) {
this.language = language;
}
/**
* The DMP Modification Schema
*
* Must be set each time DMP is modified. Indicates DMP version.
* (Required)
*
*/
@JsonProperty("modified")
public Date getModified() {
return modified;
}
/**
* The DMP Modification Schema
*
* Must be set each time DMP is modified. Indicates DMP version.
* (Required)
*
*/
@JsonProperty("modified")
public void setModified(Date modified) {
this.modified = modified;
}
/**
* The DMP Project Schema
*
* Project related to a DMP
*
*/
@JsonProperty("project")
public List
* Project related to a DMP
*
*/
@JsonProperty("project")
public void setProject(List
* Title of a DMP
* (Required)
*
*/
@JsonProperty("title")
public String getTitle() {
return title;
}
/**
* The DMP Title Schema
*
* Title of a DMP
* (Required)
*
*/
@JsonProperty("title")
public void setTitle(String title) {
this.title = title;
}
@JsonProperty("additional_properties")
public Map