All Superinterfaces:
Element, Entity, EntityElement, ERElement, IdentifiableElement, ModelElement, SchemaMixedElement, Serializable
All Known Implementing Classes:
DummyFacet, FacetImpl

@TypeMetadata(name="Facet", description="This is the base type for any Facet", version="1.0.0") @Change(version="1.0.0", description="First Version") public interface Facet extends Entity, SchemaMixedElement
Represents a facet, which describes a specific aspect or dimension of a Resource.

Facets are extensible entities that support additional properties not defined in the formal schema, through the SchemaMixedElement interface. For more details, refer to the gCube Facet Based Resource Model Wiki.

Author:
Luca Frosini (ISTI - CNR)
See Also:
  • Field Details

  • Method Details

    • getAdditionalProperties

      Map<String,Object> getAdditionalProperties()
      Returns a map of all additional properties not defined in the schema.

      This method allows retrieving all additional properties of the facet that are not part of its defined schema.

      Specified by:
      getAdditionalProperties in interface SchemaMixedElement
      Returns:
      A Map containing the additional properties, where the key is the property name and the value is the property value.
    • setAdditionalProperties

      void setAdditionalProperties(Map<String,Object> additionalProperties)
      Sets the map of additional properties for the element.
      Specified by:
      setAdditionalProperties in interface SchemaMixedElement
      Parameters:
      additionalProperties - A Map of additional properties.
    • getAdditionalProperty

      Object getAdditionalProperty(String key)
      Retrieves a single additional property by its key.
      Specified by:
      getAdditionalProperty in interface SchemaMixedElement
      Parameters:
      key - The name of the additional property to retrieve.
      Returns:
      The value of the property, or null if the key is not found.
    • setAdditionalProperty

      void setAdditionalProperty(String key, Object value)
      Sets a single additional property.

      This method allows setting additional properties on the facet that are not part of its defined schema.

      Specified by:
      setAdditionalProperty in interface SchemaMixedElement
      Parameters:
      key - The name of the additional property.
      value - The value of the additional property.