60 lines
2.7 KiB
Java
60 lines
2.7 KiB
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.resourcemanagement.model.reference.entities.facets;
|
|
|
|
import java.net.URL;
|
|
|
|
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
|
import org.gcube.informationsystem.model.reference.entities.Facet;
|
|
import org.gcube.informationsystem.types.annotations.ISProperty;
|
|
import org.gcube.informationsystem.types.reference.Change;
|
|
import org.gcube.informationsystem.types.reference.TypeMetadata;
|
|
import org.gcube.informationsystem.utils.TypeVersion;
|
|
import org.gcube.resourcemanagement.model.impl.entities.facets.LicenseFacetImpl;
|
|
|
|
/**
|
|
* LicenseFacet captures information on any license associated with the
|
|
* resource to capture the policies governing its exploitation and use.
|
|
*
|
|
* Example of use is the licence of a dataset e.g., Creative Commons Attribution (CC-BY)
|
|
* or the licence of software such as GPL.
|
|
* This facet is used to provide for human knowledge, but it is not excluded the usage
|
|
* by infrastructure services which enforces the respect of the licence e.g., a service which
|
|
* denies the usage of a dataset with Creative Commons Attribution No-Derivatives (CC-BY-ND)
|
|
* licence to produce a new dataset.
|
|
*
|
|
* https://wiki.gcube-system.org/gcube/GCube_Model#License_Facet
|
|
*
|
|
* @author Luca Frosini (ISTI - CNR)
|
|
*/
|
|
@JsonDeserialize(as=LicenseFacetImpl.class)
|
|
@TypeMetadata(
|
|
name = LicenseFacet.NAME,
|
|
description = "LicenseFacet captures information on any license associated with the resource to capture "
|
|
+ "the policies governing its exploitation and use. "
|
|
+ "Example of use is the licence of a dataset e.g., Creative Commons Attribution (CC-BY) "
|
|
+ "or the licence of software such as GPL. "
|
|
+ "This facet is used to provide for human knowledge, but it is not excluded the usage "
|
|
+ "by infrastructure services which enforces the respect of the licence e.g., a service which "
|
|
+ "denies the usage of a dataset with Creative Commons Attribution No-Derivatives (CC-BY-ND)"
|
|
+ "licence to produce a new dataset.",
|
|
version = TypeVersion.MINIMAL_VERSION_STRING
|
|
)
|
|
@Change(version = TypeVersion.MINIMAL_VERSION_STRING, description = TypeVersion.MINIMAL_VERSION_DESCRIPTION)
|
|
public interface LicenseFacet extends Facet {
|
|
|
|
public static final String NAME = "LicenseFacet"; // LicenseFacet.class.getSimpleName();
|
|
|
|
@ISProperty(description = "The common name of the license. e.g., European Union Public Licence (EUPL) 1.1, GNU General Public License (GPL) 2, Berkeley Software Distribution (BSD), Common Creative (CC).", mandatory=true, nullable=false)
|
|
public String getName();
|
|
|
|
public void setName(String name);
|
|
|
|
@ISProperty(description = "The URL to the actual text of the license.", mandatory=true, nullable=false)
|
|
public URL getTextURL();
|
|
|
|
public void setTextURL(URL textURL);
|
|
|
|
}
|