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
PROPERTY
orVALUE
using 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
REFERENCE
using 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
DOCUMENT
using data specification IEC61360, the DataType shall be one ofFILE
,BLOB
,HTML
Categories 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_TYPE
using 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 |