Interface SchemaFacet
- All Superinterfaces:
org.gcube.informationsystem.base.reference.Element,org.gcube.informationsystem.model.reference.entities.Entity,org.gcube.informationsystem.base.reference.entities.EntityElement,org.gcube.informationsystem.model.reference.ERElement,org.gcube.informationsystem.model.reference.entities.Facet,org.gcube.informationsystem.base.reference.IdentifiableElement,org.gcube.informationsystem.model.reference.ModelElement,Named,org.gcube.informationsystem.base.reference.SchemaMixedElement,Serializable
- All Known Implementing Classes:
SchemaFacetImpl
@TypeMetadata(name="SchemaFacet",
description="SchemaFacet captures information on any schema, i.e., a vocabulary used to validate a document associated with a resource. Examples of schema are JavaScript Object Notation (JSON) schema and XML schema. JSON schema \"is a vocabulary that allows you to annotate and validate JSON documents\". JSON schema is under standardisation by Internet Engineering Task Force (IETF) (see references at https://json-schema.org/specification.html). XSD defines the legal building blocks of an XML document. DTD defines the structure and the legal elements and attributes of an XML document.",
version="1.1.0")
@Change(version="1.1.0",description="Replaced complex ValueSchema property for \'schema\' with a clean, flat String representation.") @Change(version="1.0.0",description="First Version")
public interface SchemaFacet
extends org.gcube.informationsystem.model.reference.entities.Facet, Named
SchemaFacet captures information on any schema, i.e., a vocabulary used to
validate a document
associated with a resource. Examples of schema are JavaScript Object Notation
(JSON) schema and XML
schema. JSON schema "is a vocabulary that allows you to annotate and validate
JSON documents". JSON
schema is under standardisation by the Internet Engineering Task Force (IETF)
(see references at
https://json-schema.org/specification.html). XSD defines the legal building
blocks of an XML
document. DTD defines the structure and the legal elements and attributes of
an XML document.
- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe name associated with this facetstatic final StringThe version associated with this facetFields inherited from interface org.gcube.informationsystem.base.reference.Element
DATETIME_PATTERN, REDACTED, TYPE_PROPERTY, UNKNOWN_USERFields inherited from interface org.gcube.informationsystem.model.reference.ERElement
CONTEXTS_PROPERTYFields inherited from interface org.gcube.informationsystem.base.reference.IdentifiableElement
ID_PROPERTY, METADATA_PROPERTYFields inherited from interface org.gcube.informationsystem.model.reference.ModelElement
EXPECTED_TYPE_PROPERTY, SUPERTYPES_PROPERTYFields inherited from interface org.gcube.resourcemanagement.model.reference.properties.utilities.Named
NAME_PROPERTY -
Method Summary
Modifier and TypeMethodDescriptionstatic SchemaFacetReturns a default instance of SchemaFacetThe Schema DescriptiongetName()Gets the name of the facet.The schema content itself.voidsetDescription(String description) Sets the Schema DescriptionvoidSets the Schema NamevoidSets the schema content itself.Methods inherited from interface org.gcube.informationsystem.base.reference.Element
getTypeNameMethods inherited from interface org.gcube.informationsystem.base.reference.entities.EntityElement
getID, getMetadata, setID, setMetadataMethods inherited from interface org.gcube.informationsystem.model.reference.ERElement
getContextsMethods inherited from interface org.gcube.informationsystem.model.reference.entities.Facet
getAdditionalProperties, getAdditionalProperty, setAdditionalProperties, setAdditionalPropertyMethods inherited from interface org.gcube.informationsystem.model.reference.ModelElement
getExpectedtype, getSupertypes
-
Field Details
-
NAME
The name associated with this facet- See Also:
-
VERSION
The version associated with this facet- See Also:
-
-
Method Details
-
getDefaultInstance
Returns a default instance of SchemaFacet- Returns:
- a default instance of SchemaFacet
-
getName
Gets the name of the facet. -
setName
Sets the Schema Name -
getDescription
@ISProperty(description="A human-oriented description of the schema.", mandatory=true) String getDescription()The Schema Description- Returns:
- the description
-
setDescription
Sets the Schema Description- Parameters:
description- the description
-
getSchema
@ISProperty(description="The schema content itself (e.g., an XSD or JSON Schema document).") String getSchema()The schema content itself. Deliberately unconstrained: accepts any JSON-compatible value, since the schema language in use (e.g., an XSD document, which is naturally text, or a JSON Schema document, which is naturally a JSON object) is not known in advance. The Java API always exposes it as aString.- Returns:
- the schema
-
setSchema
Sets the schema content itself.- Parameters:
schema- the schema
-