Class ConceptDescription
The semantics of a property or other elements that may have a semantic description is defined by a concept description.
Inheritance
Inherited Members
Namespace: AasCore.Aas3_0
Assembly: AasCore.Aas3_0.dll
Syntax
public class ConceptDescription : IConceptDescription, IIdentifiable, IReferable, IHasExtensions, IHasDataSpecification, IClass
Remarks
The description of the concept should follow a standardized schema (realized as data specification template).
Constraints:
-
Constraint AASc-3a-004: For a ConceptDescription with Category
PROPERTYorVALUEusing data specification IEC61360, the DataType is mandatory and shall be one of:DATE,STRING,STRING_TRANSLATABLE,INTEGER_MEASURE,INTEGER_COUNT,INTEGER_CURRENCY,REAL_MEASURE,REAL_COUNT,REAL_CURRENCY,BOOLEAN,RATIONAL,RATIONAL_MEASURE,TIME,TIMESTAMP.Note: categories are deprecated since V3.0 of Part 1a of the document series "Details of the Asset Administration Shell".
-
Constraint AASc-3a-005: For a ConceptDescription with Category
REFERENCEusing data specification template IEC61360, the DataType shall be one of:STRING,IRI,IRDI.Note: categories are deprecated since V3.0 of Part 1a of the document series "Details of the Asset Administration Shell".
-
Constraint AASc-3a-006: For a ConceptDescription with Category
DOCUMENTusing data specification IEC61360, the DataType shall be one ofFILE,BLOB,HTMLCategories are deprecated since V3.0 of Part 1a of the document series "Details of the Asset Administration Shell".
-
Constraint AASc-3a-007: For a ConceptDescription with Category
QUALIFIER_TYPEusing data specification IEC61360, the DataType is mandatory and shall be defined.Categories are deprecated since V3.0 of Part 1a of the document series "Details of the Asset Administration Shell".
-
Constraint AASc-3a-008: For a ConceptDescription using data specification template IEC61360, Definition is mandatory and shall be defined at least in English.
Exception: The concept description describes a value, i.e. Value is defined.
- Constraint AASc-3a-003: For a ConceptDescription using data specification template IEC61360, referenced via ValueList ValueId the Value shall be set.
Constructors
| Improve this Doc View SourceConceptDescription(String, List<IExtension>, String, String, List<ILangStringNameType>, List<ILangStringTextType>, IAdministrativeInformation, List<IEmbeddedDataSpecification>, List<IReference>)
Declaration
public ConceptDescription(string id, List<IExtension> extensions = null, string category = null, string idShort = null, List<ILangStringNameType> displayName = null, List<ILangStringTextType> description = null, IAdministrativeInformation administration = null, List<IEmbeddedDataSpecification> embeddedDataSpecifications = null, List<IReference> isCaseOf = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | id | |
| System.Collections.Generic.List<IExtension> | extensions | |
| System.String | category | |
| System.String | idShort | |
| System.Collections.Generic.List<ILangStringNameType> | displayName | |
| System.Collections.Generic.List<ILangStringTextType> | description | |
| IAdministrativeInformation | administration | |
| System.Collections.Generic.List<IEmbeddedDataSpecification> | embeddedDataSpecifications | |
| System.Collections.Generic.List<IReference> | isCaseOf |
Properties
| Improve this Doc View SourceAdministration
Administrative information of an identifiable element.
Declaration
public IAdministrativeInformation Administration { get; set; }
Property Value
| Type | Description |
|---|---|
| IAdministrativeInformation |
Remarks
Some of the administrative information like the version number might need to be part of the identification.
Category
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.
Declaration
public string Category { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Remarks
The category is not identical to the semantic definition (IHasSemantics) of an element. The category e.g. could denote that the element is a measurement value whereas the semantic definition of the element would denote that it is the measured temperature.
Description
Description or comments on the element.
Declaration
public List<ILangStringTextType> Description { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<ILangStringTextType> |
Remarks
The description can be provided in several languages.
If no description is defined, then the definition of the concept description that defines the semantics of the element is used.
Additional information can be provided, e.g., if the element is qualified and which qualifier types can be expected in which context or which additional data specification templates are provided.
DisplayName
Display name. Can be provided in several languages.
Declaration
public List<ILangStringNameType> DisplayName { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<ILangStringNameType> |
EmbeddedDataSpecifications
Embedded data specification.
Declaration
public List<IEmbeddedDataSpecification> EmbeddedDataSpecifications { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<IEmbeddedDataSpecification> |
Extensions
An extension of the element.
Declaration
public List<IExtension> Extensions { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<IExtension> |
Id
The globally unique identification of the element.
Declaration
public string Id { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
IdShort
In case of identifiables this attribute is a short name of the element. In case of referable this ID is an identifying string of the element within its name space.
Declaration
public string IdShort { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Remarks
In case the element is a property and the property has a semantic definition (SemanticId) conformant to IEC61360 the IdShort is typically identical to the short name in English.
IsCaseOf
Reference to an external definition the concept is compatible to or was derived from.
Declaration
public List<IReference> IsCaseOf { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<IReference> |
Remarks
It is recommended to use a global reference.
Compare to is-case-of relationship in ISO 13584-32 & IEC EN 61360
Methods
| Improve this Doc View SourceAccept(Visitation.IVisitor)
Accept the visitor to visit this instance
for double dispatch.
Declaration
public void Accept(Visitation.IVisitor visitor)
Parameters
| Type | Name | Description |
|---|---|---|
| Visitation.IVisitor | visitor |
Accept<TContext>(Visitation.IVisitorWithContext<TContext>, TContext)
Accept the visitor to visit this instance for double dispatch
with the context.
Declaration
public void Accept<TContext>(Visitation.IVisitorWithContext<TContext> visitor, TContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| Visitation.IVisitorWithContext<TContext> | visitor | |
| TContext | context |
Type Parameters
| Name | Description |
|---|---|
| TContext |
Descend()
Iterate recursively over all the class instances referenced from this instance.
Declaration
public IEnumerable<IClass> Descend()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IClass> |
DescendOnce()
Iterate over all the class instances referenced from this instance without further recursion.
Declaration
public IEnumerable<IClass> DescendOnce()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IClass> |
OverDescriptionOrEmpty()
Iterate over Description, if set, and otherwise return an empty enumerable.
Declaration
public IEnumerable<ILangStringTextType> OverDescriptionOrEmpty()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ILangStringTextType> |
OverDisplayNameOrEmpty()
Iterate over DisplayName, if set, and otherwise return an empty enumerable.
Declaration
public IEnumerable<ILangStringNameType> OverDisplayNameOrEmpty()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ILangStringNameType> |
OverEmbeddedDataSpecificationsOrEmpty()
Iterate over EmbeddedDataSpecifications, if set, and otherwise return an empty enumerable.
Declaration
public IEnumerable<IEmbeddedDataSpecification> OverEmbeddedDataSpecificationsOrEmpty()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IEmbeddedDataSpecification> |
OverExtensionsOrEmpty()
Iterate over Extensions, if set, and otherwise return an empty enumerable.
Declaration
public IEnumerable<IExtension> OverExtensionsOrEmpty()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IExtension> |
OverIsCaseOfOrEmpty()
Iterate over IsCaseOf, if set, and otherwise return an empty enumerable.
Declaration
public IEnumerable<IReference> OverIsCaseOfOrEmpty()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IReference> |
Transform<T>(Visitation.ITransformer<T>)
Accept the transformer to transform this instance
for double dispatch.
Declaration
public T Transform<T>(Visitation.ITransformer<T> transformer)
Parameters
| Type | Name | Description |
|---|---|---|
| Visitation.ITransformer<T> | transformer |
Returns
| Type | Description |
|---|---|
| T |
Type Parameters
| Name | Description |
|---|---|
| T |
Transform<TContext, T>(Visitation.ITransformerWithContext<TContext, T>, TContext)
Accept the transformer to visit this instance
for double dispatch with the context.
Declaration
public T Transform<TContext, T>(Visitation.ITransformerWithContext<TContext, T> transformer, TContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| Visitation.ITransformerWithContext<TContext, T> | transformer | |
| TContext | context |
Returns
| Type | Description |
|---|---|
| T |
Type Parameters
| Name | Description |
|---|---|
| TContext | |
| T |