diff --git a/src/main/java/eu/dnetlib/dhp/schema/oaf/Instance.java b/src/main/java/eu/dnetlib/dhp/schema/oaf/Instance.java index 5907d78..1657f8f 100644 --- a/src/main/java/eu/dnetlib/dhp/schema/oaf/Instance.java +++ b/src/main/java/eu/dnetlib/dhp/schema/oaf/Instance.java @@ -4,6 +4,8 @@ package eu.dnetlib.dhp.schema.oaf; import java.io.Serializable; import java.util.List; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; public class Instance implements Serializable { @@ -19,7 +21,7 @@ public class Instance implements Serializable { @NotNull private KeyValue hostedby; - @NotNull + @NotEmpty private List url; // other research products specifc diff --git a/src/main/java/eu/dnetlib/dhp/schema/oaf/KeyValue.java b/src/main/java/eu/dnetlib/dhp/schema/oaf/KeyValue.java index c274a96..8bc3707 100644 --- a/src/main/java/eu/dnetlib/dhp/schema/oaf/KeyValue.java +++ b/src/main/java/eu/dnetlib/dhp/schema/oaf/KeyValue.java @@ -3,6 +3,7 @@ package eu.dnetlib.dhp.schema.oaf; import java.io.Serializable; +import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import org.apache.commons.lang3.StringUtils; @@ -11,10 +12,10 @@ import com.fasterxml.jackson.annotation.JsonIgnore; public class KeyValue implements Serializable { - @NotNull + @NotBlank private String key; - @NotNull + @NotBlank private String value; private DataInfo dataInfo; diff --git a/src/main/java/eu/dnetlib/dhp/schema/oaf/Oaf.java b/src/main/java/eu/dnetlib/dhp/schema/oaf/Oaf.java index 8d8d4cd..9bbcac2 100644 --- a/src/main/java/eu/dnetlib/dhp/schema/oaf/Oaf.java +++ b/src/main/java/eu/dnetlib/dhp/schema/oaf/Oaf.java @@ -9,6 +9,8 @@ import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; +import javax.validation.Valid; +import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; public abstract class Oaf implements Serializable { @@ -16,9 +18,11 @@ public abstract class Oaf implements Serializable { /** * The list of datasource id/name pairs providing this relationship. */ - @NotNull + @Valid + @NotEmpty protected List collectedfrom; + @Valid @NotNull private DataInfo dataInfo; diff --git a/src/main/java/eu/dnetlib/dhp/schema/oaf/Result.java b/src/main/java/eu/dnetlib/dhp/schema/oaf/Result.java index db8261a..0269fd4 100644 --- a/src/main/java/eu/dnetlib/dhp/schema/oaf/Result.java +++ b/src/main/java/eu/dnetlib/dhp/schema/oaf/Result.java @@ -5,9 +5,10 @@ import java.io.Serializable; import java.util.Comparator; import java.util.List; import java.util.Objects; -import java.util.Optional; import java.util.stream.Collectors; +import javax.validation.Valid; +import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import eu.dnetlib.dhp.schema.common.AccessRightComparator; @@ -20,6 +21,7 @@ public class Result extends OafEntity implements Serializable { private List author; // resulttype allows subclassing results into publications | datasets | software + @Valid @NotNull private Qualifier resulttype; @@ -60,7 +62,8 @@ public class Result extends OafEntity implements Serializable { private List externalReference; - @NotNull + @Valid + @NotEmpty private List instance; public List getMeasures() {