2019-03-22 15:51:44 +01:00
/ * *
*
* /
package org.gcube.resourcemanagement.model.reference.entities.resources ;
2019-12-05 12:04:31 +01:00
import org.gcube.informationsystem.types.annotations.ResourceSchema ;
import org.gcube.informationsystem.types.annotations.ResourceSchemaEntry ;
2019-03-22 15:51:44 +01:00
import org.gcube.resourcemanagement.model.impl.entities.resources.ConcreteDatasetImpl ;
2019-12-05 12:04:31 +01:00
import org.gcube.resourcemanagement.model.reference.entities.facets.AccessPointFacet ;
import org.gcube.resourcemanagement.model.reference.entities.facets.ContactFacet ;
import org.gcube.resourcemanagement.model.reference.relations.consistsof.HasMaintainer ;
2019-03-22 15:51:44 +01:00
import com.fasterxml.jackson.databind.annotation.JsonDeserialize ;
/ * *
* @author Luca Frosini ( ISTI - CNR )
* https : //wiki.gcube-system.org/gcube/Facet_Based_Resource_Model#Concrete_Dataset
* /
@JsonDeserialize ( as = ConcreteDatasetImpl . class )
2020-01-15 17:26:54 +01:00
@ResourceSchema (
facets = {
@ResourceSchemaEntry ( relation = HasMaintainer . class , facet = ContactFacet . class , min = 1 , description = " The contact information of the entity responsible for the maintenance of the concrete dataset " ) ,
@ResourceSchemaEntry ( facet = AccessPointFacet . class , min = 1 , description = " The access point to use for having access to the concrete dataset. The embargoState can be modeled through the access policy defined in the consistsOf relation. " )
}
)
2019-03-22 15:51:44 +01:00
public interface ConcreteDataset extends Dataset {
public static final String NAME = " ConcreteDataset " ; // ConcreteDataset.class.getSimpleName();
2020-01-15 17:26:54 +01:00
public static final String DESCRIPTION = " Any incarnation/manifestation of a dataset or part of it " ;
2019-03-22 15:51:44 +01:00
public static final String VERSION = " 1.0.0 " ;
}