Class DefaultSubmodel

  • All Implemented Interfaces:
    HasDataSpecification, HasExtensions, HasKind, HasSemantics, Identifiable, Qualifiable, Referable, Submodel

    public class DefaultSubmodel
    extends java.lang.Object
    implements Submodel
    Default implementation of package io.adminshell.aas.v3.model.Submodel A Submodel defines a specific aspect of the asset represented by the AAS. A submodel is used to structure the virtual representation and technical functionality of an Administration Shell into distinguishable parts. Each submodel refers to a well-defined domain or subject matter. Submodels can become standardized and thus become submodels types. Submodels can have different life-cycles. Describe the different types of Data related to the I4.0 Asset Constraint AASd-062: The semanticId of a Submodel shall only reference a ConceptDescription with the category APPLICATION_CLASS.
    • Constructor Detail

      • DefaultSubmodel

        public DefaultSubmodel()
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getSubmodelElements

        public java.util.List<SubmodelElement> getSubmodelElements()
        Description copied from interface: Submodel
        A submodel consists of zero or more submodel elements. More information under https://admin-shell.io/aas/3/0/RC01/Submodel/submodelElement
        Specified by:
        getSubmodelElements in interface Submodel
        Returns:
        Returns the List of SubmodelElements for the property submodelElements.
      • setSubmodelElements

        public void setSubmodelElements​(java.util.List<SubmodelElement> submodelElements)
        Description copied from interface: Submodel
        A submodel consists of zero or more submodel elements. More information under https://admin-shell.io/aas/3/0/RC01/Submodel/submodelElement
        Specified by:
        setSubmodelElements in interface Submodel
        Parameters:
        submodelElements - desired value for the property submodelElements.
      • getQualifiers

        public java.util.List<Constraint> getQualifiers()
        Description copied from interface: Qualifiable
        Additional qualification of a qualifiable element. More information under https://admin-shell.io/aas/3/0/RC01/Qualifiable/qualifier
        Specified by:
        getQualifiers in interface Qualifiable
        Returns:
        Returns the List of Constraints for the property qualifiers.
      • setQualifiers

        public void setQualifiers​(java.util.List<Constraint> qualifiers)
        Description copied from interface: Qualifiable
        Additional qualification of a qualifiable element. More information under https://admin-shell.io/aas/3/0/RC01/Qualifiable/qualifier
        Specified by:
        setQualifiers in interface Qualifiable
        Parameters:
        qualifiers - desired value for the property qualifiers.
      • getEmbeddedDataSpecifications

        public java.util.List<EmbeddedDataSpecification> getEmbeddedDataSpecifications()
        Description copied from interface: HasDataSpecification
        Link to the included description of the Data Specification. More information under https://admin-shell.io/aas/3/0/RC01/HasDataSpecification/embeddedDataSpecification
        Specified by:
        getEmbeddedDataSpecifications in interface HasDataSpecification
        Returns:
        Returns the List of EmbeddedDataSpecifications for the property embeddedDataSpecifications.
      • setEmbeddedDataSpecifications

        public void setEmbeddedDataSpecifications​(java.util.List<EmbeddedDataSpecification> embeddedDataSpecifications)
        Description copied from interface: HasDataSpecification
        Link to the included description of the Data Specification. More information under https://admin-shell.io/aas/3/0/RC01/HasDataSpecification/embeddedDataSpecification
        Specified by:
        setEmbeddedDataSpecifications in interface HasDataSpecification
        Parameters:
        embeddedDataSpecifications - desired value for the property embeddedDataSpecifications.
      • getAdministration

        public AdministrativeInformation getAdministration()
        Description copied from interface: Identifiable
        Administrative information of an identifiable element. Some of the administrative information like the version number might need to be part of the identification. More information under https://admin-shell.io/aas/3/0/RC01/Identifiable/administration
        Specified by:
        getAdministration in interface Identifiable
        Returns:
        Returns the AdministrativeInformation for the property administration.
      • setAdministration

        public void setAdministration​(AdministrativeInformation administration)
        Description copied from interface: Identifiable
        Administrative information of an identifiable element. Some of the administrative information like the version number might need to be part of the identification. More information under https://admin-shell.io/aas/3/0/RC01/Identifiable/administration
        Specified by:
        setAdministration in interface Identifiable
        Parameters:
        administration - desired value for the property administration.
      • getIdentification

        public Identifier getIdentification()
        Description copied from interface: Identifiable
        The globally unique identification of the element. More information under https://admin-shell.io/aas/3/0/RC01/Identifiable/identification
        Specified by:
        getIdentification in interface Identifiable
        Returns:
        Returns the Identifier for the property identification.
      • setIdentification

        public void setIdentification​(Identifier identification)
        Description copied from interface: Identifiable
        The globally unique identification of the element. More information under https://admin-shell.io/aas/3/0/RC01/Identifiable/identification
        Specified by:
        setIdentification in interface Identifiable
        Parameters:
        identification - desired value for the property identification.
      • getCategory

        public java.lang.String getCategory()
        Description copied from interface: Referable
        The category is a value that gives further meta information w.r.t. to the class of the element. It affects the expected existence of attributes and the applicability of constraints. More information under https://admin-shell.io/aas/3/0/RC01/Referable/category
        Specified by:
        getCategory in interface Referable
        Returns:
        Returns the String for the property category.
      • setCategory

        public void setCategory​(java.lang.String category)
        Description copied from interface: Referable
        The category is a value that gives further meta information w.r.t. to the class of the element. It affects the expected existence of attributes and the applicability of constraints. More information under https://admin-shell.io/aas/3/0/RC01/Referable/category
        Specified by:
        setCategory in interface Referable
        Parameters:
        category - desired value for the property category.
      • getDescriptions

        public java.util.List<LangString> getDescriptions()
        Description copied from interface: Referable
        Description or comments on the element. The description can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/description
        Specified by:
        getDescriptions in interface Referable
        Returns:
        Returns the List of LangStrings for the property descriptions.
      • setDescriptions

        public void setDescriptions​(java.util.List<LangString> descriptions)
        Description copied from interface: Referable
        Description or comments on the element. The description can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/description
        Specified by:
        setDescriptions in interface Referable
        Parameters:
        descriptions - desired value for the property descriptions.
      • getDisplayNames

        public java.util.List<LangString> getDisplayNames()
        Description copied from interface: Referable
        Display name. Can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/displayName
        Specified by:
        getDisplayNames in interface Referable
        Returns:
        Returns the List of LangStrings for the property displayNames.
      • setDisplayNames

        public void setDisplayNames​(java.util.List<LangString> displayNames)
        Description copied from interface: Referable
        Display name. Can be provided in several languages. More information under https://admin-shell.io/aas/3/0/RC01/Referable/displayName
        Specified by:
        setDisplayNames in interface Referable
        Parameters:
        displayNames - desired value for the property displayNames.
      • getIdShort

        public java.lang.String getIdShort()
        Description copied from interface: Referable
        Identifying string of the element within its name space. Constraint AASd-002: idShort shall only feature letters, digits, underscore ('_'); starting with a small letter. I.e. [a-z][a-zA-Z0-9_]+. Constraint AASd-003: idShort shall be matched case-insensitive. Constraint AASd-022: idShort of non-identifiable referables shall be unqiue in its namespace. Note: In case the element is a property and the property has a semantic definition (HasSemantics) the idShort is typically identical to the short name in English. Note: In case of an identifiable element idShort is optional but recommended to be defined. It can be used for unique reference in its name space and thus allows better usability and a more performant implementation. In this case it is similar to the 'BrowserPath' in OPC UA. More information under https://admin-shell.io/aas/3/0/RC01/Referable/idShort
        Specified by:
        getIdShort in interface Referable
        Returns:
        Returns the String for the property idShort.
      • setIdShort

        public void setIdShort​(java.lang.String idShort)
        Description copied from interface: Referable
        Identifying string of the element within its name space. Constraint AASd-002: idShort shall only feature letters, digits, underscore ('_'); starting with a small letter. I.e. [a-z][a-zA-Z0-9_]+. Constraint AASd-003: idShort shall be matched case-insensitive. Constraint AASd-022: idShort of non-identifiable referables shall be unqiue in its namespace. Note: In case the element is a property and the property has a semantic definition (HasSemantics) the idShort is typically identical to the short name in English. Note: In case of an identifiable element idShort is optional but recommended to be defined. It can be used for unique reference in its name space and thus allows better usability and a more performant implementation. In this case it is similar to the 'BrowserPath' in OPC UA. More information under https://admin-shell.io/aas/3/0/RC01/Referable/idShort
        Specified by:
        setIdShort in interface Referable
        Parameters:
        idShort - desired value for the property idShort.
      • getExtensions

        public java.util.List<Extension> getExtensions()
        Description copied from interface: HasExtensions
        An extension of the element. More information under https://admin-shell.io/aas/3/0/RC01/HasExtensions/extension
        Specified by:
        getExtensions in interface HasExtensions
        Returns:
        Returns the List of Extensions for the property extensions.
      • setExtensions

        public void setExtensions​(java.util.List<Extension> extensions)
        Description copied from interface: HasExtensions
        An extension of the element. More information under https://admin-shell.io/aas/3/0/RC01/HasExtensions/extension
        Specified by:
        setExtensions in interface HasExtensions
        Parameters:
        extensions - desired value for the property extensions.
      • getKind

        public ModelingKind getKind()
        Description copied from interface: HasKind
        ModelingKind of the element: either type or instance. More information under https://admin-shell.io/aas/3/0/RC01/HasKind/kind
        Specified by:
        getKind in interface HasKind
        Returns:
        Returns the ModelingKind for the property kind.
      • setKind

        public void setKind​(ModelingKind kind)
        Description copied from interface: HasKind
        ModelingKind of the element: either type or instance. More information under https://admin-shell.io/aas/3/0/RC01/HasKind/kind
        Specified by:
        setKind in interface HasKind
        Parameters:
        kind - desired value for the property kind.
      • getSemanticId

        public Reference getSemanticId()
        Description copied from interface: HasSemantics
        Points to the Expression Semantic of the Submodels The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard). More information under https://admin-shell.io/aas/3/0/RC01/HasSemantics/semanticId
        Specified by:
        getSemanticId in interface HasSemantics
        Returns:
        Returns the Reference for the property semanticId.
      • setSemanticId

        public void setSemanticId​(Reference semanticId)
        Description copied from interface: HasSemantics
        Points to the Expression Semantic of the Submodels The semantic id might refer to an external information source, which explains the formulation of the submodel (for example an PDF if a standard). More information under https://admin-shell.io/aas/3/0/RC01/HasSemantics/semanticId
        Specified by:
        setSemanticId in interface HasSemantics
        Parameters:
        semanticId - desired value for the property semanticId.