diff --git a/README.md b/README.md index 4851ef321..ae72cae9b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Eclipse AAS4J -> :newspaper: The _`Eclipse AAS4J 1.0.0-milestone-02`_ release is available on Maven Central Repository and includes the following artifacts implementing the _AAS Specs – Part 1 V3.RC02_: `dataformat-core`, `dataformat-aasx`, `dataformat-xml`, `dataformat-json`, `dataformat-parent`, and `model`. +> :newspaper: The _`Eclipse AAS4J 1.0.0-milestone-03`_ release is available on Maven Central Repository and includes the following artifacts implementing the _AAS Specs – Part 1 V3.0 (final)_: `dataformat-core`, `dataformat-aasx`, `dataformat-xml`, `dataformat-json`, `dataformat-parent`, and `model`. [Eclipse AA4J](https://projects.eclipse.org/projects/dt.aas4j) implements the specification of the Asset Administration Shell (AAS) such as metamodels, submodels, serialization and deserialization modules, validators, and transformation libraries based on the AAS specifications. It also contains all classes and properties as defined by the document 'Details of the Asset Administration Shell' published on [Industrial Digital Twin Association (IDTA)](https://industrialdigitaltwin.org/en/). @@ -93,5 +93,4 @@ An updated list of the committers can be found here: https://projects.eclipse.or | Arno Weiss | Fraunhofer IWU/SAP SE | [arnoweiss](https://github.com/arnoweiss) | | | | x | | | x | | | | Jan Blume | Fraunhofer IOSB | []() | | | | | | | | | x | -This project was initiated by SAP and Fraunhofer to provide a foundation for the -AAS development and to foster its dissemination. +This project was initiated by SAP and Fraunhofer to provide a foundation for the AAS development and to foster its dissemination. diff --git a/dataformat-aasx/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/aasx/deserialization/ValidationTest.java b/dataformat-aasx/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/aasx/deserialization/ValidationTest.java index 734d69a32..6b1622c43 100644 --- a/dataformat-aasx/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/aasx/deserialization/ValidationTest.java +++ b/dataformat-aasx/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/aasx/deserialization/ValidationTest.java @@ -29,17 +29,16 @@ import javax.xml.parsers.ParserConfigurationException; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.aasx.AASXValidator; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; -import org.xml.sax.SAXException; - import org.eclipse.digitaltwin.aas4j.v3.dataformat.DeserializationException; import org.eclipse.digitaltwin.aas4j.v3.dataformat.SerializationException; import org.eclipse.digitaltwin.aas4j.v3.dataformat.aasx.AASXSerializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.aasx.AASXValidator; import org.eclipse.digitaltwin.aas4j.v3.dataformat.aasx.InMemoryFile; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.AASSimple; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.xml.sax.SAXException; public class ValidationTest { @@ -55,7 +54,7 @@ public void validateXmlInsideAasx() throws SerializationException, IOException, File file = tempFolder.newFile("output.aasx"); - new AASXSerializer().write(AASSimple.ENVIRONMENT, fileList, new FileOutputStream(file)); + new AASXSerializer().write(AASSimple.createEnvironment(), fileList, new FileOutputStream(file)); InputStream in = new FileInputStream(file); AASXValidator v = new AASXValidator(in); diff --git a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/DataSpecificationInfo.java b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/DataSpecificationInfo.java deleted file mode 100644 index f5ac70dc1..000000000 --- a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/DataSpecificationInfo.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.eclipse.digitaltwin.aas4j.v3.dataformat.core; - -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationContent; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; - -/** - * Class representing all information required for a (custom) data specification - */ -public class DataSpecificationInfo { - - private final Class type; - private final Reference reference; - private final String prefix; - - public DataSpecificationInfo(Class type, Reference reference, String prefix) { - this.type = type; - this.reference = reference; - this.prefix = prefix; - } - - public Class getType() { - return type; - } - - public Reference getReference() { - return reference; - } - - public String getPrefix() { - return prefix; - } -} \ No newline at end of file diff --git a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/DataSpecificationManager.java b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/DataSpecificationManager.java deleted file mode 100644 index 889976d6a..000000000 --- a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/DataSpecificationManager.java +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.eclipse.digitaltwin.aas4j.v3.dataformat.core; - -import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.AasUtils; -import java.util.Arrays; -import java.util.Objects; -import java.util.Optional; - -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationContent; -import org.eclipse.digitaltwin.aas4j.v3.model.KeyTypes; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultKey; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultReference; -import java.util.HashSet; -import java.util.Set; -import java.util.function.Predicate; - -/** - * This class is used to manage supported data specification templates. Each - * template is identified through a reference and a prefix and provides a - * corresponding Java class. - */ -public class DataSpecificationManager { - - public static final String PROP_DATA_SPECIFICATION = "dataSpecification"; -// public static final String PROP_DATA_SPECIFICATION_CONTENT = "dataSpecificationContent"; - public static final String PROP_DATA_SPECIFICATION_CONTENT = "dataSpecificationIec61360"; - - - private static final Set KNOWN_IMPLEMENTATIONS = new HashSet<>(Arrays.asList( - // new DataSpecificationInfo(DataSpecificationIEC61360.class, - // createGlobalIri(DATA_SPECIFICATION_IEC61360_IRI), - // DATA_SPECIFICATION_IEC61360_PREFIX) - )); - - /** - * Allows to register an additional data specification template - * - * @param dataSpecification Details of the data specification template to - * register - */ - public static void register(DataSpecificationInfo dataSpecification) { - KNOWN_IMPLEMENTATIONS.add(dataSpecification); - } - - private static Reference createGlobalIri(String iri) { - return new DefaultReference.Builder().keys(Arrays.asList( - new DefaultKey.Builder().type(KeyTypes.GLOBAL_REFERENCE).value(iri).build())) - .build(); - } - - /** - * Returns a DataSpecificationInfo describing the data specification - * template implemented by the given class. If the class is unknown, null is - * returned. - * - * @param implementation type of the implementation class - * @return a DataSpecificationInfo describing the data specification - * template represented by the given class, or null if the implementation - * class does not represent any data specification - */ - public static DataSpecificationInfo getDataSpecification(Class implementation) { - DataSpecificationInfo result = getDataSpecification(x -> Objects.equals(x.getType(), implementation)); - if (result == null) { - result = getDataSpecification(x -> x.getType().isAssignableFrom(implementation)); - } - return result; - } - - /** - * Returns a DataSpecificationInfo describing the data specification - * template implemented by the given class. If the class is unknown, null is - * returned. - * - * @param reference Reference associated with the wanted data specficiation - * @return a DataSpecificationInfo describing the data specification - * template represented by the reference, or null if the reference does not - * represent any data specification - */ - public static DataSpecificationInfo getDataSpecification(Reference reference) { - return getDataSpecification(x -> AasUtils.sameAs(x.getReference(), reference)); - } - - private static DataSpecificationInfo getDataSpecification(Predicate filter) { - Optional exactMatch = KNOWN_IMPLEMENTATIONS.stream() - .filter(filter) - .findFirst(); - if (exactMatch.isPresent()) { - return exactMatch.get(); - } - return null; - } -} \ No newline at end of file diff --git a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/serialization/EnumSerializer.java b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/serialization/EnumSerializer.java index 6fc4df871..80fcc49f6 100644 --- a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/serialization/EnumSerializer.java +++ b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/serialization/EnumSerializer.java @@ -17,16 +17,17 @@ import java.io.IOException; -import com.fasterxml.jackson.core.JsonGenerator; -import com.fasterxml.jackson.databind.JsonSerializer; -import com.fasterxml.jackson.databind.SerializerProvider; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.ReflectionHelper; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.AasUtils; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.ReflectionHelper; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.Direction; import org.eclipse.digitaltwin.aas4j.v3.model.StateOfEvent; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.JsonSerializer; +import com.fasterxml.jackson.databind.SerializerProvider; + /** * Serializes enum values. If enum is part of the AAS Java model, the name will * be converted from SCREAMING_SNAKE_CASE to UpperCamelCase, else default @@ -38,18 +39,20 @@ public class EnumSerializer extends JsonSerializer { @Override public void serialize(Enum value, JsonGenerator gen, SerializerProvider provider) throws IOException { - if (value instanceof DataTypeDefXsd) { + if (value instanceof DataTypeDefXSD) { // only for the DataTypeDefXsd notation - if (value.equals(DataTypeDefXsd.ANY_URI)) { + if (value.equals(DataTypeDefXSD.ANY_URI)) { gen.writeString("xs:anyURI"); - } else if (value.equals(DataTypeDefXsd.NON_NEGATIVE_INTEGER)) { - gen.writeString("xs:NonNegativeInteger"); + } else if (value.equals(DataTypeDefXSD.NON_NEGATIVE_INTEGER)) { + gen.writeString("xs:nonNegativeInteger"); + } else if(isTimeRelatedValue(value)) { + handleTimeRelatedValue(gen, value); } else { // pattern: 'xs:' + camelCase String enum_string = AasUtils.serializeEnumName(value.name()); gen.writeString("xs:" + enum_string.substring(0, 1).toLowerCase() + enum_string.substring(1)); } - } else if (value instanceof DataTypeIEC61360) { + } else if (value instanceof DataTypeIec61360) { gen.writeString(value.name().toUpperCase()); } else if (value instanceof Direction || value instanceof StateOfEvent) { gen.writeString(value.name().toLowerCase()); @@ -60,4 +63,15 @@ public void serialize(Enum value, JsonGenerator gen, SerializerProvider provider } } + private void handleTimeRelatedValue(JsonGenerator gen, Enum value) throws IOException { + String enum_string = AasUtils.serializeEnumName(value.name()); + String adaptedEnumString = "xs:g" + enum_string.substring(1, 2).toUpperCase() + enum_string.substring(2); + gen.writeString(adaptedEnumString); + } + + private boolean isTimeRelatedValue(Enum value) { + String enum_string = AasUtils.serializeEnumName(value.name()); + return enum_string.startsWith("G"); + } + } diff --git a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/util/AasUtils.java b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/util/AasUtils.java index eb9560fa9..f0abbba7c 100644 --- a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/util/AasUtils.java +++ b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/util/AasUtils.java @@ -115,7 +115,7 @@ public static Reference parseReference(String value, Class if (result.getType() == null) { // deduct from first element result.setType(result.getKeys().get(0).getType() == KeyTypes.GLOBAL_REFERENCE - ? ReferenceTypes.GLOBAL_REFERENCE + ? ReferenceTypes.EXTERNAL_REFERENCE : ReferenceTypes.MODEL_REFERENCE); } else { // validate against first element @@ -159,7 +159,7 @@ private static boolean isCompatible(KeyTypes keyType, ReferenceTypes referenceTy if (keyType == null ^ referenceType == null) { return false; } - return referenceType == ReferenceTypes.GLOBAL_REFERENCE + return referenceType == ReferenceTypes.EXTERNAL_REFERENCE ? keyType == KeyTypes.GLOBAL_REFERENCE : keyType != KeyTypes.GLOBAL_REFERENCE; } @@ -249,7 +249,7 @@ public static List getSubmodelTemplates(AssetAdministrationShell aas, return aas.getSubmodels().stream() .map(ref -> resolve(ref, environment, Submodel.class)) .filter(sm -> sm != null) - .filter(sm -> sm.getKind() != ModelingKind.INSTANCE) + .filter(sm -> sm.getKind() != ModellingKind.INSTANCE) .collect(Collectors.toList()); } diff --git a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementVisitor.java b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementVisitor.java index 3076b945a..9336824c7 100644 --- a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementVisitor.java +++ b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementVisitor.java @@ -15,45 +15,7 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.core.visitor; -import org.eclipse.digitaltwin.aas4j.v3.model.AdministrativeInformation; -import org.eclipse.digitaltwin.aas4j.v3.model.AnnotatedRelationshipElement; -import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; -import org.eclipse.digitaltwin.aas4j.v3.model.AssetInformation; -import org.eclipse.digitaltwin.aas4j.v3.model.BasicEventElement; -import org.eclipse.digitaltwin.aas4j.v3.model.Blob; -import org.eclipse.digitaltwin.aas4j.v3.model.Capability; -import org.eclipse.digitaltwin.aas4j.v3.model.ConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.DataElement; -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationContent; -import org.eclipse.digitaltwin.aas4j.v3.model.Entity; -import org.eclipse.digitaltwin.aas4j.v3.model.Environment; -import org.eclipse.digitaltwin.aas4j.v3.model.EventElement; -import org.eclipse.digitaltwin.aas4j.v3.model.EventPayload; -import org.eclipse.digitaltwin.aas4j.v3.model.Extension; -import org.eclipse.digitaltwin.aas4j.v3.model.File; -import org.eclipse.digitaltwin.aas4j.v3.model.HasDataSpecification; -import org.eclipse.digitaltwin.aas4j.v3.model.HasExtensions; -import org.eclipse.digitaltwin.aas4j.v3.model.HasKind; -import org.eclipse.digitaltwin.aas4j.v3.model.HasSemantics; -import org.eclipse.digitaltwin.aas4j.v3.model.Identifiable; -import org.eclipse.digitaltwin.aas4j.v3.model.Key; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; -import org.eclipse.digitaltwin.aas4j.v3.model.MultiLanguageProperty; -import org.eclipse.digitaltwin.aas4j.v3.model.Operation; -import org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable; -import org.eclipse.digitaltwin.aas4j.v3.model.Property; -import org.eclipse.digitaltwin.aas4j.v3.model.Qualifiable; -import org.eclipse.digitaltwin.aas4j.v3.model.Qualifier; -import org.eclipse.digitaltwin.aas4j.v3.model.Range; -import org.eclipse.digitaltwin.aas4j.v3.model.Referable; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.ReferenceElement; -import org.eclipse.digitaltwin.aas4j.v3.model.RelationshipElement; -import org.eclipse.digitaltwin.aas4j.v3.model.Resource; -import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId; -import org.eclipse.digitaltwin.aas4j.v3.model.Submodel; -import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElement; -import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElementCollection; +import org.eclipse.digitaltwin.aas4j.v3.model.*; public interface AssetAdministrationShellElementVisitor { @@ -141,8 +103,8 @@ public default void visit(HasSemantics hasSemantics) { Class type = hasSemantics.getClass(); if (Extension.class.isAssignableFrom(type)) { visit((Extension) hasSemantics); - } else if (SpecificAssetId.class.isAssignableFrom(type)) { - visit((SpecificAssetId) hasSemantics); + } else if (SpecificAssetID.class.isAssignableFrom(type)) { + visit((SpecificAssetID) hasSemantics); } else if (Submodel.class.isAssignableFrom(type)) { visit((Submodel) hasSemantics); } else if (SubmodelElement.class.isAssignableFrom(type)) { @@ -253,13 +215,22 @@ public default void visit(Extension extension) { public default void visit(File file) { } - public default void visit(SpecificAssetId identifierKeyValuePair) { + public default void visit(SpecificAssetID identifierKeyValuePair) { } public default void visit(Key key) { } - public default void visit(LangString langString) { + public default void visit(LangStringNameType langString) { + } + + public default void visit(LangStringDefinitionTypeIec61360 langString) { + } + + public default void visit(LangStringTextType langString) { + } + + public default void visit(LangStringPreferredNameTypeIec61360 langString) { } public default void visit(MultiLanguageProperty multiLanguageProperty) { diff --git a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementWalkerVisitor.java b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementWalkerVisitor.java index 9d1eda411..43683f70a 100644 --- a/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementWalkerVisitor.java +++ b/dataformat-core/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/visitor/AssetAdministrationShellElementWalkerVisitor.java @@ -15,32 +15,7 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.core.visitor; -import org.eclipse.digitaltwin.aas4j.v3.model.AnnotatedRelationshipElement; -import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; -import org.eclipse.digitaltwin.aas4j.v3.model.AssetInformation; -import org.eclipse.digitaltwin.aas4j.v3.model.BasicEventElement; -import org.eclipse.digitaltwin.aas4j.v3.model.ConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.Entity; -import org.eclipse.digitaltwin.aas4j.v3.model.Environment; -import org.eclipse.digitaltwin.aas4j.v3.model.Extension; -import org.eclipse.digitaltwin.aas4j.v3.model.HasDataSpecification; -import org.eclipse.digitaltwin.aas4j.v3.model.HasExtensions; -import org.eclipse.digitaltwin.aas4j.v3.model.HasSemantics; -import org.eclipse.digitaltwin.aas4j.v3.model.Identifiable; -import org.eclipse.digitaltwin.aas4j.v3.model.MultiLanguageProperty; -import org.eclipse.digitaltwin.aas4j.v3.model.Operation; -import org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable; -import org.eclipse.digitaltwin.aas4j.v3.model.Property; -import org.eclipse.digitaltwin.aas4j.v3.model.Qualifiable; -import org.eclipse.digitaltwin.aas4j.v3.model.Qualifier; -import org.eclipse.digitaltwin.aas4j.v3.model.Referable; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.ReferenceElement; -import org.eclipse.digitaltwin.aas4j.v3.model.RelationshipElement; -import org.eclipse.digitaltwin.aas4j.v3.model.Resource; -import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId; -import org.eclipse.digitaltwin.aas4j.v3.model.Submodel; -import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElementCollection; +import org.eclipse.digitaltwin.aas4j.v3.model.*; public interface AssetAdministrationShellElementWalkerVisitor extends AssetAdministrationShellElementVisitor { @@ -69,7 +44,6 @@ public default void visit(AssetInformation assetInformation) { if (assetInformation == null) { return; } - visit(assetInformation.getGlobalAssetId()); assetInformation.getSpecificAssetIds().forEach(x -> visit(x)); visit(assetInformation.getDefaultThumbnail()); AssetAdministrationShellElementVisitor.super.visit(assetInformation); @@ -124,7 +98,7 @@ public default void visit(HasSemantics hasSemantics) { if (hasSemantics == null) { return; } - visit(hasSemantics.getSemanticId()); + visit(hasSemantics.getSemanticID()); AssetAdministrationShellElementVisitor.super.visit(hasSemantics); } @@ -138,11 +112,11 @@ public default void visit(Identifiable identifiable) { } @Override - public default void visit(SpecificAssetId specificAssetId) { + public default void visit(SpecificAssetID specificAssetId) { if (specificAssetId == null) { return; } - visit(specificAssetId.getExternalSubjectId()); + visit(specificAssetId.getExternalSubjectID()); AssetAdministrationShellElementVisitor.super.visit(specificAssetId); } @@ -152,7 +126,7 @@ public default void visit(MultiLanguageProperty multiLanguageProperty) { return; } multiLanguageProperty.getValue().forEach(x -> visit(x)); - visit(multiLanguageProperty.getValueId()); + visit(multiLanguageProperty.getValueID()); AssetAdministrationShellElementVisitor.super.visit(multiLanguageProperty); } @@ -170,7 +144,7 @@ public default void visit(Property property) { if (property == null) { return; } - visit(property.getValueId()); + visit(property.getValueID()); AssetAdministrationShellElementVisitor.super.visit(property); } @@ -188,7 +162,7 @@ public default void visit(Qualifier qualifier) { if (qualifier == null) { return; } - visit(qualifier.getValueId()); + visit(qualifier.getValueID()); AssetAdministrationShellElementVisitor.super.visit(qualifier); } @@ -202,6 +176,38 @@ public default void visit(Referable referable) { AssetAdministrationShellElementVisitor.super.visit(referable); } + @Override + public default void visit(LangStringNameType langString){ + if (langString == null){ + return; + } + AssetAdministrationShellElementVisitor.super.visit(langString); + }; + + @Override + public default void visit(LangStringPreferredNameTypeIec61360 langString){ + if (langString == null){ + return; + } + AssetAdministrationShellElementVisitor.super.visit(langString); + }; + + @Override + public default void visit(LangStringDefinitionTypeIec61360 langString){ + if (langString == null){ + return; + } + AssetAdministrationShellElementVisitor.super.visit(langString); + }; + + @Override + public default void visit(LangStringTextType langString){ + if (langString == null){ + return; + } + AssetAdministrationShellElementVisitor.super.visit(langString); + }; + @Override public default void visit(Reference reference) { if (reference == null) { @@ -235,8 +241,7 @@ public default void visit(Entity entity) { if (entity == null) { return; } - visit(entity.getGlobalAssetId()); - visit(entity.getSpecificAssetId()); + entity.getSpecificAssetIds().forEach(x -> visit(x)); entity.getStatements().forEach(x -> visit(x)); AssetAdministrationShellElementVisitor.super.visit(entity); } @@ -246,7 +251,7 @@ public default void visit(Extension extension) { if (extension == null) { return; } - visit(extension.getRefersTo()); + extension.getRefersTo().forEach(x -> visit(x)); AssetAdministrationShellElementVisitor.super.visit(extension); } diff --git a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASFull.java b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASFull.java index b3b06b2bd..4844d4e3c 100644 --- a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASFull.java +++ b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASFull.java @@ -17,18 +17,18 @@ import java.util.Arrays; import java.util.Base64; -import org.eclipse.digitaltwin.aas4j.v3.model.AasSubmodelElements; + +import org.eclipse.digitaltwin.aas4j.v3.model.AASSubmodelElements; import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; import org.eclipse.digitaltwin.aas4j.v3.model.AssetKind; import org.eclipse.digitaltwin.aas4j.v3.model.ConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.Direction; import org.eclipse.digitaltwin.aas4j.v3.model.EntityType; import org.eclipse.digitaltwin.aas4j.v3.model.Environment; import org.eclipse.digitaltwin.aas4j.v3.model.KeyTypes; -import org.eclipse.digitaltwin.aas4j.v3.model.LevelType; -import org.eclipse.digitaltwin.aas4j.v3.model.ModelingKind; +import org.eclipse.digitaltwin.aas4j.v3.model.ModellingKind; import org.eclipse.digitaltwin.aas4j.v3.model.ReferenceTypes; import org.eclipse.digitaltwin.aas4j.v3.model.StateOfEvent; import org.eclipse.digitaltwin.aas4j.v3.model.Submodel; @@ -40,13 +40,17 @@ import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultBlob; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultCapability; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEmbeddedDataSpecification; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEntity; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEnvironment; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultFile; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultKey; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangString; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringDefinitionTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringPreferredNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringShortNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringTextType; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultMultiLanguageProperty; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultOperation; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultOperationVariable; @@ -79,64 +83,51 @@ public class AASFull { public final static ConceptDescription CONCEPT_DESCRIPTION_2 = createConceptDescription2(); public final static ConceptDescription CONCEPT_DESCRIPTION_3 = createConceptDescription3(); public final static ConceptDescription CONCEPT_DESCRIPTION_4 = createConceptDescription4(); - public static final Environment ENVIRONMENT = createEnvironment(); public static final String AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360 = "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360"; public static AssetAdministrationShell createAAS1() { return new DefaultAssetAdministrationShell.Builder() .idShort("TestAssetAdministrationShell") .description(Arrays.asList( - new DefaultLangString.Builder().text("An Example Asset Administration Shell for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-Verwaltungsschale für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An Example Asset Administration Shell for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-Verwaltungsschale für eine Test-Anwendung").language("de").build() )) .id("https://acplt.org/Test_AssetAdministrationShell") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) .derivedFrom(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) .value("https://acplt.org/TestAssetAdministrationShell2") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .assetInformation(new DefaultAssetInformation.Builder() .assetKind(AssetKind.INSTANCE) - .globalAssetId(new DefaultReference.Builder() - .keys(new DefaultKey.Builder() - .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) - .value("https://acplt.org/Test_Asset") - .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) - .build()) - //.billOfMaterial((new DefaultReference.Builder() - // .keys(new DefaultKey.Builder() - // .type(KeyTypes.SUBMODEL) - // .value("http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial") - // .build())) - // .build()) + .globalAssetID("https://acplt.org/Test_Asset") .build()) .submodels(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("https://acplt.org/Test_Submodel") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodels(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodels(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("http://acplt.org/Submodels/Assets/TestAsset/Identification") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build(); } @@ -147,27 +138,21 @@ public static AssetAdministrationShell createAAS2() { .id("https://acplt.org/Test_AssetAdministrationShell_Mandatory") .assetInformation(new DefaultAssetInformation.Builder() .assetKind(AssetKind.INSTANCE) - .globalAssetId(new DefaultReference.Builder() - .keys(new DefaultKey.Builder() - .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) - .value("https://acplt.org/Test_Asset_Mandatory") - .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) - .build()) + .globalAssetID("https://acplt.org/Test_Asset_Mandatory") .build()) .submodels(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("https://acplt.org/Test_Submodel_Mandatory") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodels(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("https://acplt.org/Test_Submodel2_Mandatory") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build(); } @@ -178,13 +163,7 @@ public static AssetAdministrationShell createAAS3() { .id("https://acplt.org/Test_AssetAdministrationShell2_Mandatory") .assetInformation(new DefaultAssetInformation.Builder() .assetKind(AssetKind.INSTANCE) - .globalAssetId(new DefaultReference.Builder() - .keys(new DefaultKey.Builder() - .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) - .value("https://acplt.org/Test_Asset_Mandatory") - .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) - .build()) + .globalAssetID("https://acplt.org/Test_Asset_Mandatory") .build()) .build(); } @@ -193,30 +172,24 @@ public static AssetAdministrationShell createAAS4() { return new DefaultAssetAdministrationShell.Builder() .idShort("TestAssetAdministrationShell") .description(Arrays.asList( - new DefaultLangString.Builder().text("An Example Asset Administration Shell for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-Verwaltungsschale für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An Example Asset Administration Shell for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-Verwaltungsschale für eine Test-Anwendung").language("de").build() )) .id("https://acplt.org/Test_AssetAdministrationShell_Missing") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) .assetInformation(new DefaultAssetInformation.Builder() .assetKind(AssetKind.INSTANCE) - .globalAssetId(new DefaultReference.Builder() - .keys(new DefaultKey.Builder() - .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) - .value("https://acplt.org/Test_Asset_Missing") - .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) - .build()) + .globalAssetID("https://acplt.org/Test_Asset_Missing") .build()) .submodels(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("https://acplt.org/Test_Submodel_Missing") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build(); } @@ -225,82 +198,97 @@ public static Submodel createSubmodel1() { return new DefaultSubmodel.Builder() .idShort("Identification") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example asset identification submodel for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-Identifikations-Submodel für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example asset identification submodel for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-Identifikations-Submodel für eine Test-Anwendung").language("de").build() )) .id("http://acplt.org/Submodels/Assets/TestAsset/Identification") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .kind(ModellingKind.INSTANCE) + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("http://acplt.org/SubmodelTemplates/AssetIdentification") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodelElements(new DefaultProperty.Builder() .idShort("ManufacturerName") .displayName( - new DefaultLangString.Builder().text("Manufacturer Name").language("en-us").build() + new DefaultLangStringNameType.Builder().text("Manufacturer Name").language("en-us").build() ) - .checksum("someCheckSum") .description(Arrays.asList( - new DefaultLangString.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), - new DefaultLangString.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() + new DefaultLangStringTextType.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("0173-1#02-AAO677#002") .build() ) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .qualifiers(new DefaultQualifier.Builder() .value("100") .type("http://acplt.org/Qualifier/ExampleQualifier") - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) .qualifiers(new DefaultQualifier.Builder() .value("50") .type("http://acplt.org/Qualifier/ExampleQualifier2") - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) .value("http://acplt.org/ValueId/ACPLT") - .valueType(DataTypeDefXsd.STRING) - .valueId(new DefaultReference.Builder() + .valueType(DataTypeDefXSD.STRING) + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ACPLT") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .submodelElements(new DefaultProperty.Builder() .idShort("InstanceId") + .category("VARIABLE") .description(Arrays.asList( - new DefaultLangString.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), - new DefaultLangString.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() + new DefaultLangStringTextType.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber") .build() ) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) + .supplementalSemanticIds(Arrays.asList( + new DefaultReference.Builder() + .keys(new DefaultKey.Builder() + .type(KeyTypes.GLOBAL_REFERENCE) + .value("something_random_e14ad770") + .build()) + .type(ReferenceTypes.EXTERNAL_REFERENCE) + .build(), + new DefaultReference.Builder() + .keys(new DefaultKey.Builder() + .type(KeyTypes.GLOBAL_REFERENCE) + .value("something_random_bd061acd") + .build()) + .type(ReferenceTypes.EXTERNAL_REFERENCE) + .build())) .value("978-8234-234-342") - .valueType(DataTypeDefXsd.STRING) - .valueId(new DefaultReference.Builder() + .valueType(DataTypeDefXSD.STRING) + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("978-8234-234-342") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .build(); @@ -310,80 +298,80 @@ public static Submodel createSubmodel2() { return new DefaultSubmodel.Builder() .idShort("BillOfMaterial") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example bill of material submodel for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-BillofMaterial-Submodel für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example bill of material submodel for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-BillofMaterial-Submodel für eine Test-Anwendung").language("de").build() )) .id("http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") + .version("0") .build()) - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .kind(ModellingKind.INSTANCE) + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) .value("http://acplt.org/SubmodelTemplates/BillOfMaterial") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodelElements(new DefaultEntity.Builder() .idShort("ExampleEntity") .description(Arrays.asList( - new DefaultLangString.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), - new DefaultLangString.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() + new DefaultLangStringTextType.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .statements(new DefaultProperty.Builder() .idShort("ExampleProperty2") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("http://acplt.org/ValueId/ExampleValue2") - .valueType(DataTypeDefXsd.STRING) - .valueId(new DefaultReference.Builder() + .valueType(DataTypeDefXSD.STRING) + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValue2") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .statements(new DefaultProperty.Builder() .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("http://acplt.org/ValueId/ExampleValueId") - .valueType(DataTypeDefXsd.STRING) - .valueId(new DefaultReference.Builder() + .valueType(DataTypeDefXSD.STRING) + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .entityType(EntityType.CO_MANAGED_ENTITY) @@ -391,24 +379,18 @@ public static Submodel createSubmodel2() { .submodelElements(new DefaultEntity.Builder() .idShort("ExampleEntity2") .description(Arrays.asList( - new DefaultLangString.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), - new DefaultLangString.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() + new DefaultLangStringTextType.Builder().text("Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation.").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .entityType(EntityType.SELF_MANAGED_ENTITY) - .globalAssetId(new DefaultReference.Builder() - .keys(new DefaultKey.Builder() - .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) - .value("https://acplt.org/Test_Asset2") - .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) - .build()) + .globalAssetID("https://acplt.org/Test_Asset2") .build()) .build(); } @@ -417,35 +399,35 @@ public static Submodel createSubmodel3() { return new DefaultSubmodel.Builder() .idShort("TestSubmodel") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example submodel for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-Teilmodell für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example submodel for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-Teilmodell für eine Test-Anwendung").language("de").build() )) .id("https://acplt.org/Test_Submodel") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .kind(ModellingKind.INSTANCE) + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelTemplates/ExampleSubmodel") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodelElements(new DefaultRelationshipElement.Builder() .idShort("ExampleRelationshipElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example RelationshipElement object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel RelationshipElement Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example RelationshipElement object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel RelationshipElement Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/RelationshipElements/ExampleRelationshipElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .first(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -482,15 +464,15 @@ public static Submodel createSubmodel3() { .idShort("ExampleAnnotatedRelationshipElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example AnnotatedRelationshipElement object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel AnnotatedRelationshipElement Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example AnnotatedRelationshipElement object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel AnnotatedRelationshipElement Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .first(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -523,52 +505,50 @@ public static Submodel createSubmodel3() { .type(ReferenceTypes.MODEL_REFERENCE) .build()) .annotations(new DefaultProperty.Builder() - .kind(ModelingKind.INSTANCE) .idShort("ExampleProperty3") .category("PARAMETER") .value("some example annotation") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .submodelElements(new DefaultOperation.Builder() .idShort("ExampleOperation") - .kind(ModelingKind.TEMPLATE) .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Operation object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Operation Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Operation object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Operation Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Operations/ExampleOperation") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .inputVariables(new DefaultOperationVariable.Builder() .value(new DefaultProperty.Builder() .idShort("ExampleProperty1") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("http://acplt.org/ValueId/ExampleValueId") - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .outputVariables(new DefaultOperationVariable.Builder() @@ -576,25 +556,25 @@ public static Submodel createSubmodel3() { .idShort("ExampleProperty2") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("http://acplt.org/ValueId/ExampleValueId") - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .inoutputVariables(new DefaultOperationVariable.Builder() @@ -602,25 +582,25 @@ public static Submodel createSubmodel3() { .idShort("ExampleProperty3") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("http://acplt.org/ValueId/ExampleValueId") - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .build()) @@ -628,15 +608,15 @@ public static Submodel createSubmodel3() { .idShort("ExampleCapability") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Capability object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Capability Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Capability object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Capability Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Capabilities/ExampleCapability") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .submodelElements(new DefaultBasicEventElement.Builder() @@ -645,15 +625,15 @@ public static Submodel createSubmodel3() { .direction(Direction.INPUT) .state(StateOfEvent.ON) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example BasicEvent object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel BasicEvent Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example BasicEvent object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel BasicEvent Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Events/ExampleBasicEvent") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .observed(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -676,113 +656,113 @@ public static Submodel createSubmodel3() { .category("PARAMETER") .orderRelevant(true) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example ExampleSubmodelElementListOrdered object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel ExampleSubmodelElementListOrdered Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example ExampleSubmodelElementListOrdered object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel ExampleSubmodelElementListOrdered Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .value(new DefaultProperty.Builder() .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("http://acplt.org/ValueId/ExampleValueId") - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value(new DefaultMultiLanguageProperty.Builder() .idShort("ExampleMultiLanguageProperty") .category("CONSTANT") .value(Arrays.asList( - new DefaultLangString.Builder().text("Example value of a MultiLanguageProperty element").language("en-us").build(), - new DefaultLangString.Builder().text("Beispielswert für ein MultiLanguageProperty-Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example value of a MultiLanguageProperty element").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispielswert für ein MultiLanguageProperty-Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example MultiLanguageProperty object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel MultiLanguageProperty Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example MultiLanguageProperty object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel MultiLanguageProperty Element").language("de").build() )) - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleMultiLanguageValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .value(new DefaultRange.Builder() // TODO: a SME-List must only contain one SME-Type, e.g. Property or Range .idShort("ExampleRange") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Range object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Range Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Range object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Range Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Ranges/ExampleRange") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .min("0") .max("100") - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .build()) .submodelElements(new DefaultSubmodelElementCollection.Builder() .idShort("ExampleSubmodelElementCollection") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value(new DefaultBlob.Builder() .idShort("ExampleBlob") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Blob object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Blob Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Blob object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Blob Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder().type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Blobs/ExampleBlob") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .contentType("application/pdf") .value(Base64.getDecoder().decode("AQIDBAU=")) @@ -791,15 +771,15 @@ public static Submodel createSubmodel3() { .idShort("ExampleFile") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example File object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel File Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example File object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel File Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Files/ExampleFile") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("file:///TestFile.pdf") .contentType("application/pdf") @@ -808,15 +788,15 @@ public static Submodel createSubmodel3() { .idShort("ExampleReferenceElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Reference Element object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Reference Element Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Reference Element object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Reference Element Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE).value( - "http://acplt.org/ReferenceElements/ExampleReferenceElement") + "http://acplt.org/ReferenceElements/ExampleReferenceElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -831,7 +811,7 @@ public static Submodel createSubmodel3() { .type(KeyTypes.PROPERTY) .value("ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .build()) @@ -842,7 +822,7 @@ public static Submodel createSubmodel4() { return new DefaultSubmodel.Builder() .idShort("Test_Submodel_Mandatory") .id("https://acplt.org/Test_Submodel_Mandatory") - .kind(ModelingKind.TEMPLATE) + .kind(ModellingKind.TEMPLATE) .submodelElements(new DefaultRelationshipElement.Builder() .idShort("ExampleRelationshipElement") .first(new DefaultReference.Builder() @@ -911,7 +891,6 @@ public static Submodel createSubmodel4() { .build()) .submodelElements(new DefaultOperation.Builder() .idShort("ExampleOperation") - .kind(ModelingKind.TEMPLATE) .build()) .submodelElements(new DefaultCapability.Builder() .idShort("ExampleCapability") @@ -939,11 +918,11 @@ public static Submodel createSubmodel4() { .submodelElements(new DefaultSubmodelElementList.Builder() .idShort("ExampleSubmodelElementListUnordered") .orderRelevant(false) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .value(new DefaultProperty.Builder() .idShort("ExampleProperty") .value(null) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value(new DefaultMultiLanguageProperty.Builder() .idShort("ExampleMultiLanguageProperty") @@ -952,9 +931,9 @@ public static Submodel createSubmodel4() { .idShort("ExampleRange") .min(null) .max(null) - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .build()) .submodelElements(new DefaultSubmodelElementCollection.Builder() .idShort("ExampleSubmodelElementCollection") @@ -980,7 +959,7 @@ public static Submodel createSubmodel4() { public static Submodel createSubmodel5() { return new DefaultSubmodel.Builder() .idShort("Test_Submodel2_Mandatory") - .kind(ModelingKind.INSTANCE) + .kind(ModellingKind.INSTANCE) .id("https://acplt.org/Test_Submodel2_Mandatory") .build(); } @@ -989,34 +968,35 @@ public static Submodel createSubmodel6() { return new DefaultSubmodel.Builder() .idShort("TestSubmodelMissing") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example submodel for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-Teilmodell für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example submodel for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-Teilmodell für eine Test-Anwendung").language("de").build() )) .id("https://acplt.org/Test_Submodel_Missing") - .kind(ModelingKind.INSTANCE) + .kind(ModellingKind.INSTANCE) .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0").build()) - .semanticId(new DefaultReference.Builder() + .version("0") + .revision("9") + .build()) + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelTemplates/ExampleSubmodel") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodelElements(new DefaultRelationshipElement.Builder() .idShort("ExampleRelationshipElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example RelationshipElement object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel RelationshipElement Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example RelationshipElement object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel RelationshipElement Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/RelationshipElements/ExampleRelationshipElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .first(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -1053,15 +1033,15 @@ public static Submodel createSubmodel6() { .idShort("ExampleAnnotatedRelationshipElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example AnnotatedRelationshipElement object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel AnnotatedRelationshipElement Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example AnnotatedRelationshipElement object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel AnnotatedRelationshipElement Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .first(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -1094,49 +1074,47 @@ public static Submodel createSubmodel6() { .type(ReferenceTypes.MODEL_REFERENCE) .build()) .annotations(new DefaultProperty.Builder() - .kind(ModelingKind.INSTANCE) .idShort("ExampleProperty") .category("PARAMETER") .value("some example annotation") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .submodelElements(new DefaultOperation.Builder() .idShort("ExampleOperation") - .kind(ModelingKind.TEMPLATE) .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Operation object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Operation Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Operation object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Operation Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Operations/ExampleOperation") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .inputVariables(new DefaultOperationVariable.Builder() .value(new DefaultProperty.Builder() .idShort("ExampleProperty1") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .qualifiers(new DefaultQualifier.Builder() .type("http://acplt.org/Qualifier/ExampleQualifier") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value("exampleValue") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .outputVariables(new DefaultOperationVariable.Builder() @@ -1144,22 +1122,22 @@ public static Submodel createSubmodel6() { .idShort("ExampleProperty2") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .qualifiers(new DefaultQualifier.Builder() .type("http://acplt.org/Qualifier/ExampleQualifier") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value("exampleValue") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .inoutputVariables(new DefaultOperationVariable.Builder() @@ -1167,22 +1145,22 @@ public static Submodel createSubmodel6() { .idShort("ExampleProperty3") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .qualifiers(new DefaultQualifier.Builder() .type("http://acplt.org/Qualifier/ExampleQualifier") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value("exampleValue") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .build()) @@ -1190,15 +1168,15 @@ public static Submodel createSubmodel6() { .idShort("ExampleCapability") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Capability object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Capability Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Capability object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Capability Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Capabilities/ExampleCapability") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .submodelElements(new DefaultBasicEventElement.Builder() @@ -1207,15 +1185,15 @@ public static Submodel createSubmodel6() { .direction(Direction.INPUT) .state(StateOfEvent.ON) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example BasicEvent object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel BasicEvent Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example BasicEvent object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel BasicEvent Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Events/ExampleBasicEvent") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .observed(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -1230,112 +1208,112 @@ public static Submodel createSubmodel6() { .type(KeyTypes.PROPERTY) .value("ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .submodelElements(new DefaultSubmodelElementList.Builder() .idShort("ExampleSubmodelElementListOrdered") .category("PARAMETER") .orderRelevant(true) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example SubmodelElementListOrdered object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel SubmodelElementListOrdered Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example SubmodelElementListOrdered object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel SubmodelElementListOrdered Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value(new DefaultProperty.Builder() .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .qualifiers(new DefaultQualifier.Builder() .type("http://acplt.org/Qualifier/ExampleQualifier") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value("exampleValue") - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value(new DefaultMultiLanguageProperty.Builder() .idShort("ExampleMultiLanguageProperty") .category("CONSTANT") .value(Arrays.asList( - new DefaultLangString.Builder().text("Example value of a MultiLanguageProperty element").language("en-us").build(), - new DefaultLangString.Builder().text("Beispielswert für ein MultiLanguageProperty-Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example value of a MultiLanguageProperty element").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispielswert für ein MultiLanguageProperty-Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example MultiLanguageProperty object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel MultiLanguageProperty Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example MultiLanguageProperty object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel MultiLanguageProperty Element").language("de").build() )) .build()) .value(new DefaultRange.Builder() .idShort("ExampleRange") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Range object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Range Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Range object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Range Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Ranges/ExampleRange") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .min("0") .max("100") - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .build()) .submodelElements(new DefaultSubmodelElementCollection.Builder() .idShort("ExampleSubmodelElementCollection") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value(new DefaultBlob.Builder() .idShort("ExampleBlob") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Blob object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Blob Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Blob object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Blob Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Blobs/ExampleBlob") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .contentType("application/pdf") .value(Base64.getDecoder().decode("AQIDBAU=")) @@ -1344,15 +1322,15 @@ public static Submodel createSubmodel6() { .idShort("ExampleFile") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example File object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel File Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example File object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel File Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Files/ExampleFile") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value("file:///TestFile.pdf") .contentType("application/pdf") @@ -1361,15 +1339,15 @@ public static Submodel createSubmodel6() { .idShort("ExampleReferenceElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Reference Element object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Reference Element Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Reference Element object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Reference Element Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ReferenceElements/ExampleReferenceElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .value(new DefaultReference.Builder() .keys(new DefaultKey.Builder() @@ -1395,38 +1373,37 @@ public static Submodel createSubmodel7() { return new DefaultSubmodel.Builder() .idShort("TestSubmodelTemplate") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example submodel for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-Teilmodell für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example submodel for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-Teilmodell für eine Test-Anwendung").language("de").build() )) .id("https://acplt.org/Test_Submodel_Template") - .kind(ModelingKind.TEMPLATE) + .kind(ModellingKind.TEMPLATE) .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelTemplates/ExampleSubmodel") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) + .kind(ModellingKind.TEMPLATE) .submodelElements(new DefaultRelationshipElement.Builder() .idShort("ExampleRelationshipElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example RelationshipElement object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel RelationshipElement Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example RelationshipElement object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel RelationshipElement Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/RelationshipElements/ExampleRelationshipElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .first(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) @@ -1462,17 +1439,16 @@ public static Submodel createSubmodel7() { .idShort("ExampleAnnotatedRelationshipElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example AnnotatedRelationshipElement object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel AnnotatedRelationshipElement Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example AnnotatedRelationshipElement object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel AnnotatedRelationshipElement Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .first(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) @@ -1506,38 +1482,35 @@ public static Submodel createSubmodel7() { .build()) .submodelElements(new DefaultOperation.Builder() .idShort("ExampleOperation") - .kind(ModelingKind.TEMPLATE) .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Operation object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Operation Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Operation object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Operation Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Operations/ExampleOperation") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .inputVariables(new DefaultOperationVariable.Builder() .value(new DefaultProperty.Builder() .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .value(null) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .outputVariables(new DefaultOperationVariable.Builder() @@ -1545,19 +1518,18 @@ public static Submodel createSubmodel7() { .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .value(null) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .inoutputVariables(new DefaultOperationVariable.Builder() @@ -1565,19 +1537,18 @@ public static Submodel createSubmodel7() { .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .value(null) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .build()) .build()) @@ -1585,17 +1556,16 @@ public static Submodel createSubmodel7() { .idShort("ExampleCapability") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Capability object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Capability Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Capability object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Capability Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Capabilities/ExampleCapability") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .build()) .submodelElements(new DefaultBasicEventElement.Builder() .idShort("ExampleBasicEvent") @@ -1603,17 +1573,16 @@ public static Submodel createSubmodel7() { .direction(Direction.OUTPUT) .state(StateOfEvent.OFF) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example BasicEvent object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel BasicEvent Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example BasicEvent object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel BasicEvent Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Events/ExampleBasicEvent") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .observed(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.SUBMODEL) @@ -1635,139 +1604,131 @@ public static Submodel createSubmodel7() { .category("PARAMETER") .orderRelevant(true) .description(Arrays.asList( - new DefaultLangString.Builder().text("Example SubmodelElementListOrdered object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel SubmodelElementListOrdered Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example SubmodelElementListOrdered object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel SubmodelElementListOrdered Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .value(new DefaultProperty.Builder() .idShort("ExampleProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Property object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Property Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Property object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Property Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Properties/ExampleProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .value(null) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value(new DefaultMultiLanguageProperty.Builder() .idShort("ExampleMultiLanguageProperty") .category("CONSTANT") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example MultiLanguageProperty object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel MultiLanguageProperty Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example MultiLanguageProperty object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel MultiLanguageProperty Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE).value( - "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty") + "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .build()) .value(new DefaultRange.Builder() .idShort("ExampleRange") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Range object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Range Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Range object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Range Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Ranges/ExampleRange") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .min(null) .max("100") - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) .value(new DefaultRange.Builder() .idShort("ExampleRange2") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Range object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Range Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Range object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Range Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Ranges/ExampleRange") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .min("0") .max(null) - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) - .typeValueListElement(AasSubmodelElements.SUBMODEL_ELEMENT) + .typeValueListElement(AASSubmodelElements.SUBMODEL_ELEMENT) .build()) .submodelElements(new DefaultSubmodelElementCollection.Builder() .idShort("ExampleSubmodelElementCollection") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .value(new DefaultBlob.Builder() .idShort("ExampleBlob") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Blob object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Blob Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Blob object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Blob Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Blobs/ExampleBlob") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .contentType("application/pdf") .build()) .value(new DefaultFile.Builder() .idShort("ExampleFile") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example File object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel File Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example File object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel File Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Files/ExampleFile") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .value(null) .contentType("application/pdf") .build()) @@ -1775,34 +1736,32 @@ public static Submodel createSubmodel7() { .idShort("ExampleReferenceElement") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example Reference Element object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel Reference Element Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example Reference Element object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel Reference Element Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ReferenceElements/ExampleReferenceElement") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .build()) .build()) .submodelElements(new DefaultSubmodelElementCollection.Builder() .idShort("ExampleSubmodelElementCollection2") .category("PARAMETER") .description(Arrays.asList( - new DefaultLangString.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), - new DefaultLangString.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() + new DefaultLangStringTextType.Builder().text("Example SubmodelElementCollection object").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Beispiel SubmodelElementCollection Element").language("de").build() )) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.TEMPLATE) .build()) .build(); } @@ -1811,20 +1770,20 @@ public static ConceptDescription createConceptDescription1() { return new DefaultConceptDescription.Builder() .idShort("TestConceptDescription") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example concept description for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-ConceptDescription für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example concept description for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-ConceptDescription für eine Test-Anwendung").language("de").build() )) .id("https://acplt.org/Test_ConceptDescription") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) .isCaseOf(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/DataSpecifications/Conceptdescription/TestConceptDescription") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build(); } @@ -1840,13 +1799,14 @@ public static ConceptDescription createConceptDescription3() { return new DefaultConceptDescription.Builder() .idShort("TestConceptDescription1") .description(Arrays.asList( - new DefaultLangString.Builder().text("An example concept description for the test application").language("en-us").build(), - new DefaultLangString.Builder().text("Ein Beispiel-ConceptDescription für eine Test-Anwendung").language("de").build() + new DefaultLangStringTextType.Builder().text("An example concept description for the test application").language("en-us").build(), + new DefaultLangStringTextType.Builder().text("Ein Beispiel-ConceptDescription für eine Test-Anwendung").language("de").build() )) + .category("PROPERTY") .id("https://acplt.org/Test_ConceptDescription_Missing") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) .build(); } @@ -1856,66 +1816,65 @@ public static ConceptDescription createConceptDescription4() { .idShort("TestSpec_01") .id("http://acplt.org/DataSpecifciations/Example/Identification") .administration(new DefaultAdministrativeInformation.Builder() - .version("0.9") - .revision("0") + .version("0") + .revision("9") .build()) .isCaseOf(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ReferenceElements/ConceptDescriptionX") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .embeddedDataSpecifications(new DefaultEmbeddedDataSpecification.Builder() .dataSpecification(new DefaultReference.Builder() - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value(AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360) .build()) .build()) - .dataSpecificationContent(new DefaultDataSpecificationIEC61360.Builder() + .dataSpecificationContent(new DefaultDataSpecificationIec61360.Builder() .preferredName(Arrays.asList( - new DefaultLangString.Builder().text("Test Specification").language("de").build(), - new DefaultLangString.Builder().text("TestSpecification").language("en-us").build() + new DefaultLangStringPreferredNameTypeIec61360.Builder().text("Test Specification").language("de").build(), + new DefaultLangStringPreferredNameTypeIec61360.Builder().text("TestSpecification").language("en-us").build() )) - .dataType(DataTypeIEC61360.REAL_MEASURE) - .definition(new DefaultLangString.Builder().text("Dies ist eine Data Specification für Testzwecke").language("de").build()) - .definition(new DefaultLangString.Builder().text("This is a DataSpecification for testing purposes").language("en-us").build()) - .shortName(new DefaultLangString.Builder().text("Test Spec").language("de").build()) - .shortName(new DefaultLangString.Builder().text("TestSpec").language("en-us").build()) + .dataType(DataTypeIec61360.REAL_MEASURE) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text("Dies ist eine Data Specification für Testzwecke").language("de").build()) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text("This is a DataSpecification for testing purposes").language("en-us").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text("Test Spec").language("de").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text("TestSpec").language("en-us").build()) .unit("SpaceUnit") - .unitId(new DefaultReference.Builder() + .unitID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/Units/SpaceUnit") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .sourceOfDefinition("http://acplt.org/DataSpec/ExampleDef") .symbol("SU") .valueFormat("string") .value("TEST") - .levelType(LevelType.MAX) .valueList(new DefaultValueList.Builder() .valueReferencePairs(new DefaultValueReferencePair.Builder() .value("http://acplt.org/ValueId/ExampleValueId") - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .valueReferencePairs(new DefaultValueReferencePair.Builder() .value("http://acplt.org/ValueId/ExampleValueId2") - .valueId(new DefaultReference.Builder() + .valueID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("http://acplt.org/ValueId/ExampleValueId2") .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .build()) diff --git a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASSimple.java b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASSimple.java index 98f85c356..fb3f79091 100644 --- a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASSimple.java +++ b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/AASSimple.java @@ -15,28 +15,40 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.core; -import org.eclipse.digitaltwin.aas4j.v3.model.*; +import java.util.List; + +import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetKind; +import org.eclipse.digitaltwin.aas4j.v3.model.ConceptDescription; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.Environment; +import org.eclipse.digitaltwin.aas4j.v3.model.Extension; +import org.eclipse.digitaltwin.aas4j.v3.model.KeyTypes; +import org.eclipse.digitaltwin.aas4j.v3.model.ModellingKind; +import org.eclipse.digitaltwin.aas4j.v3.model.ReferenceTypes; +import org.eclipse.digitaltwin.aas4j.v3.model.Submodel; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAdministrativeInformation; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAssetAdministrationShell; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAssetInformation; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEmbeddedDataSpecification; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEnvironment; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultFile; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultKey; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangString; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringDefinitionTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringPreferredNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringShortNameTypeIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultProperty; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultReference; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultResource; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSpecificAssetId; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSpecificAssetID; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSubmodel; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSubmodelElementCollection; import org.junit.Assert; import org.junit.Test; -import java.util.List; - public class AASSimple { private static final String DOCUMENT_DEF = "Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann."; @@ -46,7 +58,7 @@ public class AASSimple { private static final String WWW_VDI2770_COM_BLATT1_ENTWURF_OKT18_CD_DOCUMENT = "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/Document"; private static final String ACTUAL_ROTATIONSPEED_WITH_WHICH_THE_MOTOR_OR_FEEDINGUNIT_IS_OPERATED = "Actual rotationspeed with which the motor or feedingunit is operated"; private static final String AKTUELLE_DREHZAHL_MITWELCHER_DER_MOTOR_ODER_DIE_SPEISEINHEIT_BETRIEBEN_WIRD = "Aktuelle Drehzahl, mitwelcher der Motor oder die Speiseinheit betrieben wird"; - private static final String ACTUAL_ROTATION_SPEED = "ActualRotationSpeed"; + private static final String ACTUAL_ROTATION_SPEED = "ActRotationSpeed"; private static final String ACTUALROTATIONSPEED = "Actualrotationspeed"; private static final String AKTUELLE_DREHZAHL = "AktuelleDrehzahl"; private static final String _1_MIN = "1/min"; @@ -129,7 +141,6 @@ public AASSimple() { public static final ConceptDescription CONCEPT_DESCRIPTION_MAXROTATIONSPEED = createConceptDescriptionMaxRotationSpeed(); public static final ConceptDescription CONCEPT_DESCRIPTION_ROTATIONSPEED = createConceptDescriptionRotationSpeed(); public static final ConceptDescription CONCEPT_DESCRIPTION_DOCUMENT = createConceptDescriptionDocument(); - public static final Environment ENVIRONMENT = createEnvironment(); public static AssetAdministrationShell createAAS() { return new DefaultAssetAdministrationShell.Builder() @@ -137,33 +148,27 @@ public static AssetAdministrationShell createAAS() { .id(AAS_IDENTIFIER) .assetInformation(new DefaultAssetInformation.Builder() .assetKind(AssetKind.INSTANCE) - .globalAssetId(new DefaultReference.Builder() - .keys(new DefaultKey.Builder() - .type(KeyTypes.ASSET_ADMINISTRATION_SHELL) - .value(HTTP_CUSTOMER_COM_ASSETS_KHBVZJSQKIY) - .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) - .build()) - .specificAssetIds(new DefaultSpecificAssetId.Builder() + .globalAssetID(HTTP_CUSTOMER_COM_ASSETS_KHBVZJSQKIY) + .specificAssetIds(new DefaultSpecificAssetID.Builder() .name(EQUIPMENT_ID) .value(_538FD1B3_F99F_4A52_9C75_72E9FA921270) - .externalSubjectId(new DefaultReference.Builder() + .externalSubjectID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value(HTTP_CUSTOMER_COM_SYSTEMS_ERP_012) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) - .specificAssetIds(new DefaultSpecificAssetId.Builder() + .specificAssetIds(new DefaultSpecificAssetID.Builder() .name(DEVICE_ID) .value(QJ_YG_PGGJWKI_HK4_RR_QI_YS_LG) - .externalSubjectId(new DefaultReference.Builder() + .externalSubjectID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value(HTTP_CUSTOMER_COM_SYSTEMS_IO_T_1) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build()) .defaultThumbnail(new DefaultResource.Builder() @@ -176,7 +181,7 @@ public static AssetAdministrationShell createAAS() { .type(KeyTypes.SUBMODEL) .value(SUBMODEL_TECHNICAL_DATA_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodels( new DefaultReference.Builder() @@ -184,7 +189,7 @@ public static AssetAdministrationShell createAAS() { .type(KeyTypes.SUBMODEL) .value(SUBMODEL_OPERATIONAL_DATA_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .submodels( new DefaultReference.Builder() @@ -192,98 +197,92 @@ public static AssetAdministrationShell createAAS() { .type(KeyTypes.SUBMODEL) .value(SUBMODEL_DOCUMENTATION_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .build(); } public static Submodel createSubmodelTechnicalData() { return new DefaultSubmodel.Builder() - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value(SUBMODEL_TECHNICAL_DATA_SEMANTIC_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .kind(ModelingKind.INSTANCE) .idShort(SUBMODEL_TECHNICAL_DATA_ID_SHORT) .id(SUBMODEL_TECHNICAL_DATA_ID) .submodelElements(new DefaultProperty.Builder() - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.CONCEPT_DESCRIPTION) .value(SUBMODEL_TECHNICAL_DATA_SEMANTIC_ID_PROPERTY) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .idShort(SUBMODEL_TECHNICAL_DATA_PROPERTY_ID_SHORT) .category(SUBMODEL_TECHNICAL_DATA_PROPERTY_CATEGORY) .value(SUBMODEL_TECHNICAL_DATA_PROPERTY_VALUE) - .valueType(DataTypeDefXsd.INTEGER) + .valueType(DataTypeDefXSD.INTEGER) .build()) .build(); } public static Submodel createSubmodelOperationalData() { return new DefaultSubmodel.Builder() - .kind(ModelingKind.INSTANCE) + .kind(ModellingKind.INSTANCE) .idShort(SUBMODEL_OPERATIONAL_DATA_ID_SHORT) .id(SUBMODEL_OPERATIONAL_DATA_ID) .submodelElements(new DefaultProperty.Builder() - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.CONCEPT_DESCRIPTION) .value(SUBMODEL_OPERATIONAL_DATA_SEMANTIC_ID_PROPERTY) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .idShort(SUBMODEL_OPERATIONAL_DATA_PROPERTY_ID_SHORT) .category(SUBMODEL_OPERATIONAL_DATA_PROPERTY_CATEGORY) .value(SUBMODEL_OPERATIONAL_DATA_PROPERTY_VALUE) - .valueType(DataTypeDefXsd.INTEGER) + .valueType(DataTypeDefXSD.INTEGER) .build()) .build(); } public static Submodel createSubmodelDocumentation() { return new DefaultSubmodel.Builder() - .kind(ModelingKind.INSTANCE) + .kind(ModellingKind.INSTANCE) .idShort(SUBMODEL_DOCUMENTATION_ID_SHORT) .id(SUBMODEL_DOCUMENTATION_ID) .submodelElements(new DefaultSubmodelElementCollection.Builder() - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.CONCEPT_DESCRIPTION) .value(SUBMODEL_DOCUMENTATION_ELEMENTCOLLECTION_SEMANTIC_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .idShort(SUBMODEL_DOCUMENTATION_ELEMENTCOLLECTION_ID_SHORT) .value(new DefaultProperty.Builder() - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.CONCEPT_DESCRIPTION) .value(SUBMODEL_DOCUMENTATION_PROPERTY_SEMANTIC_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .idShort(SUBMODEL_DOCUMENTATION_PROPERTY_ID_SHORT) .value(SUBMODEL_DOCUMENTATION_PROPERTY_VALUE) - .valueType(DataTypeDefXsd.STRING) + .valueType(DataTypeDefXSD.STRING) .build()) .value(new DefaultFile.Builder() - .kind(ModelingKind.INSTANCE) - .semanticId(new DefaultReference.Builder() + .semanticID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.CONCEPT_DESCRIPTION) .value(SUBMODEL_DOCUMENTATION_FILE_SEMANTIC_ID) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .idShort(SUBMODEL_DOCUMENTATION_FILE_ID_SHORT) .contentType(SUBMODEL_DOCUMENTATION_FILE_contentType) @@ -305,17 +304,17 @@ public static ConceptDescription createConceptDescriptionTitle() { .type(KeyTypes.GLOBAL_REFERENCE) .value(AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .dataSpecificationContent(new DefaultDataSpecificationIEC61360.Builder() - .preferredName(new DefaultLangString.Builder().text(TITLE).language("EN").build()) - .preferredName(new DefaultLangString.Builder().text(TITEL).language("DE").build()) - .shortName(new DefaultLangString.Builder().text(TITLE).language("EN").build()) - .shortName(new DefaultLangString.Builder().text(TITEL).language("DE").build()) + .dataSpecificationContent(new DefaultDataSpecificationIec61360.Builder() + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(TITLE).language("EN").build()) + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(TITEL).language("DE").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(TITLE).language("EN").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(TITEL).language("DE").build()) .unit("ExampleString") .sourceOfDefinition("ExampleString") - .dataType(DataTypeIEC61360.STRING_TRANSLATABLE) - .definition(new DefaultLangString.Builder().text(SPRACHABHÄNGIGER_TITELDES_DOKUMENTS).language("EN").build()) + .dataType(DataTypeIec61360.STRING_TRANSLATABLE) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(SPRACHABHÄNGIGER_TITELDES_DOKUMENTS).language("EN").build()) .build()) .build()) .build(); @@ -331,18 +330,18 @@ public static ConceptDescription createConceptDescriptionDigitalFile() { .type(KeyTypes.GLOBAL_REFERENCE) .value(AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .dataSpecificationContent( - new DefaultDataSpecificationIEC61360.Builder() - .preferredName(new DefaultLangString.Builder().text(DIGITAL_FILE).language("EN").build()) - .preferredName(new DefaultLangString.Builder().text(DIGITAL_FILE).language("EN").build()) - .shortName(new DefaultLangString.Builder().text(DIGITAL_FILE).language("EN").build()) - .shortName(new DefaultLangString.Builder().text(DIGITALE_DATEI).language("DE").build()) + new DefaultDataSpecificationIec61360.Builder() + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(DIGITAL_FILE).language("EN").build()) + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(DIGITAL_FILE).language("EN").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(DIGITAL_FILE).language("EN").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(DIGITALE_DATEI).language("DE").build()) .unit("ExampleString") .sourceOfDefinition("ExampleString") - .dataType(DataTypeIEC61360.STRING) - .definition(new DefaultLangString.Builder().text(DIGITAL_FILE_DEFINITION).language("EN").build()) + .dataType(DataTypeIec61360.STRING) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(DIGITAL_FILE_DEFINITION).language("EN").build()) .build()) .build()) .build(); @@ -353,7 +352,7 @@ public static ConceptDescription createConceptDescriptionMaxRotationSpeed() { .idShort(MAX_ROTATION_SPEED).category(PROPERTY) .administration(new DefaultAdministrativeInformation.Builder() .version("2") - .revision("2.1") + .revision("1") .build()) .id(_0173_1_02_BAA120_008) .embeddedDataSpecifications( @@ -363,23 +362,23 @@ public static ConceptDescription createConceptDescriptionMaxRotationSpeed() { .type(KeyTypes.GLOBAL_REFERENCE) .value(AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .dataSpecificationContent(new DefaultDataSpecificationIEC61360.Builder() - .preferredName(new DefaultLangString.Builder().text(MAX_DREHZAHL).language("de").build()) - .preferredName(new DefaultLangString.Builder().text(MAX_ROTATIONSPEED).language("en").build()) + .dataSpecificationContent(new DefaultDataSpecificationIec61360.Builder() + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(MAX_DREHZAHL).language("de").build()) + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(MAX_ROTATIONSPEED).language("en").build()) .unit(_1_MIN) - .unitId(new DefaultReference.Builder() + .unitID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value(_0173_1_05_AAA650_002) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .sourceOfDefinition("ExampleString") - .dataType(DataTypeIEC61360.REAL_MEASURE) - .definition(new DefaultLangString.Builder().text(MAX_ROTATE_DEF_DE).language("de").build()) - .definition(new DefaultLangString.Builder().text(MAX_ROTATE_DEF_EN).language("EN").build()) + .dataType(DataTypeIec61360.REAL_MEASURE) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(MAX_ROTATE_DEF_DE).language("de").build()) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(MAX_ROTATE_DEF_EN).language("EN").build()) .build()) .build()) .build(); @@ -397,26 +396,26 @@ public static ConceptDescription createConceptDescriptionRotationSpeed() { .type(KeyTypes.GLOBAL_REFERENCE) .value(AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .dataSpecificationContent( - new DefaultDataSpecificationIEC61360.Builder() - .preferredName(new DefaultLangString.Builder().text(AKTUELLE_DREHZAHL).language("DE").build()) - .preferredName(new DefaultLangString.Builder().text(ACTUALROTATIONSPEED).language("EN").build()) - .shortName(new DefaultLangString.Builder().text(AKTUELLE_DREHZAHL).language("DE").build()) - .shortName(new DefaultLangString.Builder().text(ACTUAL_ROTATION_SPEED).language("EN").build()) + new DefaultDataSpecificationIec61360.Builder() + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(AKTUELLE_DREHZAHL).language("DE").build()) + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(ACTUALROTATIONSPEED).language("EN").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(AKTUELLE_DREHZAHL).language("DE").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(ACTUAL_ROTATION_SPEED).language("EN").build()) .unit(_1_MIN) - .unitId(new DefaultReference.Builder() + .unitID(new DefaultReference.Builder() .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value(_0173_1_05_AAA650_002) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) .sourceOfDefinition("ExampleString") - .dataType(DataTypeIEC61360.REAL_MEASURE) - .definition(new DefaultLangString.Builder().text(AKTUELLE_DREHZAHL_MITWELCHER_DER_MOTOR_ODER_DIE_SPEISEINHEIT_BETRIEBEN_WIRD).language("DE").build()) - .definition(new DefaultLangString.Builder().text(ACTUAL_ROTATIONSPEED_WITH_WHICH_THE_MOTOR_OR_FEEDINGUNIT_IS_OPERATED).language("EN").build()) + .dataType(DataTypeIec61360.REAL_MEASURE) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(AKTUELLE_DREHZAHL_MITWELCHER_DER_MOTOR_ODER_DIE_SPEISEINHEIT_BETRIEBEN_WIRD).language("DE").build()) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(ACTUAL_ROTATIONSPEED_WITH_WHICH_THE_MOTOR_OR_FEEDINGUNIT_IS_OPERATED).language("EN").build()) .build()) .build()) .build(); @@ -432,16 +431,16 @@ public static ConceptDescription createConceptDescriptionDocument() { .type(KeyTypes.GLOBAL_REFERENCE) .value(AAS_3_0_RC_02_DATA_SPECIFICATION_IEC_61360) .build()) - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .build()) - .dataSpecificationContent(new DefaultDataSpecificationIEC61360.Builder() - .preferredName(new DefaultLangString.Builder().text(DOCUMENT).language("EN").build()) - .shortName(new DefaultLangString.Builder().text(DOCUMENT).language("EN").build()) - .shortName(new DefaultLangString.Builder().text(DOKUMENT).language("DE").build()) + .dataSpecificationContent(new DefaultDataSpecificationIec61360.Builder() + .preferredName(new DefaultLangStringPreferredNameTypeIec61360.Builder().text(DOCUMENT).language("EN").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(DOCUMENT).language("EN").build()) + .shortName(new DefaultLangStringShortNameTypeIec61360.Builder().text(DOKUMENT).language("DE").build()) .unit("ExampleString") .sourceOfDefinition(ISO15519_1_2010) - .dataType(DataTypeIEC61360.STRING) - .definition(new DefaultLangString.Builder().text(DOCUMENT_DEF).language("EN").build()) + .dataType(DataTypeIec61360.STRING) + .definition(new DefaultLangStringDefinitionTypeIec61360.Builder().text(DOCUMENT_DEF).language("EN").build()) .build()) .build()) .build(); @@ -463,7 +462,7 @@ public static Environment createEnvironment() { @Test public void testAasSimpleExtensionsInitialized() { - List extensions = AASSimple.ENVIRONMENT.getAssetAdministrationShells().get(0).getExtensions(); + List extensions = AASSimple.createEnvironment().getAssetAdministrationShells().get(0).getExtensions(); Assert.assertTrue(extensions != null); } diff --git a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/CustomProperty.java b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/CustomProperty.java index e636d9c4a..40652ceb7 100644 --- a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/CustomProperty.java +++ b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/CustomProperty.java @@ -15,14 +15,7 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.core; -import org.eclipse.digitaltwin.aas4j.v3.model.EmbeddedDataSpecification; -import org.eclipse.digitaltwin.aas4j.v3.model.ModelingKind; -import org.eclipse.digitaltwin.aas4j.v3.model.Property; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; -import org.eclipse.digitaltwin.aas4j.v3.model.Qualifier; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; -import org.eclipse.digitaltwin.aas4j.v3.model.Extension; +import org.eclipse.digitaltwin.aas4j.v3.model.*; import java.util.List; import java.util.Objects; @@ -34,7 +27,7 @@ public class CustomProperty implements Property { protected List dataSpecifications; - protected ModelingKind kind; + protected ModellingKind kind; protected Reference semanticId; @@ -42,15 +35,15 @@ public class CustomProperty implements Property { protected Reference valueId; - protected DataTypeDefXsd valueType; + protected DataTypeDefXSD valueType; protected List qualifiers; protected String category; - protected List description; + protected List description; - protected List displayName; + protected List displayName; protected String idShort; @@ -89,12 +82,12 @@ public boolean equals(Object obj) { } @Override - final public DataTypeDefXsd getValueType() { + final public DataTypeDefXSD getValueType() { return this.valueType; } @Override - final public void setValueType(DataTypeDefXsd dataType) { + final public void setValueType(DataTypeDefXSD dataType) { this.valueType = dataType; } @@ -109,12 +102,12 @@ final public void setValue(String value) { } @Override - final public Reference getValueId() { + final public Reference getValueID() { return valueId; } @Override - final public void setValueId(Reference valueId) { + final public void setValueID(Reference valueId) { this.valueId = valueId; } @@ -129,32 +122,22 @@ final public void setCategory(String category) { } @Override - final public List getDescription() { + final public List getDescription() { return description; } @Override - final public void setDescription(List description) { + final public void setDescription(List description) { this.description = description; } @Override - public String getChecksum() { - return null; - } - - @Override - public void setChecksum(String checksum) { - - } - - @Override - final public List getDisplayName() { + final public List getDisplayName() { return displayName; } @Override - final public void setDisplayName(List displayName) { + final public void setDisplayName(List displayName) { this.displayName = displayName; } @@ -189,22 +172,12 @@ final public void setEmbeddedDataSpecifications(List } @Override - final public ModelingKind getKind() { - return kind; - } - - @Override - final public void setKind(ModelingKind kind) { - this.kind = kind; - } - - @Override - final public Reference getSemanticId() { + final public Reference getSemanticID() { return semanticId; } @Override - final public void setSemanticId(Reference semanticId) { + final public void setSemanticID(Reference semanticId) { this.semanticId = semanticId; } diff --git a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumDeserializerTest.java b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumDeserializerTest.java index 9a8b4e19e..456a2823b 100644 --- a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumDeserializerTest.java +++ b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumDeserializerTest.java @@ -3,7 +3,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.deserialization.EnumDeserializer; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.Direction; import org.eclipse.digitaltwin.aas4j.v3.model.StateOfEvent; import org.junit.Assert; @@ -26,20 +26,20 @@ public void setUp() { @Test public void whenSerializingEnum_usingDataTypeIEC61360_shouldReturnUpperCase() { - assertDeserialization("BOOLEAN", DataTypeIEC61360.BOOLEAN); - assertDeserialization("DATE", DataTypeIEC61360.DATE); - assertDeserialization("INTEGER_CURRENCY", DataTypeIEC61360.INTEGER_CURRENCY); - assertDeserialization("INTEGER_COUNT", DataTypeIEC61360.INTEGER_COUNT); - assertDeserialization("INTEGER_MEASURE", DataTypeIEC61360.INTEGER_MEASURE); - assertDeserialization("RATIONAL", DataTypeIEC61360.RATIONAL); - assertDeserialization("RATIONAL_MEASURE", DataTypeIEC61360.RATIONAL_MEASURE); - assertDeserialization("REAL_COUNT", DataTypeIEC61360.REAL_COUNT); - assertDeserialization("REAL_MEASURE", DataTypeIEC61360.REAL_MEASURE); - assertDeserialization("STRING", DataTypeIEC61360.STRING); - assertDeserialization("STRING_TRANSLATABLE", DataTypeIEC61360.STRING_TRANSLATABLE); - assertDeserialization("TIME", DataTypeIEC61360.TIME); - assertDeserialization("TIMESTAMP", DataTypeIEC61360.TIMESTAMP); - assertDeserialization("IRI", DataTypeIEC61360.IRI); + assertDeserialization("BOOLEAN", DataTypeIec61360.BOOLEAN); + assertDeserialization("DATE", DataTypeIec61360.DATE); + assertDeserialization("INTEGER_CURRENCY", DataTypeIec61360.INTEGER_CURRENCY); + assertDeserialization("INTEGER_COUNT", DataTypeIec61360.INTEGER_COUNT); + assertDeserialization("INTEGER_MEASURE", DataTypeIec61360.INTEGER_MEASURE); + assertDeserialization("RATIONAL", DataTypeIec61360.RATIONAL); + assertDeserialization("RATIONAL_MEASURE", DataTypeIec61360.RATIONAL_MEASURE); + assertDeserialization("REAL_COUNT", DataTypeIec61360.REAL_COUNT); + assertDeserialization("REAL_MEASURE", DataTypeIec61360.REAL_MEASURE); + assertDeserialization("STRING", DataTypeIec61360.STRING); + assertDeserialization("STRING_TRANSLATABLE", DataTypeIec61360.STRING_TRANSLATABLE); + assertDeserialization("TIME", DataTypeIec61360.TIME); + assertDeserialization("TIMESTAMP", DataTypeIec61360.TIMESTAMP); + assertDeserialization("IRI", DataTypeIec61360.IRI); } @Test diff --git a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumSerializerTest.java b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumSerializerTest.java index 9b78fca57..b3858ace6 100644 --- a/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumSerializerTest.java +++ b/dataformat-core/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/core/EnumSerializerTest.java @@ -3,7 +3,7 @@ import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.SerializerProvider; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.serialization.EnumSerializer; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.Direction; import org.eclipse.digitaltwin.aas4j.v3.model.StateOfEvent; import org.junit.Assert; @@ -35,20 +35,20 @@ public void setUp() throws Exception { @Test public void whenSerializingEnum_usingDataTypeIEC61360_shouldReturnUpperCase() { - assertSerialization(DataTypeIEC61360.BOOLEAN, "BOOLEAN"); - assertSerialization(DataTypeIEC61360.DATE, "DATE"); - assertSerialization(DataTypeIEC61360.INTEGER_CURRENCY, "INTEGER_CURRENCY"); - assertSerialization(DataTypeIEC61360.INTEGER_COUNT, "INTEGER_COUNT"); - assertSerialization(DataTypeIEC61360.INTEGER_MEASURE, "INTEGER_MEASURE"); - assertSerialization(DataTypeIEC61360.RATIONAL, "RATIONAL"); - assertSerialization(DataTypeIEC61360.RATIONAL_MEASURE, "RATIONAL_MEASURE"); - assertSerialization(DataTypeIEC61360.REAL_COUNT, "REAL_COUNT"); - assertSerialization(DataTypeIEC61360.REAL_MEASURE, "REAL_MEASURE"); - assertSerialization(DataTypeIEC61360.STRING, "STRING"); - assertSerialization(DataTypeIEC61360.STRING_TRANSLATABLE, "STRING_TRANSLATABLE"); - assertSerialization(DataTypeIEC61360.TIME, "TIME"); - assertSerialization(DataTypeIEC61360.TIMESTAMP, "TIMESTAMP"); - assertSerialization(DataTypeIEC61360.IRI, "IRI"); + assertSerialization(DataTypeIec61360.BOOLEAN, "BOOLEAN"); + assertSerialization(DataTypeIec61360.DATE, "DATE"); + assertSerialization(DataTypeIec61360.INTEGER_CURRENCY, "INTEGER_CURRENCY"); + assertSerialization(DataTypeIec61360.INTEGER_COUNT, "INTEGER_COUNT"); + assertSerialization(DataTypeIec61360.INTEGER_MEASURE, "INTEGER_MEASURE"); + assertSerialization(DataTypeIec61360.RATIONAL, "RATIONAL"); + assertSerialization(DataTypeIec61360.RATIONAL_MEASURE, "RATIONAL_MEASURE"); + assertSerialization(DataTypeIec61360.REAL_COUNT, "REAL_COUNT"); + assertSerialization(DataTypeIec61360.REAL_MEASURE, "REAL_MEASURE"); + assertSerialization(DataTypeIec61360.STRING, "STRING"); + assertSerialization(DataTypeIec61360.STRING_TRANSLATABLE, "STRING_TRANSLATABLE"); + assertSerialization(DataTypeIec61360.TIME, "TIME"); + assertSerialization(DataTypeIec61360.TIMESTAMP, "TIMESTAMP"); + assertSerialization(DataTypeIec61360.IRI, "IRI"); } @Test diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/AssetInformationMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/AssetInformationMixin.java index e4eb3b4c1..1e88c6d7f 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/AssetInformationMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/AssetInformationMixin.java @@ -16,6 +16,7 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; import org.eclipse.digitaltwin.aas4j.v3.model.AssetKind; @@ -23,4 +24,10 @@ public interface AssetInformationMixin { @JsonInclude(JsonInclude.Include.ALWAYS) public AssetKind getAssetKind(); + + @JsonProperty("globalAssetId") + public String getGlobalAssetID(); + + @JsonProperty("globalAssetId") + public void setGlobalAssetID(String globalAssetID); } diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationIEC61360Mixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationIec61360Mixin.java similarity index 69% rename from dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationIEC61360Mixin.java rename to dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationIec61360Mixin.java index c05b344c2..88ec3908d 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationIEC61360Mixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationIec61360Mixin.java @@ -17,13 +17,13 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; - -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; import org.eclipse.digitaltwin.aas4j.v3.model.LevelType; import java.util.List; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360; -public interface DataSpecificationIEC61360Mixin { +public interface DataSpecificationIec61360Mixin { @JsonProperty("levelType") public List getLevelTypes(); @@ -33,8 +33,14 @@ public interface DataSpecificationIEC61360Mixin { @JsonInclude(JsonInclude.Include.ALWAYS) @JsonProperty("preferredName") - public List getPreferredName(); + public List getPreferredName(); @JsonProperty("preferredName") - public void setPreferredName(List preferredName); + public void setPreferredName(List preferredName); + + @JsonProperty("unitId") + public Reference getUnitID(); + + public @JsonProperty("unitId") + void setUnitID(Reference unitID); } diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationPhysicalUnitMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationPhysicalUnitMixin.java index a0ab31745..6f2ccde77 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationPhysicalUnitMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/DataSpecificationPhysicalUnitMixin.java @@ -17,9 +17,9 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; import java.util.List; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360; public interface DataSpecificationPhysicalUnitMixin { @@ -31,10 +31,10 @@ public interface DataSpecificationPhysicalUnitMixin { @JsonInclude(JsonInclude.Include.ALWAYS) @JsonProperty("definition") - public List getDefinition(); + public List getDefinition(); @JsonProperty("definition") - public void setDefinition(List definition); + public void setDefinition(List definition); @JsonProperty("dinNotation") public List getDinNotations(); diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/EntityMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/EntityMixin.java index 4a71f7147..c6d9a89ef 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/EntityMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/EntityMixin.java @@ -16,10 +16,17 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; import org.eclipse.digitaltwin.aas4j.v3.model.EntityType; public interface EntityMixin { @JsonInclude(JsonInclude.Include.ALWAYS) public EntityType getEntityType(); + + @JsonProperty("globalAssetId") + public String getGlobalAssetID(); + + @JsonProperty("globalAssetId") + public void setGlobalAssetID(String globalAssetID); } diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/HasSemanticsMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/HasSemanticsMixin.java new file mode 100644 index 000000000..6398cc152 --- /dev/null +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/HasSemanticsMixin.java @@ -0,0 +1,27 @@ +/* + * Copyright 2023 jab. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; + +public interface HasSemanticsMixin { + @JsonProperty("semanticId") + public Reference getSemanticID(); + + @JsonProperty("semanticId") + public void setSemanticID(Reference semanticID); +} diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/MultiLanguagePropertyMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/MultiLanguagePropertyMixin.java index 698d046ba..cacb010eb 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/MultiLanguagePropertyMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/MultiLanguagePropertyMixin.java @@ -16,16 +16,22 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; import com.fasterxml.jackson.annotation.JsonProperty; - -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; import java.util.List; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; public interface MultiLanguagePropertyMixin { @JsonProperty("value") - public List getValue(); + public List getValue(); @JsonProperty("value") - public void setValue(LangString value); + public void setValue(LangStringTextType value); + + @JsonProperty("valueId") + public Reference getValueID(); + + @JsonProperty("valueId") + public void setValueID(Reference valueID); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsDeserializer.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/PropertyMixin.java similarity index 65% rename from dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsDeserializer.java rename to dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/PropertyMixin.java index 4d4daad51..7321e805f 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsDeserializer.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/PropertyMixin.java @@ -13,12 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; +package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -public class LangStringsDeserializer extends NoEntryWrapperListDeserializer { - public LangStringsDeserializer() { - super("langString", new LangStringNodeDeserializer()); - } +public interface PropertyMixin { + + @JsonProperty("valueId") + public Reference getValueID(); + + @JsonProperty("valueId") + void setValueID(Reference valueID); } diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/QualifierMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/QualifierMixin.java index ccd14d797..6cdd8c2a3 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/QualifierMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/QualifierMixin.java @@ -16,9 +16,17 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; public interface QualifierMixin { @JsonInclude(JsonInclude.Include.ALWAYS) public String getType(); + + @JsonProperty("valueId") + public Reference getValueID(); + + @JsonProperty("valueId") + void setValueID(Reference valueID); } diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ReferableMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ReferableMixin.java index 9104728d7..d93eb2c17 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ReferableMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ReferableMixin.java @@ -15,25 +15,23 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; -import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; -import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; import java.util.List; -import java.util.Set; public interface ReferableMixin { @JsonProperty("description") - public List getDescription(); + public List getDescription(); @JsonProperty("description") - public void setDescription(List description); + public void setDescription(List description); @JsonProperty("displayName") - public List getDisplayName(); + public List getDisplayName(); @JsonProperty("displayName") - public void setDisplayName(List displayNames); + public void setDisplayName(List displayNames); } diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SpecificAssetIDMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SpecificAssetIDMixin.java new file mode 100644 index 000000000..a6a59f46f --- /dev/null +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SpecificAssetIDMixin.java @@ -0,0 +1,28 @@ +/* + * Copyright 2023 jab. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; + +public interface SpecificAssetIDMixin { + + @JsonProperty("externalSubjectId") + public Reference getExternalSubjectID(); + + @JsonProperty("externalSubjectId") + public void setExternalSubjectID(Reference reference); +} diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SubmodelElementListMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SubmodelElementListMixin.java index 6f6f1bd71..e420e8e53 100644 --- a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SubmodelElementListMixin.java +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/SubmodelElementListMixin.java @@ -17,12 +17,12 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; -import org.eclipse.digitaltwin.aas4j.v3.model.AasSubmodelElements; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElement; import java.util.Collection; +import org.eclipse.digitaltwin.aas4j.v3.model.AASSubmodelElements; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; public interface SubmodelElementListMixin { @@ -41,16 +41,16 @@ public interface SubmodelElementListMixin { public void setSemanticIdListElement(Reference semanticIdListElement); @JsonProperty("typeValueListElement") - public AasSubmodelElements getTypeValueListElement(); + public AASSubmodelElements getTypeValueListElement(); @JsonProperty("typeValueListElement") - public void setTypeValueListElement(AasSubmodelElements typeValueListElement); + public void setTypeValueListElement(AASSubmodelElements typeValueListElement); @JsonProperty("valueTypeListElement") - public DataTypeDefXsd getValueTypeListElement(); + public DataTypeDefXSD getValueTypeListElement(); @JsonProperty("valueTypeListElement") - public void setValueTypeListElement(DataTypeDefXsd valueTypeListElement); + public void setValueTypeListElement(DataTypeDefXSD valueTypeListElement); @JsonProperty("value") public Collection getValues(); diff --git a/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ValueReferencePairMixin.java b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ValueReferencePairMixin.java new file mode 100644 index 000000000..163467672 --- /dev/null +++ b/dataformat-json/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/mixins/ValueReferencePairMixin.java @@ -0,0 +1,28 @@ +/* + * Copyright 2023 jab. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.mixins; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; + +public interface ValueReferencePairMixin { + + @JsonProperty("valueId") + public Reference getValueID(); + + @JsonProperty("valueId") + public void setValueID(Reference valueID); +} diff --git a/dataformat-json/src/main/resources/aas.json b/dataformat-json/src/main/resources/aas.json index 3d0b2a302..496811106 100644 --- a/dataformat-json/src/main/resources/aas.json +++ b/dataformat-json/src/main/resources/aas.json @@ -7,7 +7,7 @@ "$ref": "#/definitions/Environment" } ], - "$id": "https://admin-shell.io/aas/3/0/RC02", + "$id": "https://admin-shell.io/aas/3/0", "definitions": { "AasSubmodelElements": { "type": "string", @@ -31,6 +31,24 @@ "SubmodelElementList" ] }, + "AbstractLangString": { + "type": "object", + "properties": { + "language": { + "type": "string", + "pattern": "^(([a-zA-Z]{2,3}(-[a-zA-Z]{3}(-[a-zA-Z]{3}){2})?|[a-zA-Z]{4}|[a-zA-Z]{5,8})(-[a-zA-Z]{4})?(-([a-zA-Z]{2}|[0-9]{3}))?(-(([a-zA-Z0-9]){5,8}|[0-9]([a-zA-Z0-9]){3}))*(-[0-9A-WY-Za-wy-z](-([a-zA-Z0-9]){2,8})+)*(-[xX](-([a-zA-Z0-9]){1,8})+)?|[xX](-([a-zA-Z0-9]){1,8})+|((en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)|(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang)))$" + }, + "text": { + "type": "string", + "minLength": 1, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + } + }, + "required": [ + "language", + "text" + ] + }, "AdministrativeInformation": { "allOf": [ { @@ -40,11 +58,42 @@ "properties": { "version": { "type": "string", - "minLength": 1 + "allOf": [ + { + "minLength": 1, + "maxLength": 4 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^(0|[1-9][0-9]*)$" + } + ] }, "revision": { "type": "string", - "minLength": 1 + "allOf": [ + { + "minLength": 1, + "maxLength": 4 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^(0|[1-9][0-9]*)$" + } + ] + }, + "creator": { + "$ref": "#/definitions/Reference" + }, + "templateId": { + "type": "string", + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" } } } @@ -53,16 +102,19 @@ "AnnotatedRelationshipElement": { "allOf": [ { - "$ref": "#/definitions/RelationshipElement" + "$ref": "#/definitions/RelationshipElement_abstract" }, { "properties": { "annotations": { "type": "array", "items": { - "$ref": "#/definitions/DataElement" + "$ref": "#/definitions/DataElement_choice" }, "minItems": 1 + }, + "modelType": { + "const": "AnnotatedRelationshipElement" } } } @@ -90,6 +142,9 @@ "$ref": "#/definitions/Reference" }, "minItems": 1 + }, + "modelType": { + "const": "AssetAdministrationShell" } }, "required": [ @@ -105,7 +160,10 @@ "$ref": "#/definitions/AssetKind" }, "globalAssetId": { - "$ref": "#/definitions/Reference" + "type": "string", + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "specificAssetIds": { "type": "array", @@ -114,6 +172,12 @@ }, "minItems": 1 }, + "assetType": { + "type": "string", + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, "defaultThumbnail": { "$ref": "#/definitions/Resource" } @@ -126,6 +190,7 @@ "type": "string", "enum": [ "Instance", + "NotApplicable", "Type" ] }, @@ -147,22 +212,27 @@ }, "messageTopic": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 255, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "messageBroker": { "$ref": "#/definitions/Reference" }, "lastUpdate": { "type": "string", - "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)Z$" + "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$" }, "minInterval": { "type": "string", - "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)Z$" + "pattern": "^-?P((([0-9]+Y([0-9]+M)?([0-9]+D)?|([0-9]+M)([0-9]+D)?|([0-9]+D))(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S)))?)|(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S))))$" }, "maxInterval": { "type": "string", - "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)Z$" + "pattern": "^-?P((([0-9]+Y([0-9]+M)?([0-9]+D)?|([0-9]+M)([0-9]+D)?|([0-9]+D))(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S)))?)|(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S))))$" + }, + "modelType": { + "const": "BasicEventElement" } }, "required": [ @@ -186,8 +256,21 @@ }, "contentType": { "type": "string", - "minLength": 1, - "pattern": "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ \t]*;[ \t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\t !#-\\[\\]-~]|[\\x80-\\xff])|\\\\([\t !-~]|[\\x80-\\xff]))*\"))*$" + "allOf": [ + { + "minLength": 1, + "maxLength": 100 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ \\t]*;[ \\t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\\t !#-\\[\\]-~]|[\u0080-\u00ff])|\\\\([\\t !-~]|[\u0080-\u00ff]))*\"))*$" + } + ] + }, + "modelType": { + "const": "Blob" } }, "required": [ @@ -197,7 +280,18 @@ ] }, "Capability": { - "$ref": "#/definitions/SubmodelElement" + "allOf": [ + { + "$ref": "#/definitions/SubmodelElement" + }, + { + "properties": { + "modelType": { + "const": "Capability" + } + } + } + ] }, "ConceptDescription": { "allOf": [ @@ -215,6 +309,9 @@ "$ref": "#/definitions/Reference" }, "minItems": 1 + }, + "modelType": { + "const": "ConceptDescription" } } } @@ -223,6 +320,28 @@ "DataElement": { "$ref": "#/definitions/SubmodelElement" }, + "DataElement_choice": { + "oneOf": [ + { + "$ref": "#/definitions/Blob" + }, + { + "$ref": "#/definitions/File" + }, + { + "$ref": "#/definitions/MultiLanguageProperty" + }, + { + "$ref": "#/definitions/Property" + }, + { + "$ref": "#/definitions/Range" + }, + { + "$ref": "#/definitions/ReferenceElement" + } + ] + }, "DataSpecificationContent": { "type": "object", "properties": { @@ -234,7 +353,14 @@ "modelType" ] }, - "DataSpecificationIEC61360": { + "DataSpecificationContent_choice": { + "oneOf": [ + { + "$ref": "#/definitions/DataSpecificationIec61360" + } + ] + }, + "DataSpecificationIec61360": { "allOf": [ { "$ref": "#/definitions/DataSpecificationContent" @@ -244,129 +370,68 @@ "preferredName": { "type": "array", "items": { - "$ref": "#/definitions/LangString" + "$ref": "#/definitions/LangStringPreferredNameTypeIec61360" }, "minItems": 1 }, "shortName": { "type": "array", "items": { - "$ref": "#/definitions/LangString" + "$ref": "#/definitions/LangStringShortNameTypeIec61360" }, "minItems": 1 }, "unit": { "type": "string", - "minLength": 1 + "minLength": 1, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "unitId": { "$ref": "#/definitions/Reference" }, "sourceOfDefinition": { "type": "string", - "minLength": 1 + "minLength": 1, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "symbol": { "type": "string", - "minLength": 1 + "minLength": 1, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "dataType": { - "$ref": "#/definitions/DataTypeIEC61360" + "$ref": "#/definitions/DataTypeIec61360" }, "definition": { "type": "array", "items": { - "$ref": "#/definitions/LangString" + "$ref": "#/definitions/LangStringDefinitionTypeIec61360" }, "minItems": 1 }, "valueFormat": { "type": "string", - "minLength": 1 + "minLength": 1, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "valueList": { "$ref": "#/definitions/ValueList" }, "value": { - "type": "string" + "type": "string", + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "levelType": { "$ref": "#/definitions/LevelType" - } - }, - "required": [ - "preferredName" - ] - } - ] - }, - "DataSpecificationPhysicalUnit": { - "allOf": [ - { - "$ref": "#/definitions/DataSpecificationContent" - }, - { - "properties": { - "unitName": { - "type": "string", - "minLength": 1 - }, - "unitSymbol": { - "type": "string", - "minLength": 1 - }, - "definition": { - "type": "array", - "items": { - "$ref": "#/definitions/LangString" - }, - "minItems": 1 - }, - "siNotation": { - "type": "string", - "minLength": 1 - }, - "siName": { - "type": "string", - "minLength": 1 - }, - "dinNotation": { - "type": "string", - "minLength": 1 - }, - "eceName": { - "type": "string", - "minLength": 1 - }, - "eceCode": { - "type": "string", - "minLength": 1 - }, - "nistName": { - "type": "string", - "minLength": 1 - }, - "sourceOfDefinition": { - "type": "string", - "minLength": 1 - }, - "conversionFactor": { - "type": "string", - "minLength": 1 - }, - "registrationAuthorityId": { - "type": "string", - "minLength": 1 }, - "supplier": { - "type": "string", - "minLength": 1 + "modelType": { + "const": "DataSpecificationIec61360" } }, "required": [ - "unitName", - "unitSymbol", - "definition" + "preferredName" ] } ] @@ -380,8 +445,6 @@ "xs:byte", "xs:date", "xs:dateTime", - "xs:dateTimeStamp", - "xs:dayTimeDuration", "xs:decimal", "xs:double", "xs:duration", @@ -405,11 +468,10 @@ "xs:unsignedByte", "xs:unsignedInt", "xs:unsignedLong", - "xs:unsignedShort", - "xs:yearMonthDuration" + "xs:unsignedShort" ] }, - "DataTypeIEC61360": { + "DataTypeIec61360": { "type": "string", "enum": [ "BLOB", @@ -447,7 +509,7 @@ "$ref": "#/definitions/Reference" }, "dataSpecificationContent": { - "$ref": "#/definitions/DataSpecificationContent" + "$ref": "#/definitions/DataSpecificationContent_choice" } }, "required": [ @@ -465,7 +527,7 @@ "statements": { "type": "array", "items": { - "$ref": "#/definitions/SubmodelElement" + "$ref": "#/definitions/SubmodelElement_choice" }, "minItems": 1 }, @@ -473,10 +535,20 @@ "$ref": "#/definitions/EntityType" }, "globalAssetId": { - "$ref": "#/definitions/Reference" + "type": "string", + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + "specificAssetIds": { + "type": "array", + "items": { + "$ref": "#/definitions/SpecificAssetId" + }, + "minItems": 1 }, - "specificAssetId": { - "$ref": "#/definitions/SpecificAssetId" + "modelType": { + "const": "Entity" } }, "required": [ @@ -538,18 +610,20 @@ }, "topic": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 255, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "subjectId": { "$ref": "#/definitions/Reference" }, "timeStamp": { "type": "string", - "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)Z$" + "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$" }, "payload": { "type": "string", - "minLength": 1 + "contentEncoding": "base64" } }, "required": [ @@ -567,7 +641,9 @@ "properties": { "name": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 128, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "valueType": { "$ref": "#/definitions/DataTypeDefXsd" @@ -576,7 +652,11 @@ "type": "string" }, "refersTo": { - "$ref": "#/definitions/Reference" + "type": "array", + "items": { + "$ref": "#/definitions/Reference" + }, + "minItems": 1 } }, "required": [ @@ -594,13 +674,36 @@ "properties": { "value": { "type": "string", - "minLength": 1, - "pattern": "^file:(//((localhost|(\\[((([0-9A-Fa-f]{1,4}:){6}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|::([0-9A-Fa-f]{1,4}:){5}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|([0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){4}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){3}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){2}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){2}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){4}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(([0-9A-Fa-f]{1,4}:){6}[0-9A-Fa-f]{1,4})?::)|[vV][0-9A-Fa-f]+\\.([a-zA-Z0-9\\-._~]|[!$&'()*+,;=]|:)+)\\]|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=])*)))?/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?|/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?)$" + "allOf": [ + { + "minLength": 1, + "maxLength": 2000 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^file:(//((localhost|(\\[((([0-9A-Fa-f]{1,4}:){6}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|::([0-9A-Fa-f]{1,4}:){5}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|([0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){4}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){3}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){2}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){2}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){4}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(([0-9A-Fa-f]{1,4}:){6}[0-9A-Fa-f]{1,4})?::)|[vV][0-9A-Fa-f]+\\.([a-zA-Z0-9\\-._~]|[!$&'()*+,;=]|:)+)\\]|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=])*)))?/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?|/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?)$" + } + ] }, "contentType": { "type": "string", - "minLength": 1, - "pattern": "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ \t]*;[ \t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\t !#-\\[\\]-~]|[\\x80-\\xff])|\\\\([\t !-~]|[\\x80-\\xff]))*\"))*$" + "allOf": [ + { + "minLength": 1, + "maxLength": 100 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ \\t]*;[ \\t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\\t !#-\\[\\]-~]|[\u0080-\u00ff])|\\\\([\\t !-~]|[\u0080-\u00ff]))*\"))*$" + } + ] + }, + "modelType": { + "const": "File" } }, "required": [ @@ -637,7 +740,7 @@ "type": "object", "properties": { "kind": { - "$ref": "#/definitions/ModelingKind" + "$ref": "#/definitions/ModellingKind" } } }, @@ -668,7 +771,9 @@ }, "id": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" } }, "required": [ @@ -685,7 +790,9 @@ }, "value": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" } }, "required": [ @@ -722,29 +829,97 @@ "SubmodelElementList" ] }, - "LangString": { + "LangStringDefinitionTypeIec61360": { + "allOf": [ + { + "$ref": "#/definitions/AbstractLangString" + }, + { + "properties": { + "text": { + "maxLength": 1023 + } + } + } + ] + }, + "LangStringNameType": { + "allOf": [ + { + "$ref": "#/definitions/AbstractLangString" + }, + { + "properties": { + "text": { + "maxLength": 128 + } + } + } + ] + }, + "LangStringPreferredNameTypeIec61360": { + "allOf": [ + { + "$ref": "#/definitions/AbstractLangString" + }, + { + "properties": { + "text": { + "maxLength": 255 + } + } + } + ] + }, + "LangStringShortNameTypeIec61360": { + "allOf": [ + { + "$ref": "#/definitions/AbstractLangString" + }, + { + "properties": { + "text": { + "maxLength": 18 + } + } + } + ] + }, + "LangStringTextType": { + "allOf": [ + { + "$ref": "#/definitions/AbstractLangString" + }, + { + "properties": { + "text": { + "maxLength": 1023 + } + } + } + ] + }, + "LevelType": { "type": "object", "properties": { - "language": { - "type": "string", - "pattern": "^(([a-zA-Z]{2,3}(-[a-zA-Z]{3}(-[a-zA-Z]{3}){2})?|[a-zA-Z]{4}|[a-zA-Z]{5,8})(-[a-zA-Z]{4})?(-([a-zA-Z]{2}|[0-9]{3}))?(-(([a-zA-Z0-9]){5,8}|[0-9]([a-zA-Z0-9]){3}))*(-[0-9A-WY-Za-wy-z](-([a-zA-Z0-9]){2,8})+)*(-[xX](-([a-zA-Z0-9]){1,8})+)?|[xX](-([a-zA-Z0-9]){1,8})+|((en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)|(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang)))$" + "min": { + "type": "boolean" }, - "text": { - "type": "string" + "nom": { + "type": "boolean" + }, + "typ": { + "type": "boolean" + }, + "max": { + "type": "boolean" } }, "required": [ - "language", - "text" - ] - }, - "LevelType": { - "type": "string", - "enum": [ - "Max", - "Min", - "Nom", - "Typ" + "min", + "nom", + "typ", + "max" ] }, "ModelType": { @@ -756,8 +931,7 @@ "Blob", "Capability", "ConceptDescription", - "DataSpecificationIEC61360", - "DataSpecificationPhysicalUnit", + "DataSpecificationIec61360", "Entity", "File", "MultiLanguageProperty", @@ -771,7 +945,7 @@ "SubmodelElementList" ] }, - "ModelingKind": { + "ModellingKind": { "type": "string", "enum": [ "Instance", @@ -788,12 +962,15 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/LangString" + "$ref": "#/definitions/LangStringTextType" }, "minItems": 1 }, "valueId": { "$ref": "#/definitions/Reference" + }, + "modelType": { + "const": "MultiLanguageProperty" } } } @@ -826,6 +1003,9 @@ "$ref": "#/definitions/OperationVariable" }, "minItems": 1 + }, + "modelType": { + "const": "Operation" } } } @@ -835,7 +1015,7 @@ "type": "object", "properties": { "value": { - "$ref": "#/definitions/SubmodelElement" + "$ref": "#/definitions/SubmodelElement_choice" } }, "required": [ @@ -857,6 +1037,9 @@ }, "valueId": { "$ref": "#/definitions/Reference" + }, + "modelType": { + "const": "Property" } }, "required": [ @@ -895,7 +1078,9 @@ }, "type": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 128, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "valueType": { "$ref": "#/definitions/DataTypeDefXsd" @@ -937,6 +1122,9 @@ }, "max": { "type": "string" + }, + "modelType": { + "const": "Range" } }, "required": [ @@ -954,31 +1142,39 @@ "properties": { "category": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 128, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "idShort": { "type": "string", - "maxLength": 128, - "pattern": "^[a-zA-Z][a-zA-Z0-9_]+$" + "allOf": [ + { + "minLength": 1, + "maxLength": 128 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^[a-zA-Z][a-zA-Z0-9_]*$" + } + ] }, "displayName": { "type": "array", "items": { - "$ref": "#/definitions/LangString" + "$ref": "#/definitions/LangStringNameType" }, "minItems": 1 }, "description": { "type": "array", "items": { - "$ref": "#/definitions/LangString" + "$ref": "#/definitions/LangStringTextType" }, "minItems": 1 }, - "checksum": { - "type": "string", - "minLength": 1 - }, "modelType": { "$ref": "#/definitions/ModelType" } @@ -1020,6 +1216,9 @@ "properties": { "value": { "$ref": "#/definitions/Reference" + }, + "modelType": { + "const": "ReferenceElement" } } } @@ -1028,11 +1227,25 @@ "ReferenceTypes": { "type": "string", "enum": [ - "GlobalReference", + "ExternalReference", "ModelReference" ] }, "RelationshipElement": { + "allOf": [ + { + "$ref": "#/definitions/RelationshipElement_abstract" + }, + { + "properties": { + "modelType": { + "const": "RelationshipElement" + } + } + } + ] + }, + "RelationshipElement_abstract": { "allOf": [ { "$ref": "#/definitions/SubmodelElement" @@ -1053,18 +1266,48 @@ } ] }, + "RelationshipElement_choice": { + "oneOf": [ + { + "$ref": "#/definitions/RelationshipElement" + }, + { + "$ref": "#/definitions/AnnotatedRelationshipElement" + } + ] + }, "Resource": { "type": "object", "properties": { "path": { "type": "string", - "minLength": 1, - "pattern": "^file:(//((localhost|(\\[((([0-9A-Fa-f]{1,4}:){6}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|::([0-9A-Fa-f]{1,4}:){5}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|([0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){4}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){3}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){2}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){2}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){4}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(([0-9A-Fa-f]{1,4}:){6}[0-9A-Fa-f]{1,4})?::)|[vV][0-9A-Fa-f]+\\.([a-zA-Z0-9\\-._~]|[!$&'()*+,;=]|:)+)\\]|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=])*)))?/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?|/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?)$" + "allOf": [ + { + "minLength": 1, + "maxLength": 2000 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^file:(//((localhost|(\\[((([0-9A-Fa-f]{1,4}:){6}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|::([0-9A-Fa-f]{1,4}:){5}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|([0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){4}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){3}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){2}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){2}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){4}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(([0-9A-Fa-f]{1,4}:){6}[0-9A-Fa-f]{1,4})?::)|[vV][0-9A-Fa-f]+\\.([a-zA-Z0-9\\-._~]|[!$&'()*+,;=]|:)+)\\]|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=])*)))?/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?|/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?)$" + } + ] }, "contentType": { "type": "string", - "minLength": 1, - "pattern": "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ \t]*;[ \t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\t !#-\\[\\]-~]|[\\x80-\\xff])|\\\\([\t !-~]|[\\x80-\\xff]))*\"))*$" + "allOf": [ + { + "minLength": 1, + "maxLength": 100 + }, + { + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" + }, + { + "pattern": "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ \\t]*;[ \\t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\\t !#-\\[\\]-~]|[\u0080-\u00ff])|\\\\([\\t !-~]|[\u0080-\u00ff]))*\"))*$" + } + ] } }, "required": [ @@ -1080,11 +1323,15 @@ "properties": { "name": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 64, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "value": { "type": "string", - "minLength": 1 + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "externalSubjectId": { "$ref": "#/definitions/Reference" @@ -1092,8 +1339,7 @@ }, "required": [ "name", - "value", - "externalSubjectId" + "value" ] } ] @@ -1127,9 +1373,12 @@ "submodelElements": { "type": "array", "items": { - "$ref": "#/definitions/SubmodelElement" + "$ref": "#/definitions/SubmodelElement_choice" }, "minItems": 1 + }, + "modelType": { + "const": "Submodel" } } } @@ -1140,9 +1389,6 @@ { "$ref": "#/definitions/Referable" }, - { - "$ref": "#/definitions/HasKind" - }, { "$ref": "#/definitions/HasSemantics" }, @@ -1164,9 +1410,12 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/SubmodelElement" + "$ref": "#/definitions/SubmodelElement_choice" }, "minItems": 1 + }, + "modelType": { + "const": "SubmodelElementCollection" } } } @@ -1182,13 +1431,6 @@ "orderRelevant": { "type": "boolean" }, - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SubmodelElement" - }, - "minItems": 1 - }, "semanticIdListElement": { "$ref": "#/definitions/Reference" }, @@ -1197,6 +1439,16 @@ }, "valueTypeListElement": { "$ref": "#/definitions/DataTypeDefXsd" + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubmodelElement_choice" + }, + "minItems": 1 + }, + "modelType": { + "const": "SubmodelElementList" } }, "required": [ @@ -1205,6 +1457,52 @@ } ] }, + "SubmodelElement_choice": { + "oneOf": [ + { + "$ref": "#/definitions/RelationshipElement" + }, + { + "$ref": "#/definitions/AnnotatedRelationshipElement" + }, + { + "$ref": "#/definitions/BasicEventElement" + }, + { + "$ref": "#/definitions/Blob" + }, + { + "$ref": "#/definitions/Capability" + }, + { + "$ref": "#/definitions/Entity" + }, + { + "$ref": "#/definitions/File" + }, + { + "$ref": "#/definitions/MultiLanguageProperty" + }, + { + "$ref": "#/definitions/Operation" + }, + { + "$ref": "#/definitions/Property" + }, + { + "$ref": "#/definitions/Range" + }, + { + "$ref": "#/definitions/ReferenceElement" + }, + { + "$ref": "#/definitions/SubmodelElementCollection" + }, + { + "$ref": "#/definitions/SubmodelElementList" + } + ] + }, "ValueList": { "type": "object", "properties": { @@ -1224,7 +1522,10 @@ "type": "object", "properties": { "value": { - "type": "string" + "type": "string", + "minLength": 1, + "maxLength": 2000, + "pattern": "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" }, "valueId": { "$ref": "#/definitions/Reference" diff --git a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonDeserializerTest.java b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonDeserializerTest.java index 743f195d9..719a758a4 100644 --- a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonDeserializerTest.java +++ b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonDeserializerTest.java @@ -15,6 +15,8 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json; +import static org.junit.Assert.assertEquals; + import org.eclipse.digitaltwin.aas4j.v3.dataformat.Deserializer; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.AASSimple; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.CustomProperty; @@ -27,7 +29,6 @@ import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultProperty; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSubmodel; import org.junit.Assert; -import static org.junit.Assert.assertEquals; import org.junit.Test; public class JsonDeserializerTest { @@ -53,7 +54,7 @@ public void testFullExample() throws Exception { @Test public void testCustomImplementationClass() throws Exception { - String json = new JsonSerializer().write(AASSimple.ENVIRONMENT); + String json = new JsonSerializer().write(AASSimple.createEnvironment()); Deserializer deserializer = new JsonDeserializer(); Environment environment = deserializer.read(json); checkImplementationClasses(environment, DefaultSubmodel.class, DefaultProperty.class); diff --git a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonSerializerTest.java b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonSerializerTest.java index 2b20fa113..1ea73393e 100644 --- a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonSerializerTest.java +++ b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonSerializerTest.java @@ -24,7 +24,12 @@ import java.util.List; import java.util.Set; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.SerializationException; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.AASSimple; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.json.util.ExampleData; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.json.util.Examples; +import org.eclipse.digitaltwin.aas4j.v3.model.Environment; +import org.eclipse.digitaltwin.aas4j.v3.model.Referable; import org.json.JSONException; import org.junit.Rule; import org.junit.Test; @@ -36,12 +41,6 @@ import com.fasterxml.jackson.core.JsonProcessingException; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.SerializationException; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.json.util.ExampleData; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.json.util.Examples; -import org.eclipse.digitaltwin.aas4j.v3.model.Environment; -import org.eclipse.digitaltwin.aas4j.v3.model.Referable; - public class JsonSerializerTest { private static final Logger logger = LoggerFactory.getLogger(JsonSerializerTest.class); @@ -57,7 +56,7 @@ public void testSerializeNull() throws JsonProcessingException, IOException, Ser @Test public void testWriteToFile() throws JsonProcessingException, IOException, SerializationException { File file = tempFolder.newFile("output.json"); - new JsonSerializer().write(file, AASSimple.ENVIRONMENT); + new JsonSerializer().write(file, AASSimple.createEnvironment()); assertTrue(file.exists()); } diff --git a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonValidationTest.java b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonValidationTest.java index f6ecb6539..ed0e9b08e 100644 --- a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonValidationTest.java +++ b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/JsonValidationTest.java @@ -15,7 +15,6 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import java.io.IOException; @@ -29,6 +28,7 @@ import junitparams.JUnitParamsRunner; import junitparams.Parameters; +import static org.junit.Assert.assertFalse; @RunWith(JUnitParamsRunner.class) public class JsonValidationTest { @@ -49,21 +49,20 @@ public static void prepareValidator() throws IOException { "src/test/resources/Example-Full.json" }) public void validateValidJson(String file) throws IOException { - String serializedEnvironment = new String(Files.readAllBytes(Paths.get(file))); - Set errors = validator.validateSchema(serializedEnvironment); - System.out.println("Validating: " + file); - assertTrue(errors.isEmpty()); + assertTrue(validate(file).isEmpty()); } @Test @Parameters({"src/test/resources/Environment-Invalid.json"}) public void validateInvalidJson(String file) throws IOException { - String serializedEnvironment = new String(Files.readAllBytes(Paths.get(file))); - Set errors = validator.validateSchema(serializedEnvironment); + assertFalse(validate(file).isEmpty()); + } + + private Set validate(String file) throws IOException { + String json = new String(Files.readAllBytes(Paths.get(file))); + Set result = validator.validateSchema(json); System.out.println("Validating: " + file); - for (String s : errors) { - System.out.println(s); - } - assertEquals(2, errors.size()); + result.forEach(System.out::println); + return result; } } diff --git a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/util/Examples.java b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/util/Examples.java index 5fc501adc..6297303af 100644 --- a/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/util/Examples.java +++ b/dataformat-json/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/json/util/Examples.java @@ -16,6 +16,7 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.json.util; import java.util.List; + import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.AASFull; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.AASSimple; import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; @@ -28,30 +29,20 @@ import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElement; import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElementCollection; import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElementList; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAssetAdministrationShell; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAssetInformation; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationPhysicalUnit; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEmbeddedDataSpecification; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEnvironment; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultKey; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangString; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultReference; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultResource; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSpecificAssetId; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSubmodelElementList; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.*; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSpecificAssetID; public class Examples { - public static final ExampleData EXAMPLE_FULL = ExampleData.of(AASFull.ENVIRONMENT, "Example-Full.json"); + public static final ExampleData EXAMPLE_FULL = ExampleData.of(AASFull.createEnvironment(), "Example-Full.json"); - public static final ExampleData EXAMPLE_SIMPLE = ExampleData.of(AASSimple.ENVIRONMENT, "Example-Simple.json"); + public static final ExampleData EXAMPLE_SIMPLE = ExampleData.of(AASSimple.createEnvironment(), "Example-Simple.json"); public static final ExampleData ENVIRONMENT_EMPTY = ExampleData.of(new DefaultEnvironment.Builder().build(), "Environment-Empty.json"); public static final ExampleData> ASSET_ADMINISTRATION_SHELL_LIST_OF = ExampleData.of( - List.of(AASFull.ENVIRONMENT.getAssetAdministrationShells().get(0), - AASFull.ENVIRONMENT.getAssetAdministrationShells().get(1)), + List.of(AASFull.createEnvironment().getAssetAdministrationShells().get(0), + AASFull.createEnvironment().getAssetAdministrationShells().get(1)), "AssetAdministrationShell-List.json"); public static final ExampleData ASSET_ADMINISTRATION_SHELL_WITH_ASSET_INFORMATION = ExampleData.of( @@ -59,18 +50,12 @@ public class Examples { .id("https://example.org/AssetAdministrationShell") .assetInformation(new DefaultAssetInformation.Builder() .assetKind(AssetKind.INSTANCE) - .globalAssetId(new DefaultReference.Builder() - .type(ReferenceTypes.GLOBAL_REFERENCE) - .keys(new DefaultKey.Builder() - .type(KeyTypes.GLOBAL_REFERENCE) - .value("https://example.org/Asset") - .build()) - .build()) - .specificAssetIds(new DefaultSpecificAssetId.Builder() + .globalAssetID("https://example.org/Asset") + .specificAssetIds(new DefaultSpecificAssetID.Builder() .name("ExampleAssetId") .value("ExampleValue") - .externalSubjectId(new DefaultReference.Builder() - .type(ReferenceTypes.GLOBAL_REFERENCE) + .externalSubjectID(new DefaultReference.Builder() + .type(ReferenceTypes.EXTERNAL_REFERENCE) .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("https://example.org/ExternalSubject") @@ -85,14 +70,14 @@ public class Examples { .build(), "AssetAdministrationShell-WithAssetInformation.json"); - public static final ExampleData ASSET_ADMINISTRATION_SHELL = ExampleData.of(AASFull.ENVIRONMENT.getAssetAdministrationShells().get(0), "AssetAdministrationShell.json"); + public static final ExampleData ASSET_ADMINISTRATION_SHELL = ExampleData.of(AASFull.createEnvironment().getAssetAdministrationShells().get(0), "AssetAdministrationShell.json"); public static final ExampleData CONCEPT_DESCRIPTION_DATA_SPECIFICATION_PHYSICAL_UNIT = ExampleData.of( new DefaultConceptDescription.Builder() .id("https://example.org/ConceptDescription") .embeddedDataSpecifications(new DefaultEmbeddedDataSpecification.Builder() .dataSpecification(new DefaultReference.Builder() - .type(ReferenceTypes.GLOBAL_REFERENCE) + .type(ReferenceTypes.EXTERNAL_REFERENCE) .keys(new DefaultKey.Builder() .type(KeyTypes.GLOBAL_REFERENCE) .value("https://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/3/0/RC02") @@ -125,20 +110,21 @@ public class Examples { "ConceptDescription-DataSpecificationPhysicalUnit.json"); public static final ExampleData> SUBMODEL_ELEMENT_LIST_OF = ExampleData.of( - List.of(AASFull.ENVIRONMENT.getSubmodels().get(0).getSubmodelElements().get(0), - AASFull.ENVIRONMENT.getSubmodels().get(0).getSubmodelElements().get(1)), - "submodelelement-list.json"); + List.of(AASFull.createEnvironment().getSubmodels().get(0).getSubmodelElements().get(0), + AASFull.createEnvironment().getSubmodels().get(0).getSubmodelElements().get(1)), + "SubmodelElement-List.json"); public static final ExampleData> SUBMODEL_LIST_OF = ExampleData.of( - List.of(AASFull.ENVIRONMENT.getSubmodels().get(0), - AASFull.ENVIRONMENT.getSubmodels().get(1)), + List.of(AASFull.createEnvironment().getSubmodels().get(0), + AASFull.createEnvironment().getSubmodels().get(1)), "Submodel-List.json"); - public static final ExampleData SUBMODEL = ExampleData.of(AASFull.ENVIRONMENT.getSubmodels().get(0), "submodel.json"); + public static final ExampleData SUBMODEL = ExampleData.of(AASFull.createEnvironment().getSubmodels().get(0), "Submodel.json"); - public static final ExampleData SUBMODEL_ELEMENT = ExampleData.of(AASFull.ENVIRONMENT.getSubmodels().get(0).getSubmodelElements().get(0), "submodelElement.json"); + public static final ExampleData SUBMODEL_ELEMENT = ExampleData.of(AASFull.createEnvironment().getSubmodels().get(0).getSubmodelElements().get(0), "SubmodelElement.json"); - public static final ExampleData SUBMODEL_ELEMENT_COLLECTION = ExampleData.of((SubmodelElementCollection)AASFull.ENVIRONMENT.getSubmodels().get(6).getSubmodelElements().get(6), "SubmodelElementCollection.json"); + public static final ExampleData SUBMODEL_ELEMENT_COLLECTION = ExampleData.of((SubmodelElementCollection) AASFull.createEnvironment().getSubmodels().get(6).getSubmodelElements().get(6), + "SubmodelElementCollection.json"); public static final ExampleData SUBMODEL_ELEMENT_LIST_EMPTY = ExampleData.of( new DefaultSubmodelElementList.Builder() @@ -146,5 +132,5 @@ public class Examples { .orderRelevant(true) .build(), "SubmodelElementList-Empty.json"); - public static final ExampleData SUBMODEL_ELEMENT_LIST = ExampleData.of((SubmodelElementList)AASFull.ENVIRONMENT.getSubmodels().get(6).getSubmodelElements().get(5), "SubmodelElementList.json"); + public static final ExampleData SUBMODEL_ELEMENT_LIST = ExampleData.of((SubmodelElementList) AASFull.createEnvironment().getSubmodels().get(6).getSubmodelElements().get(5), "SubmodelElementList.json"); } diff --git a/dataformat-json/src/test/resources/AssetAdministrationShell-List.json b/dataformat-json/src/test/resources/AssetAdministrationShell-List.json index bca2ea576..a354cab72 100644 --- a/dataformat-json/src/test/resources/AssetAdministrationShell-List.json +++ b/dataformat-json/src/test/resources/AssetAdministrationShell-List.json @@ -14,8 +14,8 @@ "modelType": "AssetAdministrationShell", "id": "https://acplt.org/Test_AssetAdministrationShell", "administration": { - "version": "0.9", - "revision": "0" + "version": "0", + "revision": "9" }, "derivedFrom": { "keys": [ @@ -24,19 +24,11 @@ "value": "https://acplt.org/TestAssetAdministrationShell2" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "assetInformation": { "assetKind": "Instance", - "globalAssetId": { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset" - } - ], - "type": "GlobalReference" - } + "globalAssetId": "https://acplt.org/Test_Asset" }, "submodels": [ { @@ -46,7 +38,7 @@ "value": "https://acplt.org/Test_Submodel" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -55,7 +47,7 @@ "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -64,7 +56,7 @@ "value": "http://acplt.org/Submodels/Assets/TestAsset/Identification" } ], - "type": "GlobalReference" + "type": "ExternalReference" } ] }, @@ -74,15 +66,7 @@ "id": "https://acplt.org/Test_AssetAdministrationShell_Mandatory", "assetInformation": { "assetKind": "Instance", - "globalAssetId": { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset_Mandatory" - } - ], - "type": "GlobalReference" - } + "globalAssetId": "https://acplt.org/Test_Asset_Mandatory" }, "submodels": [ { @@ -92,7 +76,7 @@ "value": "https://acplt.org/Test_Submodel_Mandatory" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -101,7 +85,7 @@ "value": "https://acplt.org/Test_Submodel2_Mandatory" } ], - "type": "GlobalReference" + "type": "ExternalReference" } ] } diff --git a/dataformat-json/src/test/resources/AssetAdministrationShell-WithAssetInformation.json b/dataformat-json/src/test/resources/AssetAdministrationShell-WithAssetInformation.json index b55407be4..35e322f57 100644 --- a/dataformat-json/src/test/resources/AssetAdministrationShell-WithAssetInformation.json +++ b/dataformat-json/src/test/resources/AssetAdministrationShell-WithAssetInformation.json @@ -4,16 +4,7 @@ "assetInformation": { "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "https://example.org/Asset" - } - ], - "type": "GlobalReference" - }, + "globalAssetId":"https://example.org/Asset", "specificAssetIds": [{ "name": "ExampleAssetId", "value": "ExampleValue", @@ -24,7 +15,7 @@ "value": "https://example.org/ExternalSubject" } ], - "type": "GlobalReference" + "type": "ExternalReference" } }], "defaultThumbnail": { diff --git a/dataformat-json/src/test/resources/AssetAdministrationShell.json b/dataformat-json/src/test/resources/AssetAdministrationShell.json index 4473090cf..aa9b84207 100644 --- a/dataformat-json/src/test/resources/AssetAdministrationShell.json +++ b/dataformat-json/src/test/resources/AssetAdministrationShell.json @@ -14,8 +14,8 @@ "id": "https://acplt.org/Test_AssetAdministrationShell", "administration": { - "version": "0.9", - "revision": "0" + "version": "0", + "revision": "9" }, "derivedFrom": { @@ -25,21 +25,12 @@ "value": "https://acplt.org/TestAssetAdministrationShell2" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "assetInformation": { "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset" - } - ], - "type": "GlobalReference" - } + "globalAssetId":"https://acplt.org/Test_Asset" }, "submodels": [ { @@ -49,7 +40,7 @@ "value": "https://acplt.org/Test_Submodel" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -58,7 +49,7 @@ "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -67,7 +58,7 @@ "value": "http://acplt.org/Submodels/Assets/TestAsset/Identification" } ], - "type": "GlobalReference" + "type": "ExternalReference" } ] } diff --git a/dataformat-json/src/test/resources/ConceptDescription-DataSpecificationPhysicalUnit.json b/dataformat-json/src/test/resources/ConceptDescription-DataSpecificationPhysicalUnit.json index a3d457a45..67ce6649e 100644 --- a/dataformat-json/src/test/resources/ConceptDescription-DataSpecificationPhysicalUnit.json +++ b/dataformat-json/src/test/resources/ConceptDescription-DataSpecificationPhysicalUnit.json @@ -12,7 +12,7 @@ "value": "https://admin-shell.io/DataSpecificationTemplates/DataSpecificationPhysicalUnit/3/0/RC02" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { diff --git a/dataformat-json/src/test/resources/Example-Full.json b/dataformat-json/src/test/resources/Example-Full.json index a95758e8e..d805d2c41 100644 --- a/dataformat-json/src/test/resources/Example-Full.json +++ b/dataformat-json/src/test/resources/Example-Full.json @@ -1,2885 +1,2549 @@ - { - "assetAdministrationShells": [ + "assetAdministrationShells": [ + { + "modelType": "AssetAdministrationShell", + "assetInformation": { + "assetKind": "Instance", + "globalAssetId": "https://acplt.org/Test_Asset" + }, + "derivedFrom": { + "keys": [ + { + "type": "AssetAdministrationShell", + "value": "https://acplt.org/TestAssetAdministrationShell2" + } + ], + "type": "ExternalReference" + }, + "submodels": [ { - "modelType": "AssetAdministrationShell", - "assetInformation": - { - "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset" - } - ], - "type": "GlobalReference" - } - }, - "derivedFrom": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/TestAssetAdministrationShell2" - } - ], - "type": "GlobalReference" - }, - "submodels": [ + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel" + } + ], + "type": "ExternalReference" + }, + { + "keys": [ + { + "type": "Submodel", + "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" + } + ], + "type": "ExternalReference" + }, + { + "keys": [ + { + "type": "Submodel", + "value": "http://acplt.org/Submodels/Assets/TestAsset/Identification" + } + ], + "type": "ExternalReference" + } + ], + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_AssetAdministrationShell", + "idShort": "TestAssetAdministrationShell", + "description": [ + { + "language": "en-us", + "text": "An Example Asset Administration Shell for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-Verwaltungsschale für eine Test-Anwendung" + } + ] + }, + { + "modelType": "AssetAdministrationShell", + "assetInformation": { + "assetKind": "Instance", + "globalAssetId": "https://acplt.org/Test_Asset_Mandatory" + }, + "submodels": [ + { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Mandatory" + } + ], + "type": "ExternalReference" + }, + { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel2_Mandatory" + } + ], + "type": "ExternalReference" + } + ], + "id": "https://acplt.org/Test_AssetAdministrationShell_Mandatory", + "idShort": "Test_AssetAdministrationShell_Mandatory" + }, + { + "modelType": "AssetAdministrationShell", + "assetInformation": { + "assetKind": "Instance", + "globalAssetId": "https://acplt.org/Test_Asset_Mandatory" + }, + "id": "https://acplt.org/Test_AssetAdministrationShell2_Mandatory", + "idShort": "Test_AssetAdministrationShell2_Mandatory" + }, + { + "modelType": "AssetAdministrationShell", + "assetInformation": { + "assetKind": "Instance", + "globalAssetId": "https://acplt.org/Test_Asset_Missing" + }, + "submodels": [ + { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + } + ], + "type": "ExternalReference" + } + ], + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_AssetAdministrationShell_Missing", + "idShort": "TestAssetAdministrationShell", + "description": [ + { + "language": "en-us", + "text": "An Example Asset Administration Shell for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-Verwaltungsschale für eine Test-Anwendung" + } + ] + } + ], + "conceptDescriptions": [ + { + "modelType": "ConceptDescription", + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_ConceptDescription", + "idShort": "TestConceptDescription", + "isCaseOf": [ + { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/DataSpecifications/Conceptdescription/TestConceptDescription" + } + ], + "type": "ExternalReference" + } + ], + "description": [ + { + "language": "en-us", + "text": "An example concept description for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-ConceptDescription für eine Test-Anwendung" + } + ] + }, + { + "modelType": "ConceptDescription", + "id": "https://acplt.org/Test_ConceptDescription_Mandatory", + "idShort": "Test_ConceptDescription_Mandatory" + }, + { + "modelType": "ConceptDescription", + "category": "PROPERTY", + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_ConceptDescription_Missing", + "idShort": "TestConceptDescription1", + "description": [ + { + "language": "en-us", + "text": "An example concept description for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-ConceptDescription für eine Test-Anwendung" + } + ] + }, + { + "modelType": "ConceptDescription", + "administration": { + "revision": "9", + "version": "0" + }, + "id": "http://acplt.org/DataSpecifciations/Example/Identification", + "idShort": "TestSpec_01", + "isCaseOf": [ + { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ReferenceElements/ConceptDescriptionX" + } + ], + "type": "ExternalReference" + } + ], + "embeddedDataSpecifications": [ + { + "dataSpecification": { + "keys": [ + { + "type": "GlobalReference", + "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" + } + ], + "type": "ExternalReference" + }, + "dataSpecificationContent": { + "modelType": "DataSpecificationIec61360", + "dataType": "REAL_MEASURE", + "sourceOfDefinition": "http://acplt.org/DataSpec/ExampleDef", + "symbol": "SU", + "unit": "SpaceUnit", + "unitId": { + "keys": [ { - "keys": [ - { - - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel" - } - ], - "type": "GlobalReference" - }, + "type": "GlobalReference", + "value": "http://acplt.org/Units/SpaceUnit" + } + ], + "type": "ExternalReference" + }, + "value": "TEST", + "valueFormat": "string", + "valueList": { + "valueReferencePairs": [ { + "value": "http://acplt.org/ValueId/ExampleValueId", + "valueId": { "keys": [ - { - - "type": "Submodel", - "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" - } + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId" + } ], - "type": "GlobalReference" + "type": "ExternalReference" + } }, { + "value": "http://acplt.org/ValueId/ExampleValueId2", + "valueId": { "keys": [ - { - - "type": "Submodel", - "value": "http://acplt.org/Submodels/Assets/TestAsset/Identification" - } + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId2" + } ], - "type": "GlobalReference" + "type": "ExternalReference" + } } + ] + }, + "definition": [ + { + "language": "de", + "text": "Dies ist eine Data Specification für Testzwecke" + }, + { + "language": "en-us", + "text": "This is a DataSpecification for testing purposes" + } ], - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_AssetAdministrationShell", - "idShort": "TestAssetAdministrationShell", - "description": [ - { - "language": "en-us", - "text": "An Example Asset Administration Shell for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-Verwaltungsschale für eine Test-Anwendung" - } - ] - + "preferredName": [ + { + "language": "de", + "text": "Test Specification" + }, + { + "language": "en-us", + "text": "TestSpecification" + } + ], + "shortName": [ + { + "language": "de", + "text": "Test Spec" + }, + { + "language": "en-us", + "text": "TestSpec" + } + ] + } + } + ] + } + ], + "submodels": [ + { + "modelType": "Submodel", + "kind": "Instance", + "semanticId": { + "keys": [ + { + "type": "Submodel", + "value": "http://acplt.org/SubmodelTemplates/AssetIdentification" + } + ], + "type": "ExternalReference" + }, + "administration": { + "revision": "9", + "version": "0" + }, + "id": "http://acplt.org/Submodels/Assets/TestAsset/Identification", + "idShort": "Identification", + "submodelElements": [ + { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "0173-1#02-AAO677#002" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ACPLT", + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ACPLT" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "qualifiers": [ + { + "type": "http://acplt.org/Qualifier/ExampleQualifier", + "value": "100", + "valueType": "xs:int" + }, + { + "type": "http://acplt.org/Qualifier/ExampleQualifier2", + "value": "50", + "valueType": "xs:int" + } + ], + "idShort": "ManufacturerName", + "displayName": [ + { + "language": "en-us", + "text": "Manufacturer Name" + } + ], + "description": [ + { + "language": "en-us", + "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." + }, + { + "language": "de", + "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" + } + ] }, { - "modelType": "AssetAdministrationShell", - "assetInformation": - { - "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset_Mandatory" - } - ], - "type": "GlobalReference" - } - }, - "submodels": [ + "modelType": "Property", + "category": "VARIABLE", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" + } + ], + "type": "ExternalReference" + }, + "supplementalSemanticIds": [ + { + "keys": [ + { + "type": "GlobalReference", + "value": "something_random_e14ad770" + } + ], + "type": "ExternalReference" + }, + { + "keys": [{ + "type": "GlobalReference", + "value": "something_random_bd061acd" + }], + "type": "ExternalReference" + } + + ], + "value": "978-8234-234-342", + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "978-8234-234-342" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "idShort": "InstanceId", + "description": [ + { + "language": "en-us", + "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." + }, + { + "language": "de", + "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" + } + ] + } + ], + "description": [ + { + "language": "en-us", + "text": "An example asset identification submodel for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-Identifikations-Submodel für eine Test-Anwendung" + } + ] + }, + { + "modelType": "Submodel", + "kind": "Instance", + "semanticId": { + "keys": [ + { + "type": "Submodel", + "value": "http://acplt.org/SubmodelTemplates/BillOfMaterial" + } + ], + "type": "ExternalReference" + }, + "administration": { + "version": "0" + }, + "id": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial", + "idShort": "BillOfMaterial", + "submodelElements": [ + { + "modelType": "Entity", + "entityType": "CoManagedEntity", + "statements": [ + { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ExampleValue2", + "category": "CONSTANT", + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValue2" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "idShort": "ExampleProperty2", + "description": [ { - "keys": [ - { - - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Mandatory" - } - ], - "type": "GlobalReference" + "language": "en-us", + "text": "Example Property object" }, { - "keys": [ - { - - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel2_Mandatory" - } - ], - "type": "GlobalReference" + "language": "de", + "text": "Beispiel Property Element" + } + ] + }, + { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ExampleValueId", + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "idShort": "ExampleProperty", + "category": "CONSTANT", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" } + ] + } + ], + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" + } ], - "id": "https://acplt.org/Test_AssetAdministrationShell_Mandatory", - "idShort": "Test_AssetAdministrationShell_Mandatory" + "type": "ExternalReference" + }, + "idShort": "ExampleEntity", + "description": [ + { + "language": "en-us", + "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." + }, + { + "language": "de", + "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" + } + ] }, { - "modelType": "AssetAdministrationShell", - "assetInformation": - { - "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset_Mandatory" - } - ], - "type": "GlobalReference" - } - }, - "id": "https://acplt.org/Test_AssetAdministrationShell2_Mandatory", - "idShort": "Test_AssetAdministrationShell2_Mandatory" + "modelType": "Entity", + "entityType": "SelfManagedEntity", + "globalAssetId": "https://acplt.org/Test_Asset2", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" + } + ], + "type": "ExternalReference" + }, + "idShort": "ExampleEntity2", + "description": [ + { + "language": "en-us", + "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." + }, + { + "language": "de", + "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" + } + ] + } + ], + "description": [ + { + "language": "en-us", + "text": "An example bill of material submodel for the test application" }, { - "modelType": "AssetAdministrationShell", - "assetInformation": - { - "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset_Missing" - } - ], - "type": "GlobalReference" - } - }, - "submodels": [ - { - "keys": [ - { - - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - } - ], - "type": "GlobalReference" - } + "language": "de", + "text": "Ein Beispiel-BillofMaterial-Submodel für eine Test-Anwendung" + } + ] + }, + { + "modelType": "Submodel", + "kind": "Instance", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelTemplates/ExampleSubmodel" + } + ], + "type": "ExternalReference" + }, + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_Submodel", + "idShort": "TestSubmodel", + "submodelElements": [ + { + "modelType": "RelationshipElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/RelationshipElements/ExampleRelationshipElement" + } ], - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_AssetAdministrationShell_Missing", - "idShort": "TestAssetAdministrationShell", - "description": [ + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" + }, + { + "type": "Entity", + "value": "ExampleEntity" + }, + { + "type": "Property", + "value": "ExampleProperty2" + } + ], + "type": "ModelReference" + }, + "description": [ + { + "language": "en-us", + "text": "Example RelationshipElement object" + }, + { + "language": "de", + "text": "Beispiel RelationshipElement Element" + } + ] + }, + { + "modelType": "AnnotatedRelationshipElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleAnnotatedRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" + }, + { + "type": "Entity", + "value": "ExampleEntity" + }, + { + "type": "Property", + "value": "ExampleProperty2" + } + ], + "type": "ModelReference" + }, + "annotations": [ + { + "modelType": "Property", + "value": "some example annotation", + "valueType": "xs:string", + "category": "PARAMETER", + "idShort": "ExampleProperty3" + } + ], + "description": [ + { + "language": "en-us", + "text": "Example AnnotatedRelationshipElement object" + }, + { + "language": "de", + "text": "Beispiel AnnotatedRelationshipElement Element" + } + ] + }, + { + "modelType": "Operation", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Operations/ExampleOperation" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleOperation", + "inoutputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "language": "en-us", - "text": "An Example Asset Administration Shell for the test application" - }, + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ExampleValueId", + "valueId": { + "keys": [ { - "language": "de", - "text": "Ein Beispiel-Verwaltungsschale für eine Test-Anwendung" + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId" } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty3", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } ] - - } - ], - "conceptDescriptions": [ - { - "modelType": "ConceptDescription", - "category": "PROPERTY", - "administration": + } + } + ], + "inputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_ConceptDescription", - "idShort": "TestConceptDescription", - "isCaseOf": [ - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/DataSpecifications/Conceptdescription/TestConceptDescription" - } - ], - "type": "GlobalReference" - } - ], - "description": [ + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ExampleValueId", + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty1", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } + ] + } + } + ], + "outputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "language": "en-us", - "text": "An example concept description for the test application" - }, + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ExampleValueId", + "valueId": { + "keys": [ { - "language": "de", - "text": "Ein Beispiel-ConceptDescription für eine Test-Anwendung" + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId" } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty2", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } ] - + } + } + ], + "description": [ + { + "language": "en-us", + "text": "Example Operation object" + }, + { + "language": "de", + "text": "Beispiel Operation Element" + } + ] }, { - "modelType": "ConceptDescription", - "category": "PROPERTY", - "id": "https://acplt.org/Test_ConceptDescription_Mandatory", - "idShort": "Test_ConceptDescription_Mandatory" + "modelType": "Capability", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Capabilities/ExampleCapability" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleCapability", + "description": [ + { + "language": "en-us", + "text": "Example Capability object" + }, + { + "language": "de", + "text": "Beispiel Capability Element" + } + ] }, { - "modelType": "ConceptDescription", - "category": "PROPERTY", - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_ConceptDescription_Missing", - "idShort": "TestConceptDescription1", - "description": [ - { - "language": "en-us", - "text": "An example concept description for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-ConceptDescription für eine Test-Anwendung" - } - ] - + "modelType": "BasicEventElement", + "observed": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Events/ExampleBasicEvent" + } + ], + "type": "ExternalReference" + }, + "direction": "input", + "state": "on", + "category": "PARAMETER", + "idShort": "ExampleBasicEvent", + "description": [ + { + "language": "en-us", + "text": "Example BasicEvent object" + }, + { + "language": "de", + "text": "Beispiel BasicEvent Element" + } + ] }, { - "modelType": "ConceptDescription", - "category": "PROPERTY", - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "http://acplt.org/DataSpecifciations/Example/Identification", - "idShort": "TestSpec_01", - "isCaseOf": [ + "modelType": "SubmodelElementList", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementListOrdered", + "orderRelevant": true, + "description": [ + { + "language": "en-us", + "text": "Example ExampleSubmodelElementListOrdered object" + }, + { + "language": "de", + "text": "Beispiel ExampleSubmodelElementListOrdered Element" + } + ], + "typeValueListElement": "SubmodelElement", + "value": [ + { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "http://acplt.org/ValueId/ExampleValueId", + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleValueId" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty", + "description": [ { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/ReferenceElements/ConceptDescriptionX" - } - ], - "type": "GlobalReference" + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" } - ], - "embeddedDataSpecifications": - [ + ] + }, + { + "modelType": "MultiLanguageProperty", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" + } + ], + "type": "ExternalReference" + }, + "valueId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ValueId/ExampleMultiLanguageValueId" + } + ], + "type": "ExternalReference" + }, + "category": "CONSTANT", + "idShort": "ExampleMultiLanguageProperty", + "value": [ { - "dataSpecification": { - "keys": [ - { - "type": "GlobalReference", - "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" - } - ], - "type": "GlobalReference" - }, - "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", - "dataType": "REAL_MEASURE", - "sourceOfDefinition": "http://acplt.org/DataSpec/ExampleDef", - "symbol": "SU", - "unit": "SpaceUnit", - "unitId": { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Units/SpaceUnit" - } - ], - "type": "GlobalReference" - }, - "value": "TEST", - "valueFormat": "string", - "valueList": { - "valueReferencePairs": [ - { - "value": "http://acplt.org/ValueId/ExampleValueId", - "valueId": { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId" - } - ], - "type": "GlobalReference" - } - }, - { - "value": "http://acplt.org/ValueId/ExampleValueId2", - "valueId": { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId2" - } - ], - "type": "GlobalReference" - } - } - ] - }, - "definition": [ - { - "language": "de", - "text": "Dies ist eine Data Specification für Testzwecke" - }, - { - "language": "en-us", - "text": "This is a DataSpecification for testing purposes" - } - ], - "levelType": "Max", - "preferredName": [ - { - "language": "de", - "text": "Test Specification" - }, - { - "language": "en-us", - "text": "TestSpecification" - } - ], - "shortName": [ - { - "language": "de", - "text": "Test Spec" - }, - { - "language": "en-us", - "text": "TestSpec" - } - ] - } + "language": "en-us", + "text": "Example value of a MultiLanguageProperty element" + }, + { + "language": "de", + "text": "Beispielswert für ein MultiLanguageProperty-Element" } - ] - } - ], - "submodels": [ - { - "modelType": "Submodel", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "Submodel", - "value": "http://acplt.org/SubmodelTemplates/AssetIdentification" - } - ], - "type": "GlobalReference" - }, - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "http://acplt.org/Submodels/Assets/TestAsset/Identification", - "idShort": "Identification", - "submodelElements": [ + ], + "description": [ { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "0173-1#02-AAO677#002" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ACPLT", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ACPLT" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" - }, - { - "type": "http://acplt.org/Qualifier/ExampleQualifier2", - "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" - } - ], - "idShort": "ManufacturerName", - "displayName": [ - { - "language": "en-us", - "text": "Manufacturer Name" - } - ], - "checksum": "someCheckSum", - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - + "language": "en-us", + "text": "Example MultiLanguageProperty object" }, { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" - } - ], - "type": "GlobalReference" - }, - "value": "978-8234-234-342", - "valueId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "978-8234-234-342" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "idShort": "InstanceId", - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - + "language": "de", + "text": "Beispiel MultiLanguageProperty Element" } - ], - "description": [ - { - "language": "en-us", - "text": "An example asset identification submodel for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-Identifikations-Submodel für eine Test-Anwendung" - } - ] - - }, - { - "modelType": "Submodel", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - - "type": "Submodel", - "value": "http://acplt.org/SubmodelTemplates/BillOfMaterial" - } - ], - "type": "GlobalReference" - }, - "administration": - { - "version": "0.9" - }, - "id": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial", - "idShort": "BillOfMaterial", - "submodelElements": [ + ] + }, + { + "modelType": "Range", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Ranges/ExampleRange" + } + ], + "type": "ExternalReference" + }, + "max": "100", + "min": "0", + "valueType": "xs:int", + "category": "PARAMETER", + "idShort": "ExampleRange", + "description": [ { - "modelType": "Entity", - "kind": "Instance", - "entityType": "CoManagedEntity", - "statements": [ - { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ExampleValue2", - "valueId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValue2" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty2", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - }, - { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ExampleValueId", - "valueId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - ], - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" - } - ], - "type": "GlobalReference" - }, - "idShort": "ExampleEntity", - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - + "language": "en-us", + "text": "Example Range object" }, { - "modelType": "Entity", - "kind": "Instance", - "entityType": "SelfManagedEntity", - "globalAssetId": - { - "keys": [ - { - - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset2" - } - ], - "type": "GlobalReference" - }, - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" - } - ], - "type": "GlobalReference" - }, - "idShort": "ExampleEntity2", - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - + "language": "de", + "text": "Beispiel Range Element" } - ], - "description": [ - { - "language": "en-us", - "text": "An example bill of material submodel for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-BillofMaterial-Submodel für eine Test-Anwendung" - } - ] - + ] + } + ] }, { - "modelType": "Submodel", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelTemplates/ExampleSubmodel" - } - ], - "type": "GlobalReference" - }, - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_Submodel", - "idShort": "TestSubmodel", - "submodelElements": [ - { - "modelType": "RelationshipElement", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/RelationshipElements/ExampleRelationshipElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" - }, - { - "type": "Entity", - "value": "ExampleEntity" - }, - { - "type": "Property", - "value": "ExampleProperty2" - } - ], - "type": "ModelReference" - }, - "description": [ - { - "language": "en-us", - "text": "Example RelationshipElement object" - }, - { - "language": "de", - "text": "Beispiel RelationshipElement Element" - } - ] - - }, + "modelType": "SubmodelElementCollection", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementCollection", + "description": [ + { + "language": "en-us", + "text": "Example SubmodelElementCollection object" + }, + { + "language": "de", + "text": "Beispiel SubmodelElementCollection Element" + } + ], + "value": [ + { + "modelType": "Blob", + "contentType": "application/pdf", + "value": "AQIDBAU=", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Blobs/ExampleBlob" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleBlob", + "description": [ { - "modelType": "AnnotatedRelationshipElement", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleAnnotatedRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" - }, - { - "type": "Entity", - "value": "ExampleEntity" - }, - { - "type": "Property", - "value": "ExampleProperty2" - } - ], - "type": "ModelReference" - }, - "annotations": [ - { - "modelType": "Property", - "kind": "Instance", - "value": "some example annotation", - "valueType": "xs:string", - "category": "PARAMETER", - "idShort": "ExampleProperty3" - } - ], - "description": [ - { - "language": "en-us", - "text": "Example AnnotatedRelationshipElement object" - }, - { - "language": "de", - "text": "Beispiel AnnotatedRelationshipElement Element" - } - ] - + "language": "en-us", + "text": "Example Blob object" }, { - "modelType": "Operation", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Operations/ExampleOperation" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleOperation", - "inoutputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ExampleValueId", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty3", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "inputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ExampleValueId", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty1", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "outputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ExampleValueId", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty2", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "description": [ - { - "language": "en-us", - "text": "Example Operation object" - }, - { - "language": "de", - "text": "Beispiel Operation Element" - } - ] - - }, + "language": "de", + "text": "Beispiel Blob Element" + } + ] + }, + { + "modelType": "File", + "contentType": "application/pdf", + "value": "file:///TestFile.pdf", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Files/ExampleFile" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleFile", + "description": [ { - "modelType": "Capability", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Capabilities/ExampleCapability" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleCapability", - "description": [ - { - "language": "en-us", - "text": "Example Capability object" - }, - { - "language": "de", - "text": "Beispiel Capability Element" - } - ] - + "language": "en-us", + "text": "Example File object" }, { - "modelType": "BasicEventElement", - "kind": "Instance", - "observed": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Events/ExampleBasicEvent" - } - ], - "type": "GlobalReference" - }, - "direction": "input", - "state": "on", - "category": "PARAMETER", - "idShort": "ExampleBasicEvent", - "description": [ - { - "language": "en-us", - "text": "Example BasicEvent object" - }, - { - "language": "de", - "text": "Beispiel BasicEvent Element" - } - ], - "direction": "input", - "state": "on" - }, + "language": "de", + "text": "Beispiel File Element" + } + ] + }, + { + "modelType": "ReferenceElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ReferenceElements/ExampleReferenceElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleReferenceElement", + "value": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "description": [ { - "modelType": "SubmodelElementList", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementListOrdered", - "orderRelevant": true, - "description": [ - { - "language": "en-us", - "text": "Example ExampleSubmodelElementListOrdered object" - }, - { - "language": "de", - "text": "Beispiel ExampleSubmodelElementListOrdered Element" - } - ], - "typeValueListElement": "SubmodelElement", - "value": [ - { - "modelType": "Property", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ExampleValueId", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleValueId" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - }, - { - "modelType": "MultiLanguageProperty", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" - } - ], - "type": "GlobalReference" - }, - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ExampleMultiLanguageValueId" - } - ], - "type": "GlobalReference" - }, - "category": "CONSTANT", - "idShort": "ExampleMultiLanguageProperty", - "value": [ - { - "language": "en-us", - "text": "Example value of a MultiLanguageProperty element" - }, - { - "language": "de", - "text": "Beispielswert für ein MultiLanguageProperty-Element" - } - ], - "description": [ - { - "language": "en-us", - "text": "Example MultiLanguageProperty object" - }, - { - "language": "de", - "text": "Beispiel MultiLanguageProperty Element" - } - ] - - }, - { - "modelType": "Range", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Ranges/ExampleRange" - } - ], - "type": "GlobalReference" - }, - "max": "100", - "min": "0", - "valueType": "xs:int", - "category": "PARAMETER", - "idShort": "ExampleRange", - "description": [ - { - "language": "en-us", - "text": "Example Range object" - }, - { - "language": "de", - "text": "Beispiel Range Element" - } - ] - - } - ] + "language": "en-us", + "text": "Example Reference Element object" }, { - "modelType": "SubmodelElementCollection", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementCollection", - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementCollection object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementCollection Element" - } - ], - "value": [ - { - "modelType": "Blob", - "kind": "Instance", - - "contentType": "application/pdf", - "value": "AQIDBAU=", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Blobs/ExampleBlob" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleBlob", - "description": [ - { - "language": "en-us", - "text": "Example Blob object" - }, - { - "language": "de", - "text": "Beispiel Blob Element" - } - ] - - }, - { - "modelType": "File", - "kind": "Instance", - - "contentType": "application/pdf", - "value": "file:///TestFile.pdf", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Files/ExampleFile" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleFile", - "description": [ - { - "language": "en-us", - "text": "Example File object" - }, - { - "language": "de", - "text": "Beispiel File Element" - } - ] - - }, - { - "modelType": "ReferenceElement", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ReferenceElements/ExampleReferenceElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleReferenceElement", - "value": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "description": [ - { - "language": "en-us", - "text": "Example Reference Element object" - }, - { - "language": "de", - "text": "Beispiel Reference Element Element" - } - ] - - } - ] + "language": "de", + "text": "Beispiel Reference Element Element" } + ] + } + ] + } + ], + "description": [ + { + "language": "en-us", + "text": "An example submodel for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-Teilmodell für eine Test-Anwendung" + } + ] + }, + { + "modelType": "Submodel", + "kind": "Template", + "id": "https://acplt.org/Test_Submodel_Mandatory", + "idShort": "Test_Submodel_Mandatory", + "submodelElements": [ + { + "modelType": "RelationshipElement", + "idShort": "ExampleRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Mandatory" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListUnordered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Mandatory" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListUnordered" + }, + { + "type": "MultiLanguageProperty", + "value": "ExampleMultiLanguageProperty" + } + ], + "type": "ModelReference" + } + }, + { + "modelType": "AnnotatedRelationshipElement", + "idShort": "ExampleAnnotatedRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Mandatory" + }, + { + "type": "SubmodelElementCollection", + "value": "ExampleSubmodelElementCollection" + }, + { + "type": "Blob", + "value": "ExampleBlob" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Mandatory" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListUnordered" + }, + { + "type": "MultiLanguageProperty", + "value": "ExampleMultiLanguageProperty" + } + ], + "type": "ModelReference" + } + }, + { + "modelType": "Operation", + "idShort": "ExampleOperation" + }, + { + "modelType": "Capability", + "idShort": "ExampleCapability" + }, + { + "modelType": "BasicEventElement", + "observed": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Mandatory" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListUnordered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "idShort": "ExampleBasicEvent", + "direction": "output", + "state": "off" + }, + { + "modelType": "SubmodelElementList", + "idShort": "ExampleSubmodelElementListUnordered", + "orderRelevant": false, + "typeValueListElement": "SubmodelElement", + "value": [ + { + "modelType": "Property", + "valueType": "xs:string", + "idShort": "ExampleProperty" + }, + { + "modelType": "MultiLanguageProperty", + "idShort": "ExampleMultiLanguageProperty" + }, + { + "modelType": "Range", + "valueType": "xs:int", + "idShort": "ExampleRange" + } + ] + }, + { + "modelType": "SubmodelElementCollection", + "idShort": "ExampleSubmodelElementCollection", + "value": [ + { + "modelType": "Blob", + "contentType": "application/pdf", + "idShort": "ExampleBlob" + }, + { + "modelType": "File", + "contentType": "application/pdf", + "idShort": "ExampleFile" + }, + { + "modelType": "ReferenceElement", + "idShort": "ExampleReferenceElement" + } + ] + }, + { + "modelType": "SubmodelElementCollection", + "idShort": "ExampleSubmodelElementCollection2" + } + ] + }, + { + "modelType": "Submodel", + "kind": "Instance", + "id": "https://acplt.org/Test_Submodel2_Mandatory", + "idShort": "Test_Submodel2_Mandatory" + }, + { + "modelType": "Submodel", + "kind": "Instance", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelTemplates/ExampleSubmodel" + } + ], + "type": "ExternalReference" + }, + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_Submodel_Missing", + "idShort": "TestSubmodelMissing", + "submodelElements": [ + { + "modelType": "RelationshipElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/RelationshipElements/ExampleRelationshipElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "MultiLanguageProperty", + "value": "ExampleMultiLanguageProperty" + } + ], + "type": "ModelReference" + }, + "description": [ + { + "language": "en-us", + "text": "Example RelationshipElement object" + }, + { + "language": "de", + "text": "Beispiel RelationshipElement Element" + } + ] + }, + { + "modelType": "AnnotatedRelationshipElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleAnnotatedRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } ], - "description": [ + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "MultiLanguageProperty", + "value": "ExampleMultiLanguageProperty" + } + ], + "type": "ModelReference" + }, + "annotations": [ + { + "modelType": "Property", + "category": "PARAMETER", + "value": "some example annotation", + "valueType": "xs:string", + "idShort": "ExampleProperty" + } + ], + "description": [ + { + "language": "en-us", + "text": "Example AnnotatedRelationshipElement object" + }, + { + "language": "de", + "text": "Beispiel AnnotatedRelationshipElement Element" + } + ] + }, + { + "modelType": "Operation", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Operations/ExampleOperation" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleOperation", + "inoutputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "language": "en-us", - "text": "An example submodel for the test application" - }, + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "exampleValue", + "valueType": "xs:string", + "qualifiers": [ + { + "type": "http://acplt.org/Qualifier/ExampleQualifier", + "valueType": "xs:string" + } + ], + "category": "CONSTANT", + "idShort": "ExampleProperty3", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } + ] + } + } + ], + "inputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "language": "de", - "text": "Ein Beispiel-Teilmodell für eine Test-Anwendung" + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" } + ], + "type": "ExternalReference" + }, + "value": "exampleValue", + "valueType": "xs:string", + "qualifiers": [ + { + "type": "http://acplt.org/Qualifier/ExampleQualifier", + "valueType": "xs:string" + } + ], + "category": "CONSTANT", + "idShort": "ExampleProperty1", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } ] - + } + } + ], + "outputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "exampleValue", + "valueType": "xs:string", + "qualifiers": [ + { + "type": "http://acplt.org/Qualifier/ExampleQualifier", + "valueType": "xs:string" + } + ], + "category": "CONSTANT", + "idShort": "ExampleProperty2", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } + ] + } + } + ], + "description": [ + { + "language": "en-us", + "text": "Example Operation object" + }, + { + "language": "de", + "text": "Beispiel Operation Element" + } + ] + }, + { + "modelType": "Capability", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Capabilities/ExampleCapability" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleCapability", + "description": [ + { + "language": "en-us", + "text": "Example Capability object" + }, + { + "language": "de", + "text": "Beispiel Capability Element" + } + ] + }, + { + "modelType": "BasicEventElement", + "observed": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + }, + { + "type": "SubmodelElementList", + "value": "ExampleSubmodelElementListOrdered" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Events/ExampleBasicEvent" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleBasicEvent", + "direction": "input", + "state": "on", + "description": [ + { + "language": "en-us", + "text": "Example BasicEvent object" + }, + { + "language": "de", + "text": "Beispiel BasicEvent Element" + } + ] }, { - "modelType": "Submodel", - "kind": "Template", - "id": "https://acplt.org/Test_Submodel_Mandatory", - "idShort": "Test_Submodel_Mandatory", - "submodelElements": [ + "modelType": "SubmodelElementList", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementListOrdered", + "orderRelevant": true, + "description": [ + { + "language": "en-us", + "text": "Example SubmodelElementListOrdered object" + }, + { + "language": "de", + "text": "Beispiel SubmodelElementListOrdered Element" + } + ], + "typeValueListElement": "SubmodelElement", + "value": [ + { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "value": "exampleValue", + "valueType": "xs:string", + "qualifiers": [ { - "modelType": "RelationshipElement", - "kind": "Instance", - "idShort": "ExampleRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Mandatory" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListUnordered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Mandatory" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListUnordered" - }, - { - "type": "MultiLanguageProperty", - "value": "ExampleMultiLanguageProperty" - } - ], - "type": "ModelReference" - } - }, + "type": "http://acplt.org/Qualifier/ExampleQualifier", + "valueType": "xs:string" + } + ], + "category": "CONSTANT", + "idShort": "ExampleProperty", + "description": [ { - "modelType": "AnnotatedRelationshipElement", - "kind": "Instance", - "idShort": "ExampleAnnotatedRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Mandatory" - }, - { - "type": "SubmodelElementCollection", - "value": "ExampleSubmodelElementCollection" - }, - { - "type": "Blob", - "value": "ExampleBlob" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Mandatory" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListUnordered" - }, - { - "type": "MultiLanguageProperty", - "value": "ExampleMultiLanguageProperty" - } - ], - "type": "ModelReference" - } + "language": "en-us", + "text": "Example Property object" }, { - "modelType": "Operation", - "kind": "Template", - "idShort": "ExampleOperation" - }, + "language": "de", + "text": "Beispiel Property Element" + } + ] + }, + { + "modelType": "MultiLanguageProperty", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" + } + ], + "type": "ExternalReference" + }, + "category": "CONSTANT", + "idShort": "ExampleMultiLanguageProperty", + "value": [ { - "modelType": "Capability", - "kind": "Instance", - - "idShort": "ExampleCapability" + "language": "en-us", + "text": "Example value of a MultiLanguageProperty element" }, { - "modelType": "BasicEventElement", - "kind": "Instance", - - "observed": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Mandatory" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListUnordered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "idShort": "ExampleBasicEvent", - "direction": "output", - "state": "off" - }, + "language": "de", + "text": "Beispielswert für ein MultiLanguageProperty-Element" + } + ], + "description": [ { - "modelType": "SubmodelElementList", - "kind": "Instance", - - "idShort": "ExampleSubmodelElementListUnordered", - "orderRelevant": false, - "typeValueListElement": "SubmodelElement", - "value": [ - { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "valueType": "xs:string", - "idShort": "ExampleProperty" - }, - { - "modelType": "MultiLanguageProperty", - "kind": "Instance", - "category": "VARIABLE", - "idShort": "ExampleMultiLanguageProperty" - }, - { - "modelType": "Range", - "kind": "Instance", - "category": "VARIABLE", - "valueType": "xs:int", - "idShort": "ExampleRange" - } - ] + "language": "en-us", + "text": "Example MultiLanguageProperty object" }, { - "modelType": "SubmodelElementCollection", - "kind": "Instance", - "idShort": "ExampleSubmodelElementCollection", - "value": [ - { - "modelType": "Blob", - "kind": "Instance", - "category": "VARIABLE", - "contentType": "application/pdf", - "idShort": "ExampleBlob" - }, - { - "modelType": "File", - "kind": "Instance", - "category": "VARIABLE", - "contentType": "application/pdf", - "idShort": "ExampleFile" - }, - { - "modelType": "ReferenceElement", - "kind": "Instance", - "category": "VARIABLE", - "idShort": "ExampleReferenceElement" - } - ] + "language": "de", + "text": "Beispiel MultiLanguageProperty Element" + } + ] + }, + { + "modelType": "Range", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Ranges/ExampleRange" + } + ], + "type": "ExternalReference" + }, + "max": "100", + "min": "0", + "valueType": "xs:int", + "category": "PARAMETER", + "idShort": "ExampleRange", + "description": [ + { + "language": "en-us", + "text": "Example Range object" }, { - "modelType": "SubmodelElementCollection", - "kind": "Instance", - "idShort": "ExampleSubmodelElementCollection2" + "language": "de", + "text": "Beispiel Range Element" } - ] + ] + } + ] }, { - "modelType": "Submodel", - "kind": "Instance", - "id": "https://acplt.org/Test_Submodel2_Mandatory", - "idShort": "Test_Submodel2_Mandatory" - }, - { - "modelType": "Submodel", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelTemplates/ExampleSubmodel" - } - ], - "type": "GlobalReference" - }, - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_Submodel_Missing", - "idShort": "TestSubmodelMissing", - "submodelElements": [ - { - "modelType": "RelationshipElement", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/RelationshipElements/ExampleRelationshipElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "MultiLanguageProperty", - "value": "ExampleMultiLanguageProperty" - } - ], - "type": "ModelReference" - }, - "description": [ - { - "language": "en-us", - "text": "Example RelationshipElement object" - }, - { - "language": "de", - "text": "Beispiel RelationshipElement Element" - } - ] - - }, + "modelType": "SubmodelElementCollection", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementCollection", + "description": [ + { + "language": "en-us", + "text": "Example SubmodelElementCollection object" + }, + { + "language": "de", + "text": "Beispiel SubmodelElementCollection Element" + } + ], + "value": [ + { + "modelType": "Blob", + "contentType": "application/pdf", + "value": "AQIDBAU=", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Blobs/ExampleBlob" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleBlob", + "description": [ { - "modelType": "AnnotatedRelationshipElement", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleAnnotatedRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "MultiLanguageProperty", - "value": "ExampleMultiLanguageProperty" - } - ], - "type": "ModelReference" - }, - "annotations": [ - { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "value": "some example annotation", - "valueType": "xs:string", - "category": "PARAMETER", - "idShort": "ExampleProperty" - } - ], - "description": [ - { - "language": "en-us", - "text": "Example AnnotatedRelationshipElement object" - }, - { - "language": "de", - "text": "Beispiel AnnotatedRelationshipElement Element" - } - ] - + "language": "en-us", + "text": "Example Blob object" }, { - "modelType": "Operation", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Operations/ExampleOperation" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleOperation", - "inoutputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "exampleValue", - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "valueType": "xs:string", - "kind": "ConceptQualifier" - } - ], - "category": "CONSTANT", - "idShort": "ExampleProperty3", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "inputVariables": [ - { - "value": { - "modelType": "Property", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "exampleValue", - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "valueType": "xs:string", - "kind": "ConceptQualifier" - } - ], - "category": "CONSTANT", - "idShort": "ExampleProperty1", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - } - } - ], - "outputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "exampleValue", - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "valueType": "xs:string", - "kind": "ConceptQualifier" - } - ], - "category": "CONSTANT", - "idShort": "ExampleProperty2", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "description": [ - { - "language": "en-us", - "text": "Example Operation object" - }, - { - "language": "de", - "text": "Beispiel Operation Element" - } - ] - - }, + "language": "de", + "text": "Beispiel Blob Element" + } + ] + }, + { + "modelType": "File", + "contentType": "application/pdf", + "value": "file:///TestFile.pdf", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Files/ExampleFile" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleFile", + "description": [ { - "modelType": "Capability", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Capabilities/ExampleCapability" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleCapability", - "description": [ - { - "language": "en-us", - "text": "Example Capability object" - }, - { - "language": "de", - "text": "Beispiel Capability Element" - } - ] - + "language": "en-us", + "text": "Example File object" }, { - "modelType": "BasicEventElement", - "kind": "Instance", - - "observed": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - }, - { - "type": "SubmodelElementList", - "value": "ExampleSubmodelElementListOrdered" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Events/ExampleBasicEvent" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleBasicEvent", - "direction": "input", - "state": "on", - "description": [ - { - "language": "en-us", - "text": "Example BasicEvent object" - }, - { - "language": "de", - "text": "Beispiel BasicEvent Element" - } - ], - "direction": "input", - "state": "on" - }, + "language": "de", + "text": "Beispiel File Element" + } + ] + }, + { + "modelType": "ReferenceElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ReferenceElements/ExampleReferenceElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleReferenceElement", + "value": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Missing" + }, + { + "type": "SubmodelElementCollection", + "value": "ExampleSubmodelElementCollection" + }, + { + "type": "File", + "value": "ExampleFile" + } + ], + "type": "ModelReference" + }, + "description": [ { - "kind": "Instance", - - "modelType": "SubmodelElementList", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementListOrdered", - "orderRelevant": true, - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementListOrdered object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementListOrdered Element" - } - ], - "typeValueListElement": "SubmodelElement", - "value": [ - { - "modelType": "Property", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "value": "exampleValue", - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "valueType": "xs:string", - "kind": "ConceptQualifier" - } - ], - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - }, - { - "modelType": "MultiLanguageProperty", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" - } - ], - "type": "GlobalReference" - }, - "category": "CONSTANT", - "idShort": "ExampleMultiLanguageProperty", - "value": [ - { - "language": "en-us", - "text": "Example value of a MultiLanguageProperty element" - }, - { - "language": "de", - "text": "Beispielswert für ein MultiLanguageProperty-Element" - } - ], - "description": [ - { - "language": "en-us", - "text": "Example MultiLanguageProperty object" - }, - { - "language": "de", - "text": "Beispiel MultiLanguageProperty Element" - } - ] - }, - { - "modelType": "Range", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Ranges/ExampleRange" - } - ], - "type": "GlobalReference" - }, - "max": "100", - "min": "0", - "valueType": "xs:int", - "category": "PARAMETER", - "idShort": "ExampleRange", - "description": [ - { - "language": "en-us", - "text": "Example Range object" - }, - { - "language": "de", - "text": "Beispiel Range Element" - } - ] - - } - ] + "language": "en-us", + "text": "Example Reference Element object" }, { - "modelType": "SubmodelElementCollection", - "kind": "Instance", - - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementCollection", - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementCollection object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementCollection Element" - } - ], - "value": [ - { - "modelType": "Blob", - "kind": "Instance", - - "contentType": "application/pdf", - "value": "AQIDBAU=", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Blobs/ExampleBlob" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleBlob", - "description": [ - { - "language": "en-us", - "text": "Example Blob object" - }, - { - "language": "de", - "text": "Beispiel Blob Element" - } - ] - - }, - { - "modelType": "File", - "kind": "Instance", - "contentType": "application/pdf", - "value": "file:///TestFile.pdf", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Files/ExampleFile" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleFile", - "description": [ - { - "language": "en-us", - "text": "Example File object" - }, - { - "language": "de", - "text": "Beispiel File Element" - } - ] - - }, - { - "modelType": "ReferenceElement", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ReferenceElements/ExampleReferenceElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleReferenceElement", - "value": { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Missing" - }, - { - "type": "SubmodelElementCollection", - "value": "ExampleSubmodelElementCollection" - }, - { - "type": "File", - "value": "ExampleFile" - } - ], - "type": "ModelReference" - }, - "description": [ - { - "language": "en-us", - "text": "Example Reference Element object" - }, - { - "language": "de", - "text": "Beispiel Reference Element Element" - } - ] - - } - ] + "language": "de", + "text": "Beispiel Reference Element Element" } + ] + } + ] + } + ], + "description": [ + { + "language": "en-us", + "text": "An example submodel for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-Teilmodell für eine Test-Anwendung" + } + ] + }, + { + "modelType": "Submodel", + "kind": "Template", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelTemplates/ExampleSubmodel" + } + ], + "type": "ExternalReference" + }, + "administration": { + "revision": "9", + "version": "0" + }, + "id": "https://acplt.org/Test_Submodel_Template", + "idShort": "TestSubmodelTemplate", + "submodelElements": [ + { + "modelType": "RelationshipElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/RelationshipElements/ExampleRelationshipElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Template" + }, + { + "type": "Operation", + "value": "ExampleOperation" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Template" + }, + { + "type": "Operation", + "value": "ExampleOperation" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "description": [ + { + "language": "en-us", + "text": "Example RelationshipElement object" + }, + { + "language": "de", + "text": "Beispiel RelationshipElement Element" + } + ] + }, + { + "modelType": "AnnotatedRelationshipElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement" + } ], - "description": [ + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleAnnotatedRelationshipElement", + "first": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Template" + }, + { + "type": "Operation", + "value": "ExampleOperation" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "second": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Template" + }, + { + "type": "Operation", + "value": "ExampleOperation" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "description": [ + { + "language": "en-us", + "text": "Example AnnotatedRelationshipElement object" + }, + { + "language": "de", + "text": "Beispiel AnnotatedRelationshipElement Element" + } + ] + }, + { + "modelType": "Operation", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Operations/ExampleOperation" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleOperation", + "inoutputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "language": "en-us", - "text": "An example submodel for the test application" - }, + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } + ] + } + } + ], + "inputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ { - "language": "de", - "text": "Ein Beispiel-Teilmodell für eine Test-Anwendung" + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } ] - + } + } + ], + "outputVariables": [ + { + "value": { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty", + "description": [ + { + "language": "en-us", + "text": "Example Property object" + }, + { + "language": "de", + "text": "Beispiel Property Element" + } + ] + } + } + ], + "description": [ + { + "language": "en-us", + "text": "Example Operation object" + }, + { + "language": "de", + "text": "Beispiel Operation Element" + } + ] }, { - "modelType": "Submodel", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelTemplates/ExampleSubmodel" - } - ], - "type": "GlobalReference" - }, - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "https://acplt.org/Test_Submodel_Template", - "idShort": "TestSubmodelTemplate", - "submodelElements": [ + "modelType": "Capability", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Capabilities/ExampleCapability" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleCapability", + "description": [ + { + "language": "en-us", + "text": "Example Capability object" + }, + { + "language": "de", + "text": "Beispiel Capability Element" + } + ] + }, + { + "modelType": "BasicEventElement", + "observed": { + "keys": [ + { + "type": "Submodel", + "value": "https://acplt.org/Test_Submodel_Template" + }, + { + "type": "Operation", + "value": "ExampleOperation" + }, + { + "type": "Property", + "value": "ExampleProperty" + } + ], + "type": "ModelReference" + }, + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Events/ExampleBasicEvent" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleBasicEvent", + "direction": "output", + "state": "off", + "description": [ + { + "language": "en-us", + "text": "Example BasicEvent object" + }, + { + "language": "de", + "text": "Beispiel BasicEvent Element" + } + ] + }, + { + "modelType": "SubmodelElementList", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementListOrdered", + "orderRelevant": true, + "description": [ + { + "language": "en-us", + "text": "Example SubmodelElementListOrdered object" + }, + { + "language": "de", + "text": "Beispiel SubmodelElementListOrdered Element" + } + ], + "typeValueListElement": "SubmodelElement", + "value": [ + { + "modelType": "Property", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Properties/ExampleProperty" + } + ], + "type": "ExternalReference" + }, + "valueType": "xs:string", + "category": "CONSTANT", + "idShort": "ExampleProperty", + "description": [ { - "modelType": "RelationshipElement", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/RelationshipElements/ExampleRelationshipElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Template" - }, - { - "type": "Operation", - "value": "ExampleOperation" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Template" - }, - { - "type": "Operation", - "value": "ExampleOperation" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "description": [ - { - "language": "en-us", - "text": "Example RelationshipElement object" - }, - { - "language": "de", - "text": "Beispiel RelationshipElement Element" - } - ] - + "language": "en-us", + "text": "Example Property object" }, { - "modelType": "AnnotatedRelationshipElement", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/RelationshipElements/ExampleAnnotatedRelationshipElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleAnnotatedRelationshipElement", - "first": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Template" - }, - { - "type": "Operation", - "value": "ExampleOperation" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "second": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Template" - }, - { - "type": "Operation", - "value": "ExampleOperation" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "description": [ - { - "language": "en-us", - "text": "Example AnnotatedRelationshipElement object" - }, - { - "language": "de", - "text": "Beispiel AnnotatedRelationshipElement Element" - } - ] + "language": "de", + "text": "Beispiel Property Element" + } + ] + }, + { + "modelType": "MultiLanguageProperty", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" + } + ], + "type": "ExternalReference" + }, + "category": "CONSTANT", + "idShort": "ExampleMultiLanguageProperty", + "description": [ + { + "language": "en-us", + "text": "Example MultiLanguageProperty object" }, { - "modelType": "Operation", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Operations/ExampleOperation" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleOperation", - "inoutputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "inputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "outputVariables": [ - { - "value": - { - "modelType": "Property", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - } - } - ], - "description": [ - { - "language": "en-us", - "text": "Example Operation object" - }, - { - "language": "de", - "text": "Beispiel Operation Element" - } - ] - + "language": "de", + "text": "Beispiel MultiLanguageProperty Element" + } + ] + }, + { + "modelType": "Range", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Ranges/ExampleRange" + } + ], + "type": "ExternalReference" + }, + "max": "100", + "valueType": "xs:int", + "category": "PARAMETER", + "idShort": "ExampleRange", + "description": [ + { + "language": "en-us", + "text": "Example Range object" }, { - "modelType": "Capability", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Capabilities/ExampleCapability" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleCapability", - "description": [ - { - "language": "en-us", - "text": "Example Capability object" - }, - { - "language": "de", - "text": "Beispiel Capability Element" - } - ] - + "language": "de", + "text": "Beispiel Range Element" + } + ] + }, + { + "modelType": "Range", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Ranges/ExampleRange" + } + ], + "type": "ExternalReference" + }, + "min": "0", + "valueType": "xs:int", + "category": "PARAMETER", + "idShort": "ExampleRange2", + "description": [ + { + "language": "en-us", + "text": "Example Range object" }, { - "modelType": "BasicEventElement", - "observed": - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel_Template" - }, - { - "type": "Operation", - "value": "ExampleOperation" - }, - { - "type": "Property", - "value": "ExampleProperty" - } - ], - "type": "ModelReference" - }, - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Events/ExampleBasicEvent" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleBasicEvent", - "direction": "output", - "state": "off", - "description": [ - { - "language": "en-us", - "text": "Example BasicEvent object" - }, - { - "language": "de", - "text": "Beispiel BasicEvent Element" - } - ], - "direction": "output", - "state": "off" + "language": "de", + "text": "Beispiel Range Element" + } + ] + } + ] + }, + { + "modelType": "SubmodelElementCollection", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementCollection", + "description": [ + { + "language": "en-us", + "text": "Example SubmodelElementCollection object" + }, + { + "language": "de", + "text": "Beispiel SubmodelElementCollection Element" + } + ], + "value": [ + { + "modelType": "Blob", + "contentType": "application/pdf", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Blobs/ExampleBlob" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleBlob", + "description": [ + { + "language": "en-us", + "text": "Example Blob object" }, { - "modelType": "SubmodelElementList", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementListOrdered", - "orderRelevant": true, - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementListOrdered object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementListOrdered Element" - } - ], - "typeValueListElement": "SubmodelElement", - "value": [ - { - "modelType": "Property", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "category": "CONSTANT", - "idShort": "ExampleProperty", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ] - - }, - { - "modelType": "MultiLanguageProperty", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" - } - ], - "type": "GlobalReference" - }, - "category": "CONSTANT", - "idShort": "ExampleMultiLanguageProperty", - "description": [ - { - "language": "en-us", - "text": "Example MultiLanguageProperty object" - }, - { - "language": "de", - "text": "Beispiel MultiLanguageProperty Element" - } - ] - - }, - { - "modelType": "Range", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Ranges/ExampleRange" - } - ], - "type": "GlobalReference" - }, - "max": "100", - "valueType": "xs:int", - "category": "PARAMETER", - "idShort": "ExampleRange", - "description": [ - { - "language": "en-us", - "text": "Example Range object" - }, - { - "language": "de", - "text": "Beispiel Range Element" - } - ] - - }, - { - "modelType": "Range", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Ranges/ExampleRange" - } - ], - "type": "GlobalReference" - }, - "min": "0", - "valueType": "xs:int", - "category": "PARAMETER", - "idShort": "ExampleRange2", - "description": [ - { - "language": "en-us", - "text": "Example Range object" - }, - { - "language": "de", - "text": "Beispiel Range Element" - } - ] - - } - ] + "language": "de", + "text": "Beispiel Blob Element" + } + ] + }, + { + "modelType": "File", + "contentType": "application/pdf", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/Files/ExampleFile" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleFile", + "description": [ + { + "language": "en-us", + "text": "Example File object" }, { - "modelType": "SubmodelElementCollection", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementCollection", - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementCollection object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementCollection Element" - } - ], - "value": [ - { - "modelType": "Blob", - "contentType": "application/pdf", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Blobs/ExampleBlob" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleBlob", - "description": [ - { - "language": "en-us", - "text": "Example Blob object" - }, - { - "language": "de", - "text": "Beispiel Blob Element" - } - ] - - }, - { - "modelType": "File", - "contentType": "application/pdf", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Files/ExampleFile" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleFile", - "description": [ - { - "language": "en-us", - "text": "Example File object" - }, - { - "language": "de", - "text": "Beispiel File Element" - } - ] - - }, - { - "modelType": "ReferenceElement", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ReferenceElements/ExampleReferenceElement" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleReferenceElement", - "description": [ - { - "language": "en-us", - "text": "Example Reference Element object" - }, - { - "language": "de", - "text": "Beispiel Reference Element Element" - } - ] - - } - ] + "language": "de", + "text": "Beispiel File Element" + } + ] + }, + { + "modelType": "ReferenceElement", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/ReferenceElements/ExampleReferenceElement" + } + ], + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleReferenceElement", + "description": [ + { + "language": "en-us", + "text": "Example Reference Element object" }, { - "modelType": "SubmodelElementCollection", - "kind": "Template", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" - } - ], - "type": "GlobalReference" - }, - "category": "PARAMETER", - "idShort": "ExampleSubmodelElementCollection2", - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementCollection object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementCollection Element" - } - ] - + "language": "de", + "text": "Beispiel Reference Element Element" } + ] + } + ] + }, + { + "modelType": "SubmodelElementCollection", + "semanticId": { + "keys": [ + { + "type": "GlobalReference", + "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" + } ], - "description": [ - { - "language": "en-us", - "text": "An example submodel for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-Teilmodell für eine Test-Anwendung" - } - ] - + "type": "ExternalReference" + }, + "category": "PARAMETER", + "idShort": "ExampleSubmodelElementCollection2", + "description": [ + { + "language": "en-us", + "text": "Example SubmodelElementCollection object" + }, + { + "language": "de", + "text": "Beispiel SubmodelElementCollection Element" + } + ] + } + ], + "description": [ + { + "language": "en-us", + "text": "An example submodel for the test application" + }, + { + "language": "de", + "text": "Ein Beispiel-Teilmodell für eine Test-Anwendung" } - ] + ] + } + ] } diff --git a/dataformat-json/src/test/resources/Example-Simple.json b/dataformat-json/src/test/resources/Example-Simple.json index fb1f5f3c9..c6e66ec23 100644 --- a/dataformat-json/src/test/resources/Example-Simple.json +++ b/dataformat-json/src/test/resources/Example-Simple.json @@ -6,16 +6,7 @@ "assetInformation": { "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "http://customer.com/assets/KHBVZJSQKIY" - } - ], - "type": "GlobalReference" - }, + "globalAssetId":"http://customer.com/assets/KHBVZJSQKIY", "specificAssetIds": [ { "name": "EquipmentID", @@ -28,7 +19,7 @@ "value": "http://customer.com/Systems/ERP/012" } ], - "type": "GlobalReference" + "type": "ExternalReference" } }, { @@ -42,7 +33,7 @@ "value": "http://customer.com/Systems/IoT/1" } ], - "type": "GlobalReference" + "type": "ExternalReference" } } ], @@ -59,7 +50,7 @@ "value": "http://i40.customer.com/type/1/1/7A7104BDAB57E184" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -68,7 +59,7 @@ "value": "http://i40.customer.com/instance/1/1/AC69B1CB44F07935" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -77,7 +68,7 @@ "value": "http://i40.customer.com/type/1/1/1A7B62B529F19152" } ], - "type": "GlobalReference" + "type": "ExternalReference" } ], "id": "http://customer.com/aas/9175_7013_7091_9168", @@ -87,7 +78,6 @@ "conceptDescriptions": [ { "modelType": "ConceptDescription", - "category": "PROPERTY", "embeddedDataSpecifications": [ { "dataSpecification": { @@ -97,11 +87,11 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "dataType": "STRING_TRANSLATABLE", "sourceOfDefinition": "ExampleString", "unit": "ExampleString", @@ -139,7 +129,6 @@ }, { "modelType": "ConceptDescription", - "category": "PROPERTY", "embeddedDataSpecifications": [ { "dataSpecification": { @@ -149,11 +138,11 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "dataType": "STRING", "sourceOfDefinition": "ExampleString", "unit": "ExampleString", @@ -200,11 +189,11 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "dataType": "REAL_MEASURE", "sourceOfDefinition": "ExampleString", "unit": "1/min", @@ -216,7 +205,7 @@ "value": "0173-1#05-AAA650#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "definition": [ { @@ -243,7 +232,7 @@ ], "administration": { - "revision": "2.1", + "revision": "1", "version": "2" }, "id": "0173-1#02-BAA120#008", @@ -261,11 +250,11 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "dataType": "REAL_MEASURE", "sourceOfDefinition": "ExampleString", "unit": "1/min", @@ -277,7 +266,7 @@ "value": "0173-1#05-AAA650#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "definition": [ { @@ -306,7 +295,7 @@ }, { "language": "EN", - "text": "ActualRotationSpeed" + "text": "ActRotationSpeed" } ] } @@ -318,7 +307,6 @@ }, { "modelType": "ConceptDescription", - "category": "PROPERTY", "embeddedDataSpecifications": [ { "dataSpecification": { @@ -328,11 +316,11 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "dataType": "STRING", "sourceOfDefinition": "[ISO15519-1:2010]", "unit": "ExampleString", @@ -368,7 +356,6 @@ "submodels": [ { "modelType": "Submodel", - "kind": "Instance", "semanticId": { "keys": [ @@ -377,14 +364,13 @@ "value": "0173-1#01-AFZ615#016" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", "idShort": "TechnicalData", "submodelElements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ @@ -393,7 +379,7 @@ "value": "0173-1#02-BAA120#008" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "5000", "valueType": "xs:integer", @@ -410,7 +396,6 @@ "submodelElements": [ { "modelType":"SubmodelElementCollection", - "kind": "Instance", "semanticId": { "keys": [ @@ -419,14 +404,12 @@ "value": "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/Document" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "OperatingManual", "value": [ { "modelType": "Property", - "category": "VARIABLE", - "kind": "Instance", "semanticId": { "keys": [ @@ -435,7 +418,7 @@ "value": "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/Description/Title" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "OperatingManual", "valueType": "xs:string", @@ -443,10 +426,8 @@ }, { "modelType": "File", - "category": "VARIABLE", "contentType": "application/pdf", "value": "file:///aasx/OperatingManual.pdf", - "kind": "Instance", "semanticId": { "keys": [ @@ -455,7 +436,7 @@ "value": "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/StoredDocumentRepresentation/DigitalFile" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "DigitalFile_PDF" } @@ -471,7 +452,6 @@ "submodelElements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ @@ -480,7 +460,7 @@ "value": "http://customer.com/cd/1/1/18EBD56F6B43D895" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "4370", "valueType": "xs:integer", diff --git a/dataformat-json/src/test/resources/MotorAAS-Reduced.json b/dataformat-json/src/test/resources/MotorAAS-Reduced.json index f72429ac8..022b2a050 100644 --- a/dataformat-json/src/test/resources/MotorAAS-Reduced.json +++ b/dataformat-json/src/test/resources/MotorAAS-Reduced.json @@ -6,15 +6,7 @@ "id": "http://customer.com/aas/9175_7013_7091_9168", "assetInformation": { "assetKind": "Instance", - "globalAssetId": { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "http://customer.com/assets/KHBVZJSQKIY" - } - ], - "type": "GlobalReference" - }, + "globalAssetId": "http://customer.com/assets/KHBVZJSQKIY", "specificAssetIds": [ { "name": "EquipmentID", @@ -26,7 +18,7 @@ "value": "http://customer.com/Systems/ERP/012" } ], - "type": "GlobalReference" + "type": "ExternalReference" } }, { @@ -39,13 +31,12 @@ "value": "http://customer.com/Systems/IoT/1" } ], - "type": "GlobalReference" + "type": "ExternalReference" } } ], "thumbnail": { "modelType": "File", - "kind": "Instance", "idShort": "thumbnail", "mimeType": "image/png", "path": "https://github.com/admin-shell/io/blob/master/verwaltungsschale-detail-part1.png" @@ -59,7 +50,7 @@ "value": "http.//i40.customer.com/type/1/1/7A7104BDAB57E184" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -68,7 +59,7 @@ "value": "http://i40.customer.com/instance/1/1/AC69B1CB44F07935" } ], - "type": "GlobalReference" + "type": "ExternalReference" } ] } @@ -83,7 +74,7 @@ "value": "0173-1#01-AFZ615#016" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "kind": "Instance", "idShort": "TechnicalData", @@ -91,7 +82,6 @@ "submodelElements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ { @@ -99,7 +89,7 @@ "value": "0173-1#02-BAA120#008" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "MaxRotationSpeed", "category": "PARAMETER", @@ -116,7 +106,6 @@ "submodelElements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ { @@ -124,7 +113,7 @@ "value": "http://customer.com/cd/1/1/18EBD56F6B43D895" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "RotationSpeed", "category": "Variable", @@ -153,10 +142,10 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "preferredName": [ { "language": "de", @@ -167,7 +156,6 @@ "text": "Max.rotationspeed" } ], - "shortName": [], "unit": "1/min", "unitId": { "keys": [ @@ -176,10 +164,9 @@ "value": "0173-1#05-AAA650#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "sourceOfDefinition": "", - "dataType": "RealMeasure", + "dataType": "REAL_MEASURE", "definition": [ { "language": "de", @@ -208,10 +195,10 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "preferredName": [ { "language": "DE", @@ -229,7 +216,7 @@ }, { "language": "EN", - "text": "ActualRotationSpeed" + "text": "ActRotationSpeed" } ], "unit": "1/min", @@ -240,10 +227,9 @@ "value": "0173-1#05-AAA650#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "sourceOfDefinition": "", - "dataType": "RealMeasure", + "dataType": "REAL_MEASURE", "definition": [ { "language": "DE", diff --git a/dataformat-json/src/test/resources/MotorAAS.json b/dataformat-json/src/test/resources/MotorAAS.json index 04618f479..b0b828a79 100644 --- a/dataformat-json/src/test/resources/MotorAAS.json +++ b/dataformat-json/src/test/resources/MotorAAS.json @@ -6,15 +6,7 @@ "id": "http://customer.com/aas/9175_7013_7091_9168", "assetInformation": { "assetKind": "Instance", - "globalAssetId": { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "http://customer.com/assets/KHBVZJSQKIY" - } - ], - "type": "GlobalReference" - }, + "globalAssetId": "http://customer.com/assets/KHBVZJSQKIY", "specificAssetIds": [ { "name": "EquipmentID", @@ -26,7 +18,7 @@ "value": "http://customer.com/Systems/ERP/012" } ], - "type": "GlobalReference" + "type": "ExternalReference" } }, { @@ -39,13 +31,12 @@ "value": "http://customer.com/Systems/IoT/1" } ], - "type": "GlobalReference" + "type": "ExternalReference" } } ], "thumbnail": { "modelType": "File", - "kind": "Instance", "idShort": "thumbnail", "mimeType": "image/png", "path": "https://github.com/admin-shell/io/blob/master/verwaltungsschale-detail-part1.png" @@ -59,7 +50,7 @@ "value": "http.//i40.customer.com/type/1/1/7A7104BDAB57E184" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -68,7 +59,7 @@ "value": "http://i40.customer.com/instance/1/1/AC69B1CB44F07935" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, { "keys": [ @@ -77,7 +68,7 @@ "value": "http://i40.customer.com/type/1/1/1A7B62B529F19152" } ], - "type": "GlobalReference" + "type": "ExternalReference" } ] } @@ -92,7 +83,7 @@ "value": "0173-1#01-AFZ615#016" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "kind": "Instance", "idShort": "TechnicalData", @@ -100,7 +91,6 @@ "submodelElements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ { @@ -108,7 +98,7 @@ "value": "0173-1#02-BAA120#008" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "MaxRotationSpeed", "category": "PARAMETER", @@ -125,7 +115,6 @@ "submodelElements": [ { "modelType": "SubmodelElementCollection", - "kind": "Instance", "semanticId": { "keys": [ { @@ -133,13 +122,12 @@ "value": "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/Document" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "OperatingManual", "value": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ { @@ -147,15 +135,14 @@ "value": "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/Description/Title" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "Title", "value": "OperatingManual", - "valueType": "langString" + "valueType": "xs:string" }, { "modelType": "File", - "kind": "Instance", "semanticId": { "keys": [ { @@ -163,11 +150,11 @@ "value": "http://www.vdi2770.com/blatt1/Entwurf/Okt18/cd/StoredDocumentRepresentation/DigitalFile" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "DigitalFile_PDF", "contentType": "application/pdf", - "value": "/aasx/OperatingManual.pdf" + "value": "file:///aasx/OperatingManual.pdf" } ], "ordered": false, @@ -183,7 +170,6 @@ "submodelElements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ { @@ -191,7 +177,7 @@ "value": "http://customer.com/cd/1/1/18EBD56F6B43D895" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "RotationSpeed", "category": "Variable", @@ -215,10 +201,10 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "preferredName": [ { "language": "EN", @@ -239,9 +225,7 @@ "text": "Titel" } ], - "unit": "", - "sourceOfDefinition": "", - "dataType": "StringTranslatable", + "dataType": "STRING_TRANSLATABLE", "definition": [ { "language": "DE", @@ -265,10 +249,10 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "preferredName": [ { "language": "EN", @@ -289,9 +273,7 @@ "text": "DigitaleDatei" } ], - "unit": "", - "sourceOfDefinition": "", - "dataType": "String", + "dataType": "STRING", "definition": [ { "language": "DE", @@ -320,10 +302,10 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "preferredName": [ { "language": "de", @@ -334,7 +316,6 @@ "text": "Max.rotationspeed" } ], - "shortName": [], "unit": "1/min", "unitId": { "keys": [ @@ -343,10 +324,9 @@ "value": "0173-1#05-AAA650#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "sourceOfDefinition": "", - "dataType": "RealMeasure", + "dataType": "REAL_MEASURE", "definition": [ { "language": "de", @@ -375,10 +355,10 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", + "modelType": "DataSpecificationIec61360", "preferredName": [ { "language": "DE", @@ -396,7 +376,7 @@ }, { "language": "EN", - "text": "ActualRotationSpeed" + "text": "ActRotationSpeed" } ], "unit": "1/min", @@ -407,10 +387,9 @@ "value": "0173-1#05-AAA650#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "sourceOfDefinition": "", - "dataType": "RealMeasure", + "dataType": "REAL_MEASURE", "definition": [ { "language": "DE", @@ -438,11 +417,16 @@ "value": "https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "dataSpecificationContent": { - "modelType": "DataSpecificationIEC61360", - "preferredName": [], + "modelType": "DataSpecificationIec61360", + "preferredName": [ + { + "language": "DE", + "text": "Dokument" + } + ], "shortName": [ { "language": "EN", @@ -453,9 +437,8 @@ "text": "Dokument" } ], - "unit": "", "sourceOfDefinition": "[ISO15519-1:2010]", - "dataType": "String", + "dataType": "STRING", "definition": [ { "language": "DE", diff --git a/dataformat-json/src/test/resources/Submodel-List.json b/dataformat-json/src/test/resources/Submodel-List.json index b0f0063e1..a1708a819 100644 --- a/dataformat-json/src/test/resources/Submodel-List.json +++ b/dataformat-json/src/test/resources/Submodel-List.json @@ -10,20 +10,18 @@ "value": "http://acplt.org/SubmodelTemplates/AssetIdentification" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "administration": { - "revision": "0", - "version": "0.9" + "revision": "9", + "version": "0" }, "id": "http://acplt.org/Submodels/Assets/TestAsset/Identification", "idShort": "Identification", "submodelElements": [ { "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", "semanticId": { "keys": [ @@ -32,7 +30,7 @@ "value": "0173-1#02-AAO677#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "http://acplt.org/ValueId/ACPLT", "valueId": @@ -43,25 +41,22 @@ "value": "http://acplt.org/ValueId/ACPLT" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "qualifiers": [ { "type": "http://acplt.org/Qualifier/ExampleQualifier", "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" }, { "type": "http://acplt.org/Qualifier/ExampleQualifier2", "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" } ], "idShort": "ManufacturerName", - "checksum": "someCheckSum", "displayName": [ { "language": "en-us", @@ -81,7 +76,6 @@ }, { "modelType": "Property", - "kind": "Instance", "category": "VARIABLE", "semanticId": { @@ -91,7 +85,7 @@ "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "978-8234-234-342", "valueId": @@ -102,8 +96,27 @@ "value": "978-8234-234-342" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, + "supplementalSemanticIds": [ + { + "keys": [ + { + "type": "GlobalReference", + "value": "something_random_e14ad770" + } + ], + "type": "ExternalReference" + }, + { + "keys": [{ + "type": "GlobalReference", + "value": "something_random_bd061acd" + }], + "type": "ExternalReference" + } + + ], "valueType": "xs:string", "idShort": "InstanceId", "description": [ @@ -140,23 +153,21 @@ "value": "http://acplt.org/SubmodelTemplates/BillOfMaterial" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "administration": { - "version": "0.9" + "version": "0" }, "id": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial", "idShort": "BillOfMaterial", "submodelElements": [ { "modelType": "Entity", - "kind": "Instance", "entityType": "CoManagedEntity", "statements": [ { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ @@ -165,7 +176,7 @@ "value": "http://acplt.org/Properties/ExampleProperty" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "http://acplt.org/ValueId/ExampleValue2", "valueId": @@ -176,7 +187,7 @@ "value": "http://acplt.org/ValueId/ExampleValue2" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "category": "CONSTANT", @@ -194,7 +205,6 @@ }, { "modelType": "Property", - "kind": "Instance", "semanticId": { "keys": [ @@ -203,7 +213,7 @@ "value": "http://acplt.org/Properties/ExampleProperty" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "http://acplt.org/ValueId/ExampleValueId", "valueId": @@ -214,7 +224,7 @@ "value": "http://acplt.org/ValueId/ExampleValueId" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "category": "CONSTANT", @@ -239,7 +249,7 @@ "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "ExampleEntity", "description": [ @@ -256,17 +266,7 @@ { "modelType": "Entity", "entityType": "SelfManagedEntity", - "kind": "Instance", - "globalAssetId": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset2" - } - ], - "type": "GlobalReference" - }, + "globalAssetId":"https://acplt.org/Test_Asset2", "semanticId": { "keys": [ @@ -275,7 +275,7 @@ "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "idShort": "ExampleEntity2", "description": [ diff --git a/dataformat-json/src/test/resources/Submodel.json b/dataformat-json/src/test/resources/Submodel.json index c52d08a6c..c3751c085 100644 --- a/dataformat-json/src/test/resources/Submodel.json +++ b/dataformat-json/src/test/resources/Submodel.json @@ -10,20 +10,18 @@ "value": "http://acplt.org/SubmodelTemplates/AssetIdentification" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "administration": { - "revision": "0", - "version": "0.9" + "revision": "9", + "version": "0" }, "id": "http://acplt.org/Submodels/Assets/TestAsset/Identification", "idShort": "Identification", "submodelElements": [ { "modelType": "Property", - "category": "VARIABLE", - "kind": "Instance", "semanticId": { "keys": [ @@ -32,7 +30,7 @@ "value": "0173-1#02-AAO677#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "http://acplt.org/ValueId/ACPLT", "valueId": @@ -43,39 +41,41 @@ "value": "http://acplt.org/ValueId/ACPLT" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "qualifiers": [ { "type": "http://acplt.org/Qualifier/ExampleQualifier", "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" }, { "type": "http://acplt.org/Qualifier/ExampleQualifier2", "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" } ], "idShort": "ManufacturerName", "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] + { + "language": "en-us", + "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." + }, + { + "language": "de", + "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" + } + ], + "displayName": [ + { + "language": "en-us", + "text": "Manufacturer Name" + } + ] }, { "modelType": "Property", - "category": "VARIABLE", - "kind": "Instance", "semanticId": { "keys": [ @@ -84,9 +84,28 @@ "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "978-8234-234-342", + "supplementalSemanticIds": [ + { + "keys": [ + { + "type": "GlobalReference", + "value": "something_random_e14ad770" + } + ], + "type": "ExternalReference" + }, + { + "keys": [{ + "type": "GlobalReference", + "value": "something_random_bd061acd" + }], + "type": "ExternalReference" + } + + ], "valueId": { "keys": [ @@ -95,9 +114,10 @@ "value": "978-8234-234-342" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", + "category": "VARIABLE", "idShort": "InstanceId", "description": [ { diff --git a/dataformat-json/src/test/resources/SubmodelElement-List.json b/dataformat-json/src/test/resources/SubmodelElement-List.json index 8073bcbe8..1227c8245 100644 --- a/dataformat-json/src/test/resources/SubmodelElement-List.json +++ b/dataformat-json/src/test/resources/SubmodelElement-List.json @@ -1,8 +1,6 @@ [ { "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", "semanticId": { "keys": [ @@ -11,9 +9,15 @@ "value": "0173-1#02-AAO677#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "http://acplt.org/ValueId/ACPLT", + "displayName": [ + { + "language": "en-us", + "text": "Manufacturer Name" + } + ], "valueId": { "keys": [ @@ -22,21 +26,19 @@ "value": "http://acplt.org/ValueId/ACPLT" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "qualifiers": [ { "type": "http://acplt.org/Qualifier/ExampleQualifier", "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" }, { "type": "http://acplt.org/Qualifier/ExampleQualifier2", "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" } ], "idShort": "ManufacturerName", @@ -53,7 +55,6 @@ }, { "modelType": "Property", - "kind": "Instance", "category": "VARIABLE", "semanticId": { @@ -63,7 +64,7 @@ "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "978-8234-234-342", "valueId": @@ -74,10 +75,29 @@ "value": "978-8234-234-342" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "idShort": "InstanceId", + "supplementalSemanticIds": [ + { + "keys": [ + { + "type": "GlobalReference", + "value": "something_random_e14ad770" + } + ], + "type": "ExternalReference" + }, + { + "keys": [{ + "type": "GlobalReference", + "value": "something_random_bd061acd" + }], + "type": "ExternalReference" + } + + ], "description": [ { "language": "en-us", diff --git a/dataformat-json/src/test/resources/SubmodelElement.json b/dataformat-json/src/test/resources/SubmodelElement.json index fe8551880..fb11778ca 100644 --- a/dataformat-json/src/test/resources/SubmodelElement.json +++ b/dataformat-json/src/test/resources/SubmodelElement.json @@ -1,8 +1,6 @@ { "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", "semanticId": { "keys": [ @@ -11,7 +9,7 @@ "value": "0173-1#02-AAO677#002" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "value": "http://acplt.org/ValueId/ACPLT", "valueId": @@ -22,21 +20,19 @@ "value": "http://acplt.org/ValueId/ACPLT" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, "valueType": "xs:string", "qualifiers": [ { "type": "http://acplt.org/Qualifier/ExampleQualifier", "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" }, { "type": "http://acplt.org/Qualifier/ExampleQualifier2", "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" + "valueType": "xs:int" } ], "idShort": "ManufacturerName", @@ -49,5 +45,11 @@ "language": "de", "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" } + ], + "displayName": [ + { + "language": "en-us", + "text": "Manufacturer Name" + } ] } diff --git a/dataformat-json/src/test/resources/SubmodelElementCollection.json b/dataformat-json/src/test/resources/SubmodelElementCollection.json index acf3a84bf..f0366f0f9 100644 --- a/dataformat-json/src/test/resources/SubmodelElementCollection.json +++ b/dataformat-json/src/test/resources/SubmodelElementCollection.json @@ -20,19 +20,17 @@ "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "kind": "Template", "value": [ { "modelType" : "Blob", "contentType" : "application/pdf", - "kind" : "Template", "semanticId" : { "keys" : [ { "type" : "GlobalReference", "value" : "http://acplt.org/Blobs/ExampleBlob" } ], - "type" : "GlobalReference" + "type": "ExternalReference" }, "category" : "PARAMETER", "description" : [ { @@ -46,13 +44,12 @@ }, { "modelType" : "File", "contentType" : "application/pdf", - "kind" : "Template", "semanticId" : { "keys" : [ { "type" : "GlobalReference", "value" : "http://acplt.org/Files/ExampleFile" } ], - "type" : "GlobalReference" + "type": "ExternalReference" }, "category" : "PARAMETER", "description" : [ { @@ -65,13 +62,12 @@ "idShort" : "ExampleFile" }, { "modelType" : "ReferenceElement", - "kind" : "Template", "semanticId" : { "keys" : [ { "type" : "GlobalReference", "value" : "http://acplt.org/ReferenceElements/ExampleReferenceElement" } ], - "type" : "GlobalReference" + "type": "ExternalReference" }, "category" : "PARAMETER", "description" : [ { diff --git a/dataformat-json/src/test/resources/SubmodelElementList-Empty.json b/dataformat-json/src/test/resources/SubmodelElementList-Empty.json index ca37a7d6a..c1db7aa70 100644 --- a/dataformat-json/src/test/resources/SubmodelElementList-Empty.json +++ b/dataformat-json/src/test/resources/SubmodelElementList-Empty.json @@ -1,6 +1,5 @@ { "modelType" : "SubmodelElementList", "idShort" : "submodelElementList", - "orderRelevant" : true, - "kind": "Instance" + "orderRelevant" : true } \ No newline at end of file diff --git a/dataformat-json/src/test/resources/SubmodelElementList.json b/dataformat-json/src/test/resources/SubmodelElementList.json index 84dea9fd4..fc5dd9c06 100644 --- a/dataformat-json/src/test/resources/SubmodelElementList.json +++ b/dataformat-json/src/test/resources/SubmodelElementList.json @@ -21,9 +21,8 @@ "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "kind": "Template", "typeValueListElement": "SubmodelElement", "value": [ { @@ -48,9 +47,8 @@ "value": "http://acplt.org/Properties/ExampleProperty" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "kind": "Template", "valueType": "xs:string" }, { @@ -75,9 +73,8 @@ "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" } ], - "type": "GlobalReference" - }, - "kind": "Template" + "type": "ExternalReference" + } }, { "idShort": "ExampleRange", @@ -102,9 +99,8 @@ "value": "http://acplt.org/Ranges/ExampleRange" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "kind": "Template", "valueType": "xs:int", "max": "100" }, @@ -131,9 +127,8 @@ "value": "http://acplt.org/Ranges/ExampleRange" } ], - "type": "GlobalReference" + "type": "ExternalReference" }, - "kind": "Template", "valueType": "xs:int", "min": "0" } diff --git a/dataformat-json/src/test/resources/assetAdministrationShell.json b/dataformat-json/src/test/resources/assetAdministrationShell.json deleted file mode 100644 index 4473090cf..000000000 --- a/dataformat-json/src/test/resources/assetAdministrationShell.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "idShort": "TestAssetAdministrationShell", - "description": [ - { - "language": "en-us", - "text": "An Example Asset Administration Shell for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-Verwaltungsschale für eine Test-Anwendung" - } - ], - "modelType": "AssetAdministrationShell", - "id": "https://acplt.org/Test_AssetAdministrationShell", - "administration": - { - "version": "0.9", - "revision": "0" - }, - "derivedFrom": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/TestAssetAdministrationShell2" - } - ], - "type": "GlobalReference" - }, - "assetInformation": - { - "assetKind": "Instance", - "globalAssetId": - { - "keys": [ - { - "type": "AssetAdministrationShell", - "value": "https://acplt.org/Test_Asset" - } - ], - "type": "GlobalReference" - } - }, - "submodels": [ - { - "keys": [ - { - "type": "Submodel", - "value": "https://acplt.org/Test_Submodel" - } - ], - "type": "GlobalReference" - }, - { - "keys": [ - { - "type": "Submodel", - "value": "http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial" - } - ], - "type": "GlobalReference" - }, - { - "keys": [ - { - "type": "Submodel", - "value": "http://acplt.org/Submodels/Assets/TestAsset/Identification" - } - ], - "type": "GlobalReference" - } - ] -} diff --git a/dataformat-json/src/test/resources/submodel.json b/dataformat-json/src/test/resources/submodel.json deleted file mode 100644 index 3ec5691f7..000000000 --- a/dataformat-json/src/test/resources/submodel.json +++ /dev/null @@ -1,131 +0,0 @@ - -{ - "modelType": "Submodel", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "Submodel", - "value": "http://acplt.org/SubmodelTemplates/AssetIdentification" - } - ], - "type": "GlobalReference" - }, - "administration": - { - "revision": "0", - "version": "0.9" - }, - "id": "http://acplt.org/Submodels/Assets/TestAsset/Identification", - "idShort": "Identification", - "submodelElements": [ - { - "modelType": "Property", - "category": "VARIABLE", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "0173-1#02-AAO677#002" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ACPLT", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ACPLT" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" - }, - { - "type": "http://acplt.org/Qualifier/ExampleQualifier2", - "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" - } - ], - "idShort": "ManufacturerName", - "checksum": "someCheckSum", - "displayName": [ - { - "language": "en-us", - "text": "Manufacturer Name" - } - ], - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - }, - { - "modelType": "Property", - "category": "VARIABLE", - "kind": "Instance", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" - } - ], - "type": "GlobalReference" - }, - "value": "978-8234-234-342", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "978-8234-234-342" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "idShort": "InstanceId", - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - } - ], - "description": [ - { - "language": "en-us", - "text": "An example asset identification submodel for the test application" - }, - { - "language": "de", - "text": "Ein Beispiel-Identifikations-Submodel für eine Test-Anwendung" - } - ] -} diff --git a/dataformat-json/src/test/resources/submodelElement.json b/dataformat-json/src/test/resources/submodelElement.json deleted file mode 100644 index 1a063c55b..000000000 --- a/dataformat-json/src/test/resources/submodelElement.json +++ /dev/null @@ -1,60 +0,0 @@ - -{ - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "0173-1#02-AAO677#002" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ACPLT", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ACPLT" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" - }, - { - "type": "http://acplt.org/Qualifier/ExampleQualifier2", - "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" - } - ], - "idShort": "ManufacturerName", - "checksum": "someCheckSum", - "displayName": [ - { - "language": "en-us", - "text": "Manufacturer Name" - } - ], - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] -} diff --git a/dataformat-json/src/test/resources/submodelElementCollection.json b/dataformat-json/src/test/resources/submodelElementCollection.json deleted file mode 100644 index acf3a84bf..000000000 --- a/dataformat-json/src/test/resources/submodelElementCollection.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "idShort": "ExampleSubmodelElementCollection", - "category": "PARAMETER", - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementCollection object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementCollection Element" - } - ], - "modelType": "SubmodelElementCollection", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementCollections/ExampleSubmodelElementCollection" - } - ], - "type": "GlobalReference" - }, - "kind": "Template", - "value": [ { - "modelType" : "Blob", - "contentType" : "application/pdf", - "kind" : "Template", - "semanticId" : { - "keys" : [ { - "type" : "GlobalReference", - "value" : "http://acplt.org/Blobs/ExampleBlob" - } ], - "type" : "GlobalReference" - }, - "category" : "PARAMETER", - "description" : [ { - "language" : "en-us", - "text" : "Example Blob object" - }, { - "language" : "de", - "text" : "Beispiel Blob Element" - } ], - "idShort" : "ExampleBlob" - }, { - "modelType" : "File", - "contentType" : "application/pdf", - "kind" : "Template", - "semanticId" : { - "keys" : [ { - "type" : "GlobalReference", - "value" : "http://acplt.org/Files/ExampleFile" - } ], - "type" : "GlobalReference" - }, - "category" : "PARAMETER", - "description" : [ { - "language" : "en-us", - "text" : "Example File object" - }, { - "language" : "de", - "text" : "Beispiel File Element" - } ], - "idShort" : "ExampleFile" - }, { - "modelType" : "ReferenceElement", - "kind" : "Template", - "semanticId" : { - "keys" : [ { - "type" : "GlobalReference", - "value" : "http://acplt.org/ReferenceElements/ExampleReferenceElement" - } ], - "type" : "GlobalReference" - }, - "category" : "PARAMETER", - "description" : [ { - "language" : "en-us", - "text" : "Example Reference Element object" - }, { - "language" : "de", - "text" : "Beispiel Reference Element Element" - } ], - "idShort" : "ExampleReferenceElement" - } ] -} diff --git a/dataformat-json/src/test/resources/submodelElementList.json b/dataformat-json/src/test/resources/submodelElementList.json deleted file mode 100644 index 84dea9fd4..000000000 --- a/dataformat-json/src/test/resources/submodelElementList.json +++ /dev/null @@ -1,141 +0,0 @@ -{ - "idShort": "ExampleSubmodelElementListOrdered", - "category": "PARAMETER", - "description": [ - { - "language": "en-us", - "text": "Example SubmodelElementListOrdered object" - }, - { - "language": "de", - "text": "Beispiel SubmodelElementListOrdered Element" - } - ], - "modelType": "SubmodelElementList", - "orderRelevant": true, - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/SubmodelElementLists/ExampleSubmodelElementListOrdered" - } - ], - "type": "GlobalReference" - }, - "kind": "Template", - "typeValueListElement": "SubmodelElement", - "value": [ - { - "idShort": "ExampleProperty", - "category": "CONSTANT", - "description": [ - { - "language": "en-us", - "text": "Example Property object" - }, - { - "language": "de", - "text": "Beispiel Property Element" - } - ], - "modelType": "Property", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Properties/ExampleProperty" - } - ], - "type": "GlobalReference" - }, - "kind": "Template", - "valueType": "xs:string" - }, - { - "idShort": "ExampleMultiLanguageProperty", - "category": "CONSTANT", - "description": [ - { - "language": "en-us", - "text": "Example MultiLanguageProperty object" - }, - { - "language": "de", - "text": "Beispiel MultiLanguageProperty Element" - } - ], - "modelType": "MultiLanguageProperty", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty" - } - ], - "type": "GlobalReference" - }, - "kind": "Template" - }, - { - "idShort": "ExampleRange", - "category": "PARAMETER", - "description": - [ - { - "language": "en-us", - "text": "Example Range object" - }, - { - "language": "de", - "text": "Beispiel Range Element" - } - ], - "modelType": "Range", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Ranges/ExampleRange" - } - ], - "type": "GlobalReference" - }, - "kind": "Template", - "valueType": "xs:int", - "max": "100" - }, - { - "idShort": "ExampleRange2", - "category": "PARAMETER", - "description": - [ - { - "language": "en-us", - "text": "Example Range object" - }, - { - "language": "de", - "text": "Beispiel Range Element" - } - ], - "modelType": "Range", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/Ranges/ExampleRange" - } - ], - "type": "GlobalReference" - }, - "kind": "Template", - "valueType": "xs:int", - "min": "0" - } - ] -} diff --git a/dataformat-json/src/test/resources/submodelelement-list.json b/dataformat-json/src/test/resources/submodelelement-list.json deleted file mode 100644 index 7e80c371c..000000000 --- a/dataformat-json/src/test/resources/submodelelement-list.json +++ /dev/null @@ -1,99 +0,0 @@ -[ - { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "0173-1#02-AAO677#002" - } - ], - "type": "GlobalReference" - }, - "value": "http://acplt.org/ValueId/ACPLT", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://acplt.org/ValueId/ACPLT" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "qualifiers": [ - { - "type": "http://acplt.org/Qualifier/ExampleQualifier", - "value": "100", - "valueType": "xs:int", - "kind": "ConceptQualifier" - }, - { - "type": "http://acplt.org/Qualifier/ExampleQualifier2", - "value": "50", - "valueType": "xs:int", - "kind": "ConceptQualifier" - } - ], - "idShort": "ManufacturerName", - "checksum": "someCheckSum", - "displayName": [ - { - "language": "en-us", - "text": "Manufacturer Name" - } - ], - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - }, - { - "modelType": "Property", - "kind": "Instance", - "category": "VARIABLE", - "semanticId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "http://opcfoundation.org/UA/DI/1.1/DeviceType/Serialnumber" - } - ], - "type": "GlobalReference" - }, - "value": "978-8234-234-342", - "valueId": - { - "keys": [ - { - "type": "GlobalReference", - "value": "978-8234-234-342" - } - ], - "type": "GlobalReference" - }, - "valueType": "xs:string", - "idShort": "InstanceId", - "description": [ - { - "language": "en-us", - "text": "Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation." - }, - { - "language": "de", - "text": "Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist" - } - ] - } -] diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/AasXmlNamespaceContext.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/AasXmlNamespaceContext.java index 68b7b3a2e..6e93642a3 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/AasXmlNamespaceContext.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/AasXmlNamespaceContext.java @@ -22,7 +22,7 @@ public class AasXmlNamespaceContext { public static final String AAS_PREFERRED_PREFIX = "aas"; - public static final String AAS_URI = "https://admin-shell.io/aas/3/0/RC02"; + public static final String AAS_URI = "https://admin-shell.io/aas/3/0"; public static final String XSI_PREFERRED_PREFIX = "xsi"; public static final String XSI_URI = "http://www.w3.org/2001/XMLSchema-instance"; diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/SubmodelElementManager.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/SubmodelElementManager.java index c3a0b5906..f2c2b21b7 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/SubmodelElementManager.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/SubmodelElementManager.java @@ -15,12 +15,32 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.*; - import java.util.HashMap; import java.util.Map; import java.util.stream.Collectors; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAnnotatedRelationshipElement; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultBasicEventElement; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultBlob; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultCapability; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEntity; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultEventPayload; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultFile; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringDefinitionTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringPreferredNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringShortNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringTextType; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultMultiLanguageProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultOperation; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultOperationVariable; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultRange; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultReferenceElement; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultRelationshipElement; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSubmodelElementCollection; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSubmodelElementList; + public class SubmodelElementManager { public static Map, String> CLASS_TO_NAME = new HashMap<>(); @@ -41,7 +61,11 @@ public class SubmodelElementManager { CLASS_TO_NAME.put(DefaultEventPayload.class, "eventPayload"); CLASS_TO_NAME.put(DefaultOperation.class, "operation"); CLASS_TO_NAME.put(DefaultOperationVariable.class, "operationVariable"); - CLASS_TO_NAME.put(DefaultLangString.class, "langString"); + CLASS_TO_NAME.put(DefaultLangStringTextType.class, "langStringTextType"); + CLASS_TO_NAME.put(DefaultLangStringNameType.class, "langStringNameType"); + CLASS_TO_NAME.put(DefaultLangStringDefinitionTypeIec61360.class, "langStringDefinitionTypeIec61360"); + CLASS_TO_NAME.put(DefaultLangStringPreferredNameTypeIec61360.class, "langStringPreferredNameTypeIec61360"); + CLASS_TO_NAME.put(DefaultLangStringShortNameTypeIec61360.class, "langStringShortNameTypeIec61360"); CLASS_TO_NAME.put(DefaultSubmodelElementCollection.class, "submodelElementCollection"); CLASS_TO_NAME.put(DefaultSubmodelElementList.class, "submodelElementList"); NAME_TO_CLASS = CLASS_TO_NAME.entrySet().stream().collect(Collectors.toMap(x -> x.getValue(), x -> x.getKey())); diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializer.java index f6f294e7e..c0008cec8 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializer.java @@ -22,12 +22,8 @@ import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.serialization.EnumSerializer; import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.ReflectionHelper; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.AssetAdministrationShellEnvironmentSerializer; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringSerializer; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.OperationVariableSerializer; -// TODO import io.adminshell.aas.v3.dataformat.xml.serialization.EmbeddedDataSpecificationSerializer; -// TODO import io.adminshell.aas.v3.model.EmbeddedDataSpecification; import org.eclipse.digitaltwin.aas4j.v3.model.Environment; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; import org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable; import com.fasterxml.jackson.annotation.JsonInclude; @@ -83,7 +79,6 @@ protected SimpleModule buildCustomSerializerModule() { aasEnvSerializer = new AssetAdministrationShellEnvironmentSerializer(); } module.addSerializer(Environment.class, aasEnvSerializer); - module.addSerializer(LangString.class, new LangStringSerializer()); module.addSerializer(OperationVariable.class, new OperationVariableSerializer()); return module; } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/AbstractLangStringsDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/AbstractLangStringsDeserializer.java new file mode 100644 index 000000000..011f9f147 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/AbstractLangStringsDeserializer.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; + +import java.io.IOException; +import java.util.List; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; +import org.eclipse.digitaltwin.aas4j.v3.model.AbstractLangString; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; + +/** + * + * @author schnicke + * + * @param + */ +public abstract class AbstractLangStringsDeserializer extends JsonDeserializer> implements CustomJsonNodeDeserializer { + + private static LangStringContentDeserializer contentDeserializer = new LangStringContentDeserializer(); + + private NoEntryWrapperListDeserializer deserializer; + + public AbstractLangStringsDeserializer(String elementName) { + deserializer = new NoEntryWrapperListDeserializer<>(elementName, this); + } + + @Override + public List deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException, JsonProcessingException { + return deserializer.deserialize(parser, ctxt); + } + + @Override + public T readValue(JsonNode node, JsonParser parser) throws IOException { + LangStringContent content = deserializeContent(node, parser); + return createLangStringInstance(content); + } + + protected abstract T createLangStringInstance(LangStringContent content); + + private LangStringContent deserializeContent(JsonNode node, JsonParser parser) throws IOException { + return contentDeserializer.readValue(node, parser); + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/EmbeddedDataSpecificationsDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/EmbeddedDataSpecificationsDeserializer.java index 7219ead72..1deec93b2 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/EmbeddedDataSpecificationsDeserializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/EmbeddedDataSpecificationsDeserializer.java @@ -17,9 +17,7 @@ import java.io.IOException; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.DataSpecificationManager; -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIEC61360; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIEC61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIec61360; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonProcessingException; @@ -27,11 +25,14 @@ import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.ObjectNode; +import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIec61360; -public class EmbeddedDataSpecificationsDeserializer extends JsonDeserializer { +public class EmbeddedDataSpecificationsDeserializer extends JsonDeserializer { + + private static final String PROP_DATA_SPECIFICATION_CONTENT = "dataSpecificationIec61360"; @Override - public DataSpecificationIEC61360 deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException, JsonProcessingException { + public DataSpecificationIec61360 deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException, JsonProcessingException { ObjectNode node = DeserializationHelper.getRootObjectNode(parser); if (node == null) { return null; @@ -41,13 +42,13 @@ public DataSpecificationIEC61360 deserialize(JsonParser parser, DeserializationC } - private DataSpecificationIEC61360 createEmbeddedDataSpecificationsFromContent(JsonParser parser, JsonNode node) throws IOException { - JsonNode nodeContent = node.get(DataSpecificationManager.PROP_DATA_SPECIFICATION_CONTENT); - return createDefaultDataSpecificationIEC61360FromNode(parser, nodeContent); + private DataSpecificationIec61360 createEmbeddedDataSpecificationsFromContent(JsonParser parser, JsonNode node) throws IOException { + JsonNode nodeContent = node.get(PROP_DATA_SPECIFICATION_CONTENT); + return createDefaultDataSpecificationIec61360FromNode(parser, nodeContent); } - private DataSpecificationIEC61360 createDefaultDataSpecificationIEC61360FromNode(JsonParser parser, JsonNode nodeContent) throws IOException { - return DeserializationHelper.createInstanceFromNode(parser, nodeContent, DefaultDataSpecificationIEC61360.class); + private DataSpecificationIec61360 createDefaultDataSpecificationIec61360FromNode(JsonParser parser, JsonNode nodeContent) throws IOException { + return DeserializationHelper.createInstanceFromNode(parser, nodeContent, DefaultDataSpecificationIec61360.class); } } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringNodeDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringContentDeserializer.java similarity index 71% rename from dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringNodeDeserializer.java rename to dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringContentDeserializer.java index e64c858f1..99fb61634 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringNodeDeserializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringContentDeserializer.java @@ -17,17 +17,16 @@ import java.io.IOException; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; + import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.JsonNode; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangString; - -public class LangStringNodeDeserializer implements CustomJsonNodeDeserializer { +public class LangStringContentDeserializer implements CustomJsonNodeDeserializer { @Override - public LangString readValue(JsonNode node, JsonParser parser) throws IOException { + public LangStringContent readValue(JsonNode node, JsonParser parser) throws IOException { String lang = node.get("language").asText(); String text = node.get("text").asText(); - return new DefaultLangString.Builder().text(text).language(lang).build(); + return new LangStringContent(lang, text); } } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsDefinitionTypeIec61360Deserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsDefinitionTypeIec61360Deserializer.java new file mode 100644 index 000000000..6979ff592 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsDefinitionTypeIec61360Deserializer.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringDefinitionTypeIec61360; + +/** + * + * @author schnicke + * + */ +public class LangStringsDefinitionTypeIec61360Deserializer extends AbstractLangStringsDeserializer { + + + public LangStringsDefinitionTypeIec61360Deserializer() { + super("langStringDefinitionTypeIec61360"); + } + + @Override + protected LangStringDefinitionTypeIec61360 createLangStringInstance(LangStringContent content) { + return new DefaultLangStringDefinitionTypeIec61360.Builder().language(content.getLanguage()).text(content.getText()).build(); + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsNameTypeDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsNameTypeDeserializer.java new file mode 100644 index 000000000..3a605ae5b --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsNameTypeDeserializer.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringNameType; + +/** + * + * @author schnicke + * + */ +public class LangStringsNameTypeDeserializer extends AbstractLangStringsDeserializer { + + + public LangStringsNameTypeDeserializer() { + super("langStringNameType"); + } + + @Override + protected LangStringNameType createLangStringInstance(LangStringContent content) { + return new DefaultLangStringNameType.Builder().language(content.getLanguage()).text(content.getText()).build(); + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsPreferredNameTypeIec61360Deserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsPreferredNameTypeIec61360Deserializer.java new file mode 100644 index 000000000..ba55c0b7c --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsPreferredNameTypeIec61360Deserializer.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringPreferredNameTypeIec61360; + +/** + * + * @author schnicke + * + */ +public class LangStringsPreferredNameTypeIec61360Deserializer extends AbstractLangStringsDeserializer { + public LangStringsPreferredNameTypeIec61360Deserializer() { + super("langStringPreferredNameTypeIec61360"); + } + + @Override + protected LangStringPreferredNameTypeIec61360 createLangStringInstance(LangStringContent content) { + return new DefaultLangStringPreferredNameTypeIec61360.Builder().language(content.getLanguage()).text(content.getText()).build(); + + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsShortNameTypeIec61360Deserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsShortNameTypeIec61360Deserializer.java new file mode 100644 index 000000000..7d03df54c --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsShortNameTypeIec61360Deserializer.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringShortNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringShortNameTypeIec61360; + +/** + * + * @author schnicke + * + */ +public class LangStringsShortNameTypeIec61360Deserializer extends AbstractLangStringsDeserializer { + + public LangStringsShortNameTypeIec61360Deserializer() { + super("langStringShortNameTypeIec61360"); + } + + @Override + protected LangStringShortNameTypeIec61360 createLangStringInstance(LangStringContent content) { + return new DefaultLangStringShortNameTypeIec61360.Builder().language(content.getLanguage()).text(content.getText()).build(); + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsTextTypeDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsTextTypeDeserializer.java new file mode 100644 index 000000000..0979967fd --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/LangStringsTextTypeDeserializer.java @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper.LangStringContent; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringTextType; + +public class LangStringsTextTypeDeserializer extends AbstractLangStringsDeserializer { + + + public LangStringsTextTypeDeserializer() { + super("langStringTextType"); + } + + @Override + protected LangStringTextType createLangStringInstance(LangStringContent content) { + return new DefaultLangStringTextType.Builder().language(content.getLanguage()).text(content.getText()).build(); + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ReferencesDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ReferencesDeserializer.java index d2733e4c8..1fed0147e 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ReferencesDeserializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ReferencesDeserializer.java @@ -20,6 +20,8 @@ import java.util.Collections; import java.util.List; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; + import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.TreeNode; @@ -28,13 +30,12 @@ import com.fasterxml.jackson.databind.node.ArrayNode; import com.fasterxml.jackson.databind.node.ObjectNode; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; - public class ReferencesDeserializer extends JsonDeserializer> { @Override public List deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException, JsonProcessingException { TreeNode treeNode = DeserializationHelper.getRootTreeNode(parser); + treeNode = treeNode.get("reference"); if (treeNode.isArray()) { return createReferencesFromArray(parser, (ArrayNode) treeNode); } else { diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ValueReferencePairNodeDeserializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ValueReferencePairNodeDeserializer.java index 391d74a84..e795faa56 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ValueReferencePairNodeDeserializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/deserialization/ValueReferencePairNodeDeserializer.java @@ -1,18 +1,19 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization; -import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.databind.JsonNode; +import java.io.IOException; + import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.ValueReferencePair; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultValueReferencePair; -import java.io.IOException; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.databind.JsonNode; public class ValueReferencePairNodeDeserializer implements CustomJsonNodeDeserializer { @Override public ValueReferencePair readValue(JsonNode node, JsonParser parser) throws IOException { String value = node.get("value").asText(); - Reference valueId = DeserializationHelper.createInstanceFromNode(parser, node.get("valueId"), Reference.class); - return new DefaultValueReferencePair.Builder().value(value).valueId(valueId).build(); + Reference valueId = DeserializationHelper.createInstanceFromNode(parser, node.get("valueId"), Reference.class); + return new DefaultValueReferencePair.Builder().value(value).valueID(valueId).build(); } } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/helper/LangStringContent.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/helper/LangStringContent.java new file mode 100644 index 000000000..014b559d6 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/helper/LangStringContent.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.helper; + +/** + * + * @author schnicke + * + */ +public class LangStringContent { + private String language; + private String text; + + public LangStringContent(String language, String text) { + this.language = language; + this.text = text; + } + + public String getLanguage() { + return language; + } + + public String getText() { + return text; + } + +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetAdministrationShellMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetAdministrationShellMixin.java index f87c55cb2..4d9d6493c 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetAdministrationShellMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetAdministrationShellMixin.java @@ -29,7 +29,7 @@ public interface AssetAdministrationShellMixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "id") - public String getId(); + public String getID(); @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "submodels") diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetInformationMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetInformationMixin.java index 239366bc5..27c97f8e1 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetInformationMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/AssetInformationMixin.java @@ -17,40 +17,27 @@ import java.util.List; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; +import org.eclipse.digitaltwin.aas4j.v3.model.File; +import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetID; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.model.File; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId; - @JsonPropertyOrder({ "assetKind", "globalAssetId", "specificAssetIds", "defaultThumbnail"}) public interface AssetInformationMixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "specificAssetId") @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "specificAssetIds") - public List getSpecificAssetIds(); + public List getSpecificAssetIds(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "specificAssetId") @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "specificAssetIds") - public void setSpecificAssetIds(List specificAssetIds); + public void setSpecificAssetIds(List specificAssetIds); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "globalAssetId") @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "globalAssetId") - public Reference getGlobalAssetId(); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "globalAssetId") - @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "globalAssetId") - public void setGlobalAssetId(Reference globalAssetId); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "submodelRef") - @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "billOfMaterials") - public List getBillOfMaterials(); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "submodelRef") - @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "billOfMaterials") - public void setBillOfMaterials(List billOfMaterials); + public String getGlobalAssetID(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "defaultThumbnail") public File getDefaultThumbnail(); diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/DataSpecificationIEC61360Mixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/DataSpecificationIec61360Mixin.java similarity index 60% rename from dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/DataSpecificationIEC61360Mixin.java rename to dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/DataSpecificationIec61360Mixin.java index b22f0124f..c8a0a5b1d 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/DataSpecificationIEC61360Mixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/DataSpecificationIec61360Mixin.java @@ -19,10 +19,16 @@ import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.serialization.EnumSerializer; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsDeserializer; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsSerializer; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIEC61360; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsDefinitionTypeIec61360Deserializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsPreferredNameTypeIec61360Deserializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsShortNameTypeIec61360Deserializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsDefinitionTypeIec61360Serializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsPreferredNameTypeIec61360Serializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsShortNameTypeIec61360Serializer; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringShortNameTypeIec61360; import org.eclipse.digitaltwin.aas4j.v3.model.LevelType; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.ValueList; @@ -33,34 +39,36 @@ import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; @JsonPropertyOrder({"preferredName", "shortName", "unit", "unitId", "sourceOfDefinition", "symbol", "dataType", "definition", "valueFormat", "valueList", "value", "valueId", "levelType"}) -public interface DataSpecificationIEC61360Mixin { +public interface DataSpecificationIec61360Mixin { + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "definition") + @JsonSerialize(using = LangStringsDefinitionTypeIec61360Serializer.class) + public List getDefinition(); - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "definition") - @JsonSerialize(using = LangStringsSerializer.class) - public List getDefinition(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "definition") - @JsonDeserialize(using = LangStringsDeserializer.class) - public void setDefinition(List definition); + @JsonDeserialize(using = LangStringsDefinitionTypeIec61360Deserializer.class) + public void setDefinition(List definition); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "levelType") public LevelType getLevelType(); - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "preferredName") - @JsonSerialize(using = LangStringsSerializer.class) - public List getPreferredName(); + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "preferredName") + @JsonSerialize(using = LangStringsPreferredNameTypeIec61360Serializer.class) + public List getPreferredName(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "preferredName") - @JsonDeserialize(using = LangStringsDeserializer.class) - public void setPreferredName(List preferredName); + @JsonDeserialize(using = LangStringsPreferredNameTypeIec61360Deserializer.class) + public void setPreferredName(List preferredName); - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "shortName") - @JsonSerialize(using = LangStringsSerializer.class) - public List getShortName(); + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "shortName") + @JsonSerialize(using = LangStringsShortNameTypeIec61360Serializer.class) + public List getShortName(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "shortName") - @JsonDeserialize(using = LangStringsDeserializer.class) - public void setShortName(List shortName); + @JsonDeserialize(using = LangStringsShortNameTypeIec61360Deserializer.class) + public void setShortName(List shortName); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "sourceOfDefinition") public String getSourceOfDefinition(); @@ -72,7 +80,7 @@ public interface DataSpecificationIEC61360Mixin { public String getUnit(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "unitId") - public Reference getUnitId(); + public Reference getUnitID(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueFormat") public String getValueFormat(); @@ -89,10 +97,9 @@ public interface DataSpecificationIEC61360Mixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueId") public Reference getValueId(); - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataType") @JsonSerialize(using = EnumSerializer.class) - public DataTypeIEC61360 getDataType(); + public DataTypeIec61360 getDataType(); diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EmbeddedDataSpecificationMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EmbeddedDataSpecificationMixin.java index 9ccd5e5a6..04b394996 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EmbeddedDataSpecificationMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EmbeddedDataSpecificationMixin.java @@ -1,46 +1,48 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; - -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.EmbeddedDataSpecificationsDeserializer; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.EmbeddedDataSpecificationSerializer; -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIEC61360; -import org.eclipse.digitaltwin.aas4j.v3.model.Reference; - -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; - -@JsonPropertyOrder({"dataSpecification", "dataSpecificationContent"}) -public interface EmbeddedDataSpecificationMixin { - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecification") - public Reference getDataSpecification(); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecification") - public void setDataSpecification(Reference dataSpecification); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecificationContent") - @JsonSerialize(using = EmbeddedDataSpecificationSerializer.class) - public DataSpecificationIEC61360 getDataSpecificationContent(); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecificationContent") - @JsonDeserialize(using = EmbeddedDataSpecificationsDeserializer.class) - public void setDataSpecificationContent(DataSpecificationIEC61360 dataSpecificationIEC61360); - -} +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.EmbeddedDataSpecificationsDeserializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.EmbeddedDataSpecificationSerializer; +import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIec61360; + +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; + +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; +import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationContent; + +@JsonPropertyOrder({"dataSpecification", "dataSpecificationContent"}) +public interface EmbeddedDataSpecificationMixin { + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecification") + public Reference getDataSpecification(); + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecification") + public void setDataSpecification(Reference dataSpecification); + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecificationContent") + @JsonSerialize(using = EmbeddedDataSpecificationSerializer.class) + public DataSpecificationContent getDataSpecificationContent(); + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "dataSpecificationContent") + @JsonDeserialize(using = EmbeddedDataSpecificationsDeserializer.class) + public void setDataSpecificationContent(DataSpecificationContent dataSpecificationIEC61360); + +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EntityMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EntityMixin.java index 2a1dd6a07..31e14115e 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EntityMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/EntityMixin.java @@ -20,7 +20,6 @@ import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.SubmodelElementsDeserializer; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.SubmodelElementsSerializer; -import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId; import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElement; import com.fasterxml.jackson.annotation.JsonInclude; @@ -29,12 +28,12 @@ import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; public interface EntityMixin { - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "specificAssetId") - public SpecificAssetId getExternalAssetId(); - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "statements") @JsonInclude(JsonInclude.Include.NON_NULL) @JsonSerialize(using = SubmodelElementsSerializer.class) @JsonDeserialize(using = SubmodelElementsDeserializer.class) public List getStatements(); + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "globalAssetId") + void setGlobalAssetID(String globalAssetID); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/HasSemanticsMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/HasSemanticsMixin.java new file mode 100644 index 000000000..1751cb1f9 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/HasSemanticsMixin.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; + +import java.util.List; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.ReferencesDeserializer; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; + +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; + +public interface HasSemanticsMixin { + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "semanticId") + void setSemanticID(Reference semanticID); + + @JsonDeserialize(using = ReferencesDeserializer.class) + void setSupplementalSemanticIds(List supplementalSemanticIds); + + @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "supplementalSemanticIds") + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "reference") + List getSupplementalSemanticIds(); +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/MultiLanguagePropertyMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/MultiLanguagePropertyMixin.java index 9692b65c1..e3df5f32e 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/MultiLanguagePropertyMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/MultiLanguagePropertyMixin.java @@ -18,14 +18,20 @@ import java.util.List; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsDeserializer; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsTextTypeDeserializer; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; public interface MultiLanguagePropertyMixin { - @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "value") - @JsonDeserialize(using = LangStringsDeserializer.class) - public List getValue(); + @JacksonXmlElementWrapper(namespace = AasXmlNamespaceContext.AAS_URI, localName = "value") + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "langStringTextType") + @JsonDeserialize(using = LangStringsTextTypeDeserializer.class) + public List getValue(); + + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueId") + void setValueID(Reference valueID); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/LangStringMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/PropertyMixin.java similarity index 64% rename from dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/LangStringMixin.java rename to dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/PropertyMixin.java index 3c05d6732..7f9211a17 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/LangStringMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/PropertyMixin.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,17 +16,16 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; - -@JsonPropertyOrder({"language", "text"}) -public interface LangStringMixin { - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "language") - public String getLanguage(); - - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "text") - public String getText(); +/** + * + * @author schnicke + * + */ +public interface PropertyMixin { + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueId") + void setValueID(Reference valueID); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/QualifierMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/QualifierMixin.java index df9756d35..dbac46a4f 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/QualifierMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/QualifierMixin.java @@ -15,13 +15,14 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.QualifierKind; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; + @JsonPropertyOrder({ "semanticId", "supplementalSemanticIds", // --> HasSemantics "kind", "type", "valueType", "value", "valueId" @@ -35,7 +36,7 @@ public interface QualifierMixin { void setType(String type); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueType") - void setType(DataTypeDefXsd valueType); + void setType(DataTypeDefXSD valueType); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "value") void setValue(String value); diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ReferableMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ReferableMixin.java index 371d8a294..9e75ef14d 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ReferableMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ReferableMixin.java @@ -18,9 +18,12 @@ import java.util.List; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsDeserializer; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsSerializer; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsNameTypeDeserializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.LangStringsTextTypeDeserializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsNameTypeSerializer; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.LangStringsTextTypeSerializer; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; @@ -31,20 +34,20 @@ @JsonPropertyOrder({"hasExtensions", "category", "idShort", "displayName", "description", "checksum"}) public interface ReferableMixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "description") - @JsonSerialize(using = LangStringsSerializer.class) - public List getDescription(); + @JsonSerialize(using = LangStringsTextTypeSerializer.class) + public List getDescription(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "description") - @JsonDeserialize(using = LangStringsDeserializer.class) - public void setDescription(List descriptions); + @JsonDeserialize(using = LangStringsTextTypeDeserializer.class) + public void setDescription(List descriptions); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "displayName") - @JsonDeserialize(using = LangStringsDeserializer.class) - public List getDisplayName(); + @JsonDeserialize(using = LangStringsNameTypeDeserializer.class) + public List getDisplayName(); - @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "displayName") - @JsonSerialize(using = LangStringsSerializer.class) - public void setDisplayName(List displayNames); + @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "displayName") + @JsonSerialize(using = LangStringsNameTypeSerializer.class) + public void setDisplayName(List displayNames); public String getIdShort(); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ResourceMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ResourceMixin.java index a7714dabc..913d35af7 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ResourceMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ResourceMixin.java @@ -16,7 +16,7 @@ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; @@ -28,5 +28,5 @@ public interface ResourceMixin { public String getPath(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "contentType") - public DataTypeDefXsd getContentType(); + public DataTypeDefXSD getContentType(); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SpecificAssetIdMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SpecificAssetIDMixin.java similarity index 94% rename from dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SpecificAssetIdMixin.java rename to dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SpecificAssetIDMixin.java index f36bd76ea..8f3e39865 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SpecificAssetIdMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SpecificAssetIDMixin.java @@ -22,7 +22,7 @@ import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; @JsonPropertyOrder({"hasSemantics", "name", "value", "externalSubjectId"}) -public interface SpecificAssetIdMixin { +public interface SpecificAssetIDMixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "name") public String getName(); @@ -31,5 +31,5 @@ public interface SpecificAssetIdMixin { public String getValue(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "externalSubjectId") - public Reference getExternalSubjectId(); + public Reference getExternalSubjectID(); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementListMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementListMixin.java index 52a87d635..650c2ea6f 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementListMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementListMixin.java @@ -15,18 +15,19 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; -import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; +import java.util.List; + import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.deserialization.SubmodelElementsDeserializer; import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization.SubmodelElementsSerializer; -import org.eclipse.digitaltwin.aas4j.v3.model.AasSubmodelElements; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.AASSubmodelElements; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.SubmodelElement; -import java.util.List; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; public interface SubmodelElementListMixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "value") @@ -47,14 +48,14 @@ public interface SubmodelElementListMixin { public void setSemanticIdListElement(Reference semanticIdListElement); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "typeValueListElement") - public AasSubmodelElements getTypeValueListElement(); + public AASSubmodelElements getTypeValueListElement(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "typeValueListElement") - public void setTypeValueListElement(AasSubmodelElements typeValueListElement); + public void setTypeValueListElement(AASSubmodelElements typeValueListElement); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueTypeListElement") - public DataTypeDefXsd getValueTypeListElement(); + public DataTypeDefXSD getValueTypeListElement(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueTypeListElement") - public void setValueTypeListElement(DataTypeDefXsd valueTypeListElement); + public void setValueTypeListElement(DataTypeDefXSD valueTypeListElement); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementMixin.java index 7f3f9928d..4992fb50f 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/SubmodelElementMixin.java @@ -21,12 +21,11 @@ @JsonPropertyOrder({ "hasExtensions", "category", "idShort", "displayName", "description", "checksum", // --> Referable "kind", // --> HasKind - "semanticId", "supplementalSemanticIds", // --> HasSemantics + "semanticId", "supplementalSemanticIds", "reference", // --> HasSemantics "qualifier", // --> Qualifiable "dataSpecifications", "embeddedDataSpecifications", // --> HasDataSpecifications - "orderRelevant", // --> SME-List + "orderRelevant", "semanticIdListElement", "typeValueListElement", "valueTypeListElement", // --> SME-List "valueType", "value", "valueId" // --> Property - , "semanticIdListElement", "typeValueListElement", "valueTypeListElement" // --> SME-List , "statements", "entityType", "globalAssetId", "specificAssetId" // --> Entity , "first", "second", "annotations" // --> (Annotated)RelationsShipElement , "inputVariables", "outputVariables", "inoutputVariables" // --> Operation diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ValueReferencePairMixin.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ValueReferencePairMixin.java index ef86d1471..07be3593a 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ValueReferencePairMixin.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/mixins/ValueReferencePairMixin.java @@ -15,16 +15,16 @@ */ package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.mixins; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; - import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -@JsonPropertyOrder({"value", "valueId"}) +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; + +@JsonPropertyOrder({ "value", "valueID" }) public interface ValueReferencePairMixin { @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "valueId") - public Reference getValueId(); + public Reference getValueID(); @JacksonXmlProperty(namespace = AasXmlNamespaceContext.AAS_URI, localName = "value") public String getValue(); diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AbstractLangStringSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AbstractLangStringSerializer.java new file mode 100644 index 000000000..cd4e5d2e1 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AbstractLangStringSerializer.java @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import java.io.IOException; +import java.lang.reflect.Field; + +import javax.xml.namespace.QName; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; +import org.eclipse.digitaltwin.aas4j.v3.model.AbstractLangString; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.JsonSerializer; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; + +public class AbstractLangStringSerializer extends JsonSerializer { + + private String name; + + public AbstractLangStringSerializer(String name) { + this.name = name; + } + + @Override + public void serialize(T langString, JsonGenerator gen, SerializerProvider serializers) throws IOException { + ToXmlGenerator xgen = (ToXmlGenerator) gen; + try { + Field nextName = xgen.getClass().getDeclaredField("_nextName"); + nextName.setAccessible(true); + xgen.setNextName(new QName(AasXmlNamespaceContext.AAS_URI, name)); + + serializeLangStringContent(xgen, langString); + + } catch (NoSuchFieldException e) { + // serialize it without changing the namespaces + serializeLangStringContent(xgen, langString); + } + } + + protected void serializeLangStringContent(ToXmlGenerator xgen, AbstractLangString langString) throws IOException { + xgen.writeStartObject(); + xgen.writeFieldName("language"); + xgen.writeString(langString.getLanguage()); + + xgen.writeFieldName("text"); + xgen.writeString(langString.getText()); + + xgen.writeEndObject(); + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AbstractLangStringsSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AbstractLangStringsSerializer.java new file mode 100644 index 000000000..afc4878ac --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AbstractLangStringsSerializer.java @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import java.io.IOException; +import java.util.List; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.ReflectionHelper; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.SubmodelElementManager; +import org.eclipse.digitaltwin.aas4j.v3.model.AbstractLangString; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; + +/** + * + * @author schnicke + * + * @param + */ +public class AbstractLangStringsSerializer extends NoEntryWrapperListSerializer { + + private AbstractLangStringSerializer ser; + + public AbstractLangStringsSerializer(AbstractLangStringSerializer ser) { + this.ser = ser; + } + + @Override + public void serialize(List langStrings, JsonGenerator gen, SerializerProvider serializers) throws IOException { + + ToXmlGenerator xgen = (ToXmlGenerator) gen; + xgen.writeStartObject(); + for (T element : langStrings) { + ReflectionHelper.setEmptyListsToNull(element); // call is needed to prevent empty tags (e.g. statements.size=0 leads to + // , which is not allowed according to the schema + xgen.writeFieldName(SubmodelElementManager.getXmlName(element.getClass())); + ser.serialize(element, xgen, serializers); + } + xgen.writeEndObject(); + + } + + @SuppressWarnings("unchecked") + @Override + public Class> handledType() { + return (Class>) (Object) List.class; + } +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AssetAdministrationShellEnvironmentSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AssetAdministrationShellEnvironmentSerializer.java index fb73d02a8..7167b4244 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AssetAdministrationShellEnvironmentSerializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/AssetAdministrationShellEnvironmentSerializer.java @@ -39,7 +39,7 @@ public class AssetAdministrationShellEnvironmentSerializer extends JsonSerializer { private static final String[] SCHEMA_LOCATION = {"xsi:schemaLocation", - "https://admin-shell.io/aas/3/0/RC02 AAS.xsd"}; + "https://admin-shell.io/aas/3/0 AAS.xsd" }; private static final QName AASENV_TAGNAME = new QName(AasXmlNamespaceContext.AAS_URI, "environment"); private static final QName AASLIST_TAGNAME = new QName(AasXmlNamespaceContext.AAS_URI, "assetAdministrationShells"); diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/EmbeddedDataSpecificationSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/EmbeddedDataSpecificationSerializer.java index 6cea85201..1208a07d6 100644 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/EmbeddedDataSpecificationSerializer.java +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/EmbeddedDataSpecificationSerializer.java @@ -17,13 +17,13 @@ import java.io.IOException; -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIEC61360; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; import com.fasterxml.jackson.databind.jsontype.TypeSerializer; +import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIec61360; /** @@ -31,10 +31,10 @@ * of a reference. Uses DataSpecificationManager to resolve java type to * reference. */ -public class EmbeddedDataSpecificationSerializer extends JsonSerializer { +public class EmbeddedDataSpecificationSerializer extends JsonSerializer { @Override - public void serialize(DataSpecificationIEC61360 data, JsonGenerator generator, SerializerProvider provider) + public void serialize(DataSpecificationIec61360 data, JsonGenerator generator, SerializerProvider provider) throws IOException { if (data == null) { return; @@ -46,7 +46,7 @@ public void serialize(DataSpecificationIEC61360 data, JsonGenerator generator, S } @Override - public void serializeWithType(DataSpecificationIEC61360 data, JsonGenerator generator, SerializerProvider provider, + public void serializeWithType(DataSpecificationIec61360 data, JsonGenerator generator, SerializerProvider provider, TypeSerializer typedSerializer) throws IOException, JsonProcessingException { serialize(data, generator, provider); } diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringSerializer.java deleted file mode 100644 index cafab1275..000000000 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringSerializer.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; - -import java.io.IOException; -import java.lang.reflect.Field; - -import javax.xml.namespace.QName; - -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.AasXmlNamespaceContext; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; - -import com.fasterxml.jackson.core.JsonGenerator; -import com.fasterxml.jackson.databind.JsonSerializer; -import com.fasterxml.jackson.databind.SerializerProvider; -import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; - -public class LangStringSerializer extends JsonSerializer { - - - @Override - public void serialize(LangString langString, JsonGenerator gen, SerializerProvider serializers) throws IOException { - - ToXmlGenerator xgen = (ToXmlGenerator) gen; - try { - Field nextName = xgen.getClass().getDeclaredField("_nextName"); - nextName.setAccessible(true); - xgen.setNextName(new QName(AasXmlNamespaceContext.AAS_URI, "langString")); - - serializeLangString(xgen, langString); - - } catch (NoSuchFieldException e) { - // serialize it without changing the namespaces - serializeLangString(xgen, langString); - } - - } - - private void serializeLangString(ToXmlGenerator xgen, LangString langString) throws IOException { - - - xgen.writeStartObject(); - xgen.writeFieldName("language"); - xgen.writeString(langString.getLanguage()); - - xgen.writeFieldName("text"); - xgen.writeString(langString.getText()); - - xgen.writeEndObject(); - } -} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsDefinitionTypeIec61360Serializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsDefinitionTypeIec61360Serializer.java new file mode 100644 index 000000000..c80f8f3d5 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsDefinitionTypeIec61360Serializer.java @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360; + +/** + * + * @author schnicke + * + */ +public class LangStringsDefinitionTypeIec61360Serializer extends AbstractLangStringsSerializer { + + public LangStringsDefinitionTypeIec61360Serializer() { + super(new AbstractLangStringSerializer<>("langStringDefinitionTypeIec61360")); + } + +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsNameTypeSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsNameTypeSerializer.java new file mode 100644 index 000000000..5b2659d1a --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsNameTypeSerializer.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import java.io.IOException; +import java.util.List; + +import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.ReflectionHelper; +import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.SubmodelElementManager; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; + +/** + * + * @author schnicke + * + */ +public class LangStringsNameTypeSerializer extends NoEntryWrapperListSerializer { + + private AbstractLangStringSerializer ser = new AbstractLangStringSerializer<>("langStringNameType"); + + @Override + public void serialize(List langStrings, JsonGenerator gen, SerializerProvider serializers) throws IOException { + + ToXmlGenerator xgen = (ToXmlGenerator) gen; + xgen.writeStartObject(); + for (LangStringNameType element : langStrings) { + ReflectionHelper.setEmptyListsToNull(element); // call is needed to prevent empty tags (e.g. statements.size=0 leads to + // , which is not allowed according to the schema + xgen.writeFieldName(SubmodelElementManager.getXmlName(element.getClass())); + ser.serialize(element, xgen, serializers); + } + xgen.writeEndObject(); + + } + + @SuppressWarnings("unchecked") + @Override + public Class> handledType() { + return (Class>) (Object) List.class; + } + +} \ No newline at end of file diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsPreferredNameTypeIec61360Serializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsPreferredNameTypeIec61360Serializer.java new file mode 100644 index 000000000..af86ea5cf --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsPreferredNameTypeIec61360Serializer.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360; + +/** + * + * @author schnicke + * + */ +public class LangStringsPreferredNameTypeIec61360Serializer extends AbstractLangStringsSerializer { + + public LangStringsPreferredNameTypeIec61360Serializer() { + super(new AbstractLangStringSerializer<>("langStringPreferredNameTypeIec61360")); + } + + +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsSerializer.java deleted file mode 100644 index 582ce9255..000000000 --- a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsSerializer.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; - -import java.io.IOException; -import java.util.List; - -import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.util.ReflectionHelper; -import org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.SubmodelElementManager; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; - -import com.fasterxml.jackson.core.JsonGenerator; -import com.fasterxml.jackson.databind.SerializerProvider; -import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; - -public class LangStringsSerializer extends NoEntryWrapperListSerializer { - - private LangStringSerializer ser = new LangStringSerializer(); - - @Override - public void serialize(List langStrings, JsonGenerator gen, SerializerProvider serializers) throws IOException { - - ToXmlGenerator xgen = (ToXmlGenerator) gen; - xgen.writeStartObject(); - for (LangString element : langStrings) { - ReflectionHelper.setEmptyListsToNull(element); // call is needed to prevent empty tags (e.g. statements.size=0 leads to , which is not allowed according to the schema - xgen.writeFieldName(SubmodelElementManager.getXmlName(element.getClass())); - ser.serialize(element, xgen, serializers); - } - xgen.writeEndObject(); - - } - - @SuppressWarnings("unchecked") - @Override - public Class> handledType() { - return (Class>)(Object)List.class; - } - -} \ No newline at end of file diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsShortNameTypeIec61360Serializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsShortNameTypeIec61360Serializer.java new file mode 100644 index 000000000..6fdd248f9 --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsShortNameTypeIec61360Serializer.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringShortNameTypeIec61360; + +/** + * + * @author schnicke + * + */ +public class LangStringsShortNameTypeIec61360Serializer extends AbstractLangStringsSerializer { + + public LangStringsShortNameTypeIec61360Serializer() { + super(new AbstractLangStringSerializer<>("langStringShortNameTypeIec61360")); + } + + +} diff --git a/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsTextTypeSerializer.java b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsTextTypeSerializer.java new file mode 100644 index 000000000..a7749b6da --- /dev/null +++ b/dataformat-xml/src/main/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/serialization/LangStringsTextTypeSerializer.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.eclipse.digitaltwin.aas4j.v3.dataformat.xml.serialization; + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; + +/** + * + * @author schnicke + * + */ +public class LangStringsTextTypeSerializer extends AbstractLangStringsSerializer { + + public LangStringsTextTypeSerializer() { + super(new AbstractLangStringSerializer<>("langStringTextType")); + } + + +} \ No newline at end of file diff --git a/dataformat-xml/src/main/resources/AAS.xsd b/dataformat-xml/src/main/resources/AAS.xsd index c8ae7a039..8f8569e73 100644 --- a/dataformat-xml/src/main/resources/AAS.xsd +++ b/dataformat-xml/src/main/resources/AAS.xsd @@ -1,19 +1,62 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49,7 +92,14 @@ - + + + + + + + + @@ -57,6 +107,14 @@ + + + + + + + + @@ -70,6 +128,7 @@ + @@ -77,21 +136,21 @@ - + - + - + @@ -106,6 +165,7 @@ + @@ -150,7 +210,6 @@ - @@ -159,14 +218,14 @@ - + - + @@ -196,7 +255,7 @@ - + @@ -208,104 +267,15 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + @@ -331,8 +301,21 @@ - - + + + + + + + + + + + + + + + @@ -380,6 +363,7 @@ + @@ -387,17 +371,11 @@ - - - - - - - - + + @@ -407,12 +385,19 @@ + - - + + + + + + + + @@ -423,6 +408,7 @@ + @@ -431,6 +417,7 @@ + @@ -503,26 +490,12 @@ - + - - - - - - - - - - - - - - @@ -567,6 +540,7 @@ + @@ -586,21 +560,43 @@ + - + - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -609,7 +605,7 @@ - + @@ -657,7 +653,7 @@ - + @@ -699,11 +695,12 @@ + - + @@ -711,8 +708,8 @@ - - + + @@ -722,13 +719,15 @@ + - + + @@ -736,24 +735,17 @@ - + - + - - - - - - - @@ -816,6 +808,7 @@ + @@ -824,6 +817,7 @@ + @@ -836,6 +830,7 @@ + @@ -843,10 +838,11 @@ + - + @@ -868,7 +864,6 @@ - @@ -890,6 +885,9 @@ + + + @@ -897,9 +895,6 @@ - - - @@ -933,7 +928,14 @@ - + + + + + + + + @@ -962,6 +964,7 @@ + @@ -969,9 +972,9 @@ + - @@ -982,23 +985,20 @@ - - - - + - - - - + + + - + + + + + - - - @@ -1038,41 +1038,33 @@ - - - + + + - + - + - - - - - - - - - + @@ -1087,7 +1079,7 @@ - + @@ -1097,6 +1089,14 @@ + + + + + + + + @@ -1152,11 +1152,6 @@ - - - - - @@ -1222,9 +1217,34 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/dataformat-xml/src/main/resources/AAS_ABAC.xsd b/dataformat-xml/src/main/resources/AAS_ABAC.xsd deleted file mode 100644 index 472c60d37..000000000 --- a/dataformat-xml/src/main/resources/AAS_ABAC.xsd +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/dataformat-xml/src/main/resources/IEC61360.xsd b/dataformat-xml/src/main/resources/IEC61360.xsd deleted file mode 100644 index b929a4304..000000000 --- a/dataformat-xml/src/main/resources/IEC61360.xsd +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XMLDeserializerTest.java b/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XMLDeserializerTest.java index 01314725c..784f3f888 100644 --- a/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XMLDeserializerTest.java +++ b/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XMLDeserializerTest.java @@ -32,11 +32,33 @@ public class XMLDeserializerTest { + @Test + public void deserializeAASSimple() throws FileNotFoundException, DeserializationException { + Environment env = new XmlDeserializer().read(XmlSerializerTest.AASSIMPLE_FILE); + + Assert.assertEquals(AASSimple.createEnvironment(), env); + } + @Test - public void deserializeAASSimple() throws Exception { + public void deserializeAASSimpleAAS() throws Exception { Environment env = new XmlDeserializer().read(XmlSerializerTest.AASSIMPLE_FILE); - Assert.assertEquals(AASSimple.ENVIRONMENT, env); - } + + Assert.assertEquals(AASSimple.createEnvironment().getAssetAdministrationShells(), env.getAssetAdministrationShells()); + } + + @Test + public void deserializeAASSimpleSubmodel() throws Exception { + Environment env = new XmlDeserializer().read(XmlSerializerTest.AASSIMPLE_FILE); + + Assert.assertEquals(AASSimple.createEnvironment().getSubmodels(), env.getSubmodels()); + } + + @Test + public void deserializeAASSimpleConceptDescription() throws Exception { + Environment env = new XmlDeserializer().read(XmlSerializerTest.AASSIMPLE_FILE); + + Assert.assertEquals(AASSimple.createEnvironment().getConceptDescriptions(), env.getConceptDescriptions()); + } @Test public void deserializeAnnotedRelationshipElement() throws Exception { @@ -72,6 +94,26 @@ public void deserializeOperation() throws Exception { @Test public void deserializeAASFull() throws FileNotFoundException, DeserializationException { Environment env = new XmlDeserializer().read(XmlSerializerTest.AASFULL_FILE); - Assert.assertEquals(AASFull.ENVIRONMENT, env); + Assert.assertEquals(AASFull.createEnvironment(), env); } + + @Test + public void deserializeAASFullAAS() throws FileNotFoundException, DeserializationException { + Environment env = new XmlDeserializer().read(XmlSerializerTest.AASFULL_FILE); + Assert.assertEquals(AASFull.createEnvironment().getAssetAdministrationShells(), env.getAssetAdministrationShells()); + } + + @Test + public void deserializeAASFullSubmodel() throws FileNotFoundException, DeserializationException { + Environment env = new XmlDeserializer().read(XmlSerializerTest.AASFULL_FILE); + + Assert.assertEquals(AASFull.createEnvironment().getSubmodels(), env.getSubmodels()); + } + + @Test + public void deserializeAASFullConceptDescription() throws FileNotFoundException, DeserializationException { + Environment env = new XmlDeserializer().read(XmlSerializerTest.AASFULL_FILE); + + Assert.assertEquals(AASFull.createEnvironment().getConceptDescriptions(), env.getConceptDescriptions()); + } } diff --git a/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializerTest.java b/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializerTest.java index f749e0644..a15099252 100644 --- a/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializerTest.java +++ b/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlSerializerTest.java @@ -29,7 +29,7 @@ import org.eclipse.digitaltwin.aas4j.v3.dataformat.core.AASSimple; import org.eclipse.digitaltwin.aas4j.v3.model.AssetKind; import org.eclipse.digitaltwin.aas4j.v3.model.ConceptDescription; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.Environment; import org.eclipse.digitaltwin.aas4j.v3.model.Submodel; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultAssetAdministrationShell; @@ -69,7 +69,7 @@ public class XmlSerializerTest { @Test public void testWriteToFile() throws IOException, SerializationException { File file = tempFolder.newFile("output.xml"); - new XmlSerializer().write(file, AASSimple.ENVIRONMENT); + new XmlSerializer().write(file, AASSimple.createEnvironment()); assertTrue(file.exists()); } @@ -92,17 +92,17 @@ public void testSerializeSimpleWithTestNamespacePrefix() throws SerializationExc Map nsPrefixes = new HashMap<>(AasXmlNamespaceContext.PREFERRED_PREFIX_CONTEXT); nsPrefixes.put("test", nsPrefixes.get("aas")); nsPrefixes.remove("aas"); - validateXmlSerializer(AASSIMPLE_FILE_WITH_TEST_NAMESPACE, AASSimple.ENVIRONMENT, new XmlSerializer(nsPrefixes)); + validateXmlSerializer(AASSIMPLE_FILE_WITH_TEST_NAMESPACE, AASSimple.createEnvironment(), new XmlSerializer(nsPrefixes)); } @Test public void testSerializeSimple() throws SerializationException, SAXException { - validateXmlSerializer(AASSIMPLE_FILE, AASSimple.ENVIRONMENT); + validateXmlSerializer(AASSIMPLE_FILE, AASSimple.createEnvironment()); } @Test public void testSerializeFull() throws SerializationException, SAXException { - validateXmlSerializer(AASFULL_FILE, AASFull.ENVIRONMENT); + validateXmlSerializer(AASFULL_FILE, AASFull.createEnvironment()); } @Test @@ -124,7 +124,7 @@ public void testMinimalOperationAgainstXsdSchema() throws SerializationException .value(new DefaultProperty.Builder() .idShort("inputProperty") .value("1") - .valueType(DataTypeDefXsd.INT) + .valueType(DataTypeDefXSD.INT) .build()) .build()) .build()) @@ -134,6 +134,14 @@ public void testMinimalOperationAgainstXsdSchema() throws SerializationException assertTrue(errors.isEmpty()); } + @Test + public void testGYear() throws SerializationException, SAXException { + Submodel submodel = new DefaultSubmodel.Builder().id("yearTestSm").submodelElements(new DefaultProperty.Builder().idShort("yearTestProp").valueType(DataTypeDefXSD.GYEAR).build()).build(); + String xml = new XmlSerializer().write(new DefaultEnvironment.Builder().submodels(submodel).build()); + Set errors = validateAgainstXsdSchema(xml); + assertTrue(errors.isEmpty()); + } + @Test public void testDocumentationSubmodelAgainstXsdSchema() throws SerializationException, SAXException { @@ -146,7 +154,7 @@ public void testDocumentationSubmodelAgainstXsdSchema() throws SerializationExce @Test public void testIsCaseOfAgainstXsdSchema() throws SerializationException, SAXException { - ConceptDescription object = AASFull.ENVIRONMENT.getConceptDescriptions().get(0); + ConceptDescription object = AASFull.createEnvironment().getConceptDescriptions().get(0); String xml = new XmlSerializer().write(new DefaultEnvironment.Builder().conceptDescriptions(object).build()); Set errors = validateAgainstXsdSchema( xml ); assertTrue(errors.isEmpty()); diff --git a/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlValidationTest.java b/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlValidationTest.java index ce428781b..eff9fa49c 100644 --- a/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlValidationTest.java +++ b/dataformat-xml/src/test/java/org/eclipse/digitaltwin/aas4j/v3/dataformat/xml/XmlValidationTest.java @@ -46,7 +46,7 @@ public static void prepareValidator() throws SAXException { } @Test - @Parameters({ "src/test/resources/minimum.xml", "src/test/resources/Example_AAS_ServoDCMotor - Simplified.xml" }) + @Parameters({ "src/test/resources/minimum.xml", "src/test/resources/Example_AAS_ServoDCMotor - Simplified.xml", "src/test/resources/test_demo_full_example.xml" }) // import from admin-shell.io -> is actually V3 // -> fix name, as soon as it is fixed externally public void validateValidXml(String file) throws IOException { diff --git a/dataformat-xml/src/test/resources/Example_AAS_ServoDCMotor - Simplified.xml b/dataformat-xml/src/test/resources/Example_AAS_ServoDCMotor - Simplified.xml index 08a2e06ce..fa5409f8c 100644 --- a/dataformat-xml/src/test/resources/Example_AAS_ServoDCMotor - Simplified.xml +++ b/dataformat-xml/src/test/resources/Example_AAS_ServoDCMotor - Simplified.xml @@ -1,7 +1,7 @@ - + ExampleMotor @@ -10,41 +10,33 @@ Instance - - GlobalReference - - - AssetAdministrationShell - http://customer.com/assets/KHBVZJSQKIY - - - + http://customer.com/assets/KHBVZJSQKIY - GlobalReference + ExternalReference - Submodel - http://i40.customer.com/instance/1/1/AC69B1CB44F07935 + Submodel + http://i40.customer.com/instance/1/1/AC69B1CB44F07935 - GlobalReference + ExternalReference - Submodel - http://i40.customer.com/type/1/1/1A7B62B529F19152 + Submodel + http://i40.customer.com/type/1/1/1A7B62B529F19152 - GlobalReference + ExternalReference - Submodel - http://i40.customer.com/type/1/1/7A7104BDAB57E184 + Submodel + http://i40.customer.com/type/1/1/7A7104BDAB57E184 @@ -61,9 +53,8 @@ OperatingManual - Instance - GlobalReference + ExternalReference ConceptDescription @@ -75,9 +66,8 @@ Parameter DigitalFile_PDF - Instance - GlobalReference + ExternalReference ConceptDescription @@ -90,9 +80,8 @@ Title - Instance - GlobalReference + ExternalReference ConceptDescription @@ -101,10 +90,10 @@ - - en - Operating Manual - + + en + Operating Manual + @@ -118,7 +107,7 @@ Instance - GlobalReference + ExternalReference ConceptDescription @@ -130,9 +119,8 @@ Parameter MaxRotationSpeed - Instance - GlobalReference + ExternalReference ConceptDescription @@ -155,13 +143,12 @@ Variable RotationSpeed - Instance - GlobalReference + ExternalReference - ConceptDescription - http://customer.com/cd/1/1/18EBD56F6B43D895 + ConceptDescription + http://customer.com/cd/1/1/18EBD56F6B43D895 @@ -184,7 +171,7 @@ - GlobalReference + ExternalReference ConceptDescription @@ -193,41 +180,41 @@ - + - - de - max. Drehzahl - - - en - Max. rotation speed - + + de + max. Drehzahl + + + en + Max. rotation speed + 1/min - GlobalReference + ExternalReference - ConceptDescription - 0173-1#05-AAA650#002 + ConceptDescription + 0173-1#05-AAA650#002 REAL_MEASURE - - de - Höchste zulässige Drehzahl, mit welcher der Motor oder die Speiseinheit betrieben werden darf - - - en - Greatest permissible rotation speed with which the motor or feeding unit may be operated - + + de + Höchste zulässige Drehzahl, mit welcher der Motor oder die Speiseinheit betrieben werden darf + + + en + Greatest permissible rotation speed with which the motor or feeding unit may be operated + - + @@ -241,7 +228,7 @@ - GlobalReference + ExternalReference ConceptDescription @@ -252,27 +239,27 @@ - - de - Titel - - - en - Title - + + de + Titel + + + en + Title + - - de - Titel - + + de + Titel + STRING_TRANSLATABLE - - de - Sprachabhängiger Titel des Dokuments. - + + de + Sprachabhängiger Titel des Dokuments. + @@ -286,38 +273,38 @@ - - GlobalReference + + ExternalReference ConceptDescription http://admin-shell.io/DataSpecificationTemplates/DataSpecificationaas - - + + - - de - Aktuelle Drehzahl - - - en - Actual rotation speed - + + de + Aktuelle Drehzahl + + + en + Actual rotation speed + - - en - RotationSpeed - + + en + ActRotationSpeed + 1/min - GlobalReference + ExternalReference ConceptDescription @@ -327,17 +314,17 @@ REAL_MEASURE - - de - Aktuelle Drehzahl, mit welcher der Motor oder die Speiseinheit betrieben wird - - - en - Actual rotation speed with which the motor or feeding unit is operated - + + de + Aktuelle Drehzahl, mit welcher der Motor oder die Speiseinheit betrieben wird + + + en + Actual rotation speed with which the motor or feeding unit is operated + - + @@ -349,7 +336,7 @@ - GlobalReference + ExternalReference ConceptDescription @@ -360,30 +347,30 @@ - - de - Dokument - - - en - Document - + + de + Dokument + + + en + Document + - - en - Document - + + en + Document + [ISO 15519-1:2010] IRI - - de - Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann. - + + de + Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann. + @@ -398,7 +385,7 @@ - GlobalReference + ExternalReference ConceptDescription @@ -409,23 +396,23 @@ - - de - Digitale Datei - + + de + Digitale Datei + - - de - digitale Datei - + + de + digitale Datei + IRI - - de - Eine Datei, die die DocumentVersion repräsentiert. Neben der obligatorischen PDF/A Datei können weitere Dateien angegeben werden. - + + de + Eine Datei, die die DocumentVersion repräsentiert. Neben der obligatorischen PDF/A Datei können weitere Dateien angegeben werden. + diff --git a/dataformat-xml/src/test/resources/ServoDCMotor_invalid.xml b/dataformat-xml/src/test/resources/ServoDCMotor_invalid.xml index d6a6a04dd..5e790ec5f 100644 --- a/dataformat-xml/src/test/resources/ServoDCMotor_invalid.xml +++ b/dataformat-xml/src/test/resources/ServoDCMotor_invalid.xml @@ -1,8 +1,8 @@ - diff --git a/dataformat-xml/src/test/resources/annotated_relationship_example.xml b/dataformat-xml/src/test/resources/annotated_relationship_example.xml index d2fee638f..3573866cb 100644 --- a/dataformat-xml/src/test/resources/annotated_relationship_example.xml +++ b/dataformat-xml/src/test/resources/annotated_relationship_example.xml @@ -1,11 +1,11 @@ - + TestSubmodel - 0.9 - 0 + 0 + 9 https://acplt.org/Test_Submodel Instance @@ -14,7 +14,7 @@ Parameter ExampleAnnotatedRelationshipElement - GlobalReference + ExternalReference GlobalReference @@ -60,7 +60,6 @@ Parameter ExampleProperty3 - Instance xs:string some example annotation diff --git a/dataformat-xml/src/test/resources/invalidXmlExample.xml b/dataformat-xml/src/test/resources/invalidXmlExample.xml index 799effff7..b7b77781f 100644 --- a/dataformat-xml/src/test/resources/invalidXmlExample.xml +++ b/dataformat-xml/src/test/resources/invalidXmlExample.xml @@ -1,5 +1,5 @@ - diff --git a/dataformat-xml/src/test/resources/minimum.xml b/dataformat-xml/src/test/resources/minimum.xml index f03ec2994..12445b81e 100644 --- a/dataformat-xml/src/test/resources/minimum.xml +++ b/dataformat-xml/src/test/resources/minimum.xml @@ -1,7 +1,7 @@ - + xsi:schemaLocation="https://admin-shell.io/aas/3/0 AAS.xsd"> https://acplt.org/Test_AssetAdministrationShell @@ -10,5 +10,4 @@ - - + \ No newline at end of file diff --git a/dataformat-xml/src/test/resources/operation_example.xml b/dataformat-xml/src/test/resources/operation_example.xml index 62b9d979c..bbc5798bb 100644 --- a/dataformat-xml/src/test/resources/operation_example.xml +++ b/dataformat-xml/src/test/resources/operation_example.xml @@ -1,28 +1,28 @@ - + TestSubmodel - + en-us An example submodel for the test application - - + + de Ein Beispiel-Teilmodell für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_Submodel Instance - GlobalReference + ExternalReference GlobalReference @@ -35,18 +35,17 @@ Parameter ExampleOperation - + en-us Example Operation object - - + + de Beispiel Operation Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -61,7 +60,7 @@ Constant ExampleProperty1 - GlobalReference + ExternalReference GlobalReference @@ -72,7 +71,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -89,7 +88,7 @@ Variable ExampleProperty2 - GlobalReference + ExternalReference GlobalReference @@ -100,7 +99,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -119,7 +118,7 @@ Constant ExampleProperty2 - GlobalReference + ExternalReference GlobalReference @@ -130,7 +129,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -149,7 +148,7 @@ Constant ExampleProperty3 - GlobalReference + ExternalReference GlobalReference @@ -160,7 +159,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference diff --git a/dataformat-xml/src/test/resources/qualifier_example.xml b/dataformat-xml/src/test/resources/qualifier_example.xml index c7f7131dd..93b4cc661 100644 --- a/dataformat-xml/src/test/resources/qualifier_example.xml +++ b/dataformat-xml/src/test/resources/qualifier_example.xml @@ -1,5 +1,5 @@ - + TestSubmodel @@ -13,7 +13,7 @@ ManufacturerName - GlobalReference + ExternalReference GlobalReference @@ -36,7 +36,7 @@ xs:string http://acplt.org/ValueId/ACPLT - GlobalReference + ExternalReference GlobalReference diff --git a/dataformat-xml/src/test/resources/test_demo_full_example.xml b/dataformat-xml/src/test/resources/test_demo_full_example.xml index 82cc3a642..26fbaefe4 100644 --- a/dataformat-xml/src/test/resources/test_demo_full_example.xml +++ b/dataformat-xml/src/test/resources/test_demo_full_example.xml @@ -1,27 +1,27 @@ - + xsi:schemaLocation="https://admin-shell.io/aas/3/0 AAS.xsd"> TestAssetAdministrationShell - + en-us An Example Asset Administration Shell for the test application - - + + de Ein Beispiel-Verwaltungsschale für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_AssetAdministrationShell - GlobalReference + ExternalReference AssetAdministrationShell @@ -31,19 +31,11 @@ Instance - - GlobalReference - - - AssetAdministrationShell - https://acplt.org/Test_Asset - - - + https://acplt.org/Test_Asset - GlobalReference + ExternalReference Submodel @@ -52,7 +44,7 @@ - GlobalReference + ExternalReference Submodel @@ -61,7 +53,7 @@ - GlobalReference + ExternalReference Submodel @@ -76,19 +68,11 @@ https://acplt.org/Test_AssetAdministrationShell_Mandatory Instance - - GlobalReference - - - AssetAdministrationShell - https://acplt.org/Test_Asset_Mandatory - - - + https://acplt.org/Test_Asset_Mandatory - GlobalReference + ExternalReference Submodel @@ -97,7 +81,7 @@ - GlobalReference + ExternalReference Submodel @@ -112,49 +96,33 @@ https://acplt.org/Test_AssetAdministrationShell2_Mandatory Instance - - GlobalReference - - - AssetAdministrationShell - https://acplt.org/Test_Asset_Mandatory - - - + https://acplt.org/Test_Asset_Mandatory TestAssetAdministrationShell - + en-us An Example Asset Administration Shell for the test application - - + + de Ein Beispiel-Verwaltungsschale für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_AssetAdministrationShell_Missing Instance - - GlobalReference - - - AssetAdministrationShell - https://acplt.org/Test_Asset_Missing - - - + https://acplt.org/Test_Asset_Missing - GlobalReference + ExternalReference Submodel @@ -169,23 +137,23 @@ Identification - + en-us An example asset identification submodel for the test application - - + + de Ein Beispiel-Identifikations-Submodel für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 http://acplt.org/Submodels/Assets/TestAsset/Identification Instance - GlobalReference + ExternalReference Submodel @@ -197,24 +165,23 @@ ManufacturerName - + en-us Manufacturer Name - + - + en-us Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation. - - + + de Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist - + - someCheckSum - GlobalReference + ExternalReference GlobalReference @@ -237,7 +204,7 @@ xs:string http://acplt.org/ValueId/ACPLT - GlobalReference + ExternalReference GlobalReference @@ -247,19 +214,20 @@ + VARIABLE InstanceId - + en-us Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation. - - + + de Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist - + - GlobalReference + ExternalReference GlobalReference @@ -267,10 +235,30 @@ + + + ExternalReference + + + GlobalReference + something_random_e14ad770 + + + + + ExternalReference + + + GlobalReference + something_random_bd061acd + + + + xs:string 978-8234-234-342 - GlobalReference + ExternalReference GlobalReference @@ -284,22 +272,22 @@ BillOfMaterial - + en-us An example bill of material submodel for the test application - - + + de Ein Beispiel-BillofMaterial-Submodel für eine Test-Anwendung - + - 0.9 + 0 http://acplt.org/Submodels/Assets/TestAsset/BillOfMaterial Instance - GlobalReference + ExternalReference Submodel @@ -311,17 +299,17 @@ ExampleEntity - + en-us Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation. - - + + de Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist - + - GlobalReference + ExternalReference GlobalReference @@ -334,18 +322,18 @@ CONSTANT ExampleProperty2 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Properties/ExampleProperty @@ -355,8 +343,8 @@ xs:string http://acplt.org/ValueId/ExampleValue2 - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ValueId/ExampleValue2 @@ -368,18 +356,18 @@ CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Properties/ExampleProperty @@ -389,8 +377,8 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ValueId/ExampleValueId @@ -404,17 +392,17 @@ ExampleEntity2 - + en-us Legally valid designation of the natural or judicial person which is directly responsible for the design, production, packaging and labeling of a product in respect to its being brought into circulation. - - + + de Bezeichnung für eine natürliche oder juristische Person, die für die Auslegung, Herstellung und Verpackung sowie die Etikettierung eines Produkts im Hinblick auf das 'Inverkehrbringen' im eigenen Namen verantwortlich ist - + - GlobalReference + ExternalReference GlobalReference @@ -423,38 +411,30 @@ SelfManagedEntity - - GlobalReference - - - AssetAdministrationShell - https://acplt.org/Test_Asset2 - - - + https://acplt.org/Test_Asset2 TestSubmodel - + en-us An example submodel for the test application - - + + de Ein Beispiel-Teilmodell für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_Submodel Instance - GlobalReference + ExternalReference GlobalReference @@ -467,17 +447,17 @@ PARAMETER ExampleRelationshipElement - + en-us Example RelationshipElement object - - + + de Beispiel RelationshipElement Element - + - GlobalReference + ExternalReference GlobalReference @@ -524,17 +504,17 @@ PARAMETER ExampleAnnotatedRelationshipElement - + en-us Example AnnotatedRelationshipElement object - - + + de Beispiel AnnotatedRelationshipElement Element - + - GlobalReference + ExternalReference GlobalReference @@ -580,7 +560,6 @@ PARAMETER ExampleProperty3 - Instance xs:string some example annotation @@ -590,18 +569,17 @@ PARAMETER ExampleOperation - + en-us Example Operation object - - + + de Beispiel Operation Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -616,17 +594,17 @@ CONSTANT ExampleProperty1 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference + ExternalReference GlobalReference @@ -637,7 +615,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -656,17 +634,17 @@ CONSTANT ExampleProperty2 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference + ExternalReference GlobalReference @@ -677,7 +655,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -696,17 +674,17 @@ CONSTANT ExampleProperty3 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference + ExternalReference GlobalReference @@ -717,7 +695,7 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -734,17 +712,17 @@ PARAMETER ExampleCapability - + en-us Example Capability object - - + + de Beispiel Capability Element - + - GlobalReference + ExternalReference GlobalReference @@ -757,17 +735,17 @@ PARAMETER ExampleBasicEvent - + en-us Example BasicEvent object - - + + de Beispiel BasicEvent Element - + - GlobalReference + ExternalReference GlobalReference @@ -799,17 +777,17 @@ PARAMETER ExampleSubmodelElementListOrdered - + en-us Example ExampleSubmodelElementListOrdered object - - + + de Beispiel ExampleSubmodelElementListOrdered Element - + - GlobalReference + ExternalReference GlobalReference @@ -817,23 +795,25 @@ + true + SubmodelElement CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Properties/ExampleProperty @@ -843,8 +823,8 @@ xs:string http://acplt.org/ValueId/ExampleValueId - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ValueId/ExampleValueId @@ -856,18 +836,18 @@ CONSTANT ExampleMultiLanguageProperty - + en-us Example MultiLanguageProperty object - - + + de Beispiel MultiLanguageProperty Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty @@ -875,18 +855,18 @@ - + en-us Example value of a MultiLanguageProperty element - - + + de Beispielswert für ein MultiLanguageProperty-Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ValueId/ExampleMultiLanguageValueId @@ -898,18 +878,18 @@ PARAMETER ExampleRange - + en-us Example Range object - - + + de Beispiel Range Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Ranges/ExampleRange @@ -921,23 +901,22 @@ 100 - SubmodelElement PARAMETER ExampleSubmodelElementCollection - + en-us Example SubmodelElementCollection object - - + + de Beispiel SubmodelElementCollection Element - + - GlobalReference + ExternalReference GlobalReference @@ -950,18 +929,18 @@ PARAMETER ExampleBlob - + en-us Example Blob object - - + + de Beispiel Blob Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Blobs/ExampleBlob @@ -975,18 +954,18 @@ PARAMETER ExampleFile - + en-us Example File object - - + + de Beispiel File Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Files/ExampleFile @@ -1000,18 +979,18 @@ PARAMETER ExampleReferenceElement - + en-us Example Reference Element object - - + + de Beispiel Reference Element Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ReferenceElements/ExampleReferenceElement @@ -1019,8 +998,8 @@ - GlobalReference - + ExternalReference + Submodel https://acplt.org/Test_Submodel @@ -1121,7 +1100,6 @@ ExampleOperation - Template ExampleCapability @@ -1151,6 +1129,7 @@ ExampleSubmodelElementListUnordered false + SubmodelElement ExampleProperty @@ -1164,7 +1143,6 @@ xs:int - SubmodelElement ExampleSubmodelElementCollection @@ -1195,23 +1173,23 @@ TestSubmodelMissing - + en-us An example submodel for the test application - - + + de Ein Beispiel-Teilmodell für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_Submodel_Missing Instance - GlobalReference + ExternalReference GlobalReference @@ -1224,17 +1202,17 @@ PARAMETER ExampleRelationshipElement - + en-us Example RelationshipElement object - - + + de Beispiel RelationshipElement Element - + - GlobalReference + ExternalReference GlobalReference @@ -1281,17 +1259,17 @@ PARAMETER ExampleAnnotatedRelationshipElement - + en-us Example AnnotatedRelationshipElement object - - + + de Beispiel AnnotatedRelationshipElement Element - + - GlobalReference + ExternalReference GlobalReference @@ -1337,7 +1315,6 @@ PARAMETER ExampleProperty - Instance xs:string some example annotation @@ -1347,18 +1324,17 @@ PARAMETER ExampleOperation - + en-us Example Operation object - - + + de Beispiel Operation Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -1373,17 +1349,17 @@ CONSTANT ExampleProperty1 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference + ExternalReference GlobalReference @@ -1410,17 +1386,17 @@ CONSTANT ExampleProperty2 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference + ExternalReference GlobalReference @@ -1447,17 +1423,17 @@ CONSTANT ExampleProperty3 - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference + ExternalReference GlobalReference @@ -1482,17 +1458,17 @@ PARAMETER ExampleCapability - + en-us Example Capability object - - + + de Beispiel Capability Element - + - GlobalReference + ExternalReference GlobalReference @@ -1505,17 +1481,17 @@ PARAMETER ExampleBasicEvent - + en-us Example BasicEvent object - - + + de Beispiel BasicEvent Element - + - GlobalReference + ExternalReference GlobalReference @@ -1524,7 +1500,7 @@ - GlobalReference + ExternalReference Submodel @@ -1547,17 +1523,17 @@ PARAMETER ExampleSubmodelElementListOrdered - + en-us Example SubmodelElementListOrdered object - - + + de Beispiel SubmodelElementListOrdered Element - + - GlobalReference + ExternalReference GlobalReference @@ -1566,23 +1542,24 @@ true + SubmodelElement CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Properties/ExampleProperty @@ -1602,18 +1579,18 @@ CONSTANT ExampleMultiLanguageProperty - + en-us Example MultiLanguageProperty object - - + + de Beispiel MultiLanguageProperty Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty @@ -1621,32 +1598,32 @@ - + en-us Example value of a MultiLanguageProperty element - - + + de Beispielswert für ein MultiLanguageProperty-Element - + PARAMETER ExampleRange - + en-us Example Range object - - + + de Beispiel Range Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Ranges/ExampleRange @@ -1658,23 +1635,22 @@ 100 - SubmodelElement PARAMETER ExampleSubmodelElementCollection - + en-us Example SubmodelElementCollection object - - + + de Beispiel SubmodelElementCollection Element - + - GlobalReference + ExternalReference GlobalReference @@ -1687,18 +1663,18 @@ PARAMETER ExampleBlob - + en-us Example Blob object - - + + de Beispiel Blob Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Blobs/ExampleBlob @@ -1712,18 +1688,18 @@ PARAMETER ExampleFile - + en-us Example File object - - + + de Beispiel File Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Files/ExampleFile @@ -1737,18 +1713,18 @@ PARAMETER ExampleReferenceElement - + en-us Example Reference Element object - - + + de Beispiel Reference Element Element - + - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ReferenceElements/ExampleReferenceElement @@ -1780,23 +1756,23 @@ TestSubmodelTemplate - + en-us An example submodel for the test application - - + + de Ein Beispiel-Teilmodell für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_Submodel_Template Template - GlobalReference + ExternalReference GlobalReference @@ -1809,18 +1785,17 @@ PARAMETER ExampleRelationshipElement - + en-us Example RelationshipElement object - - + + de Beispiel RelationshipElement Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -1867,18 +1842,17 @@ PARAMETER ExampleAnnotatedRelationshipElement - + en-us Example AnnotatedRelationshipElement object - - + + de Beispiel AnnotatedRelationshipElement Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -1925,18 +1899,17 @@ PARAMETER ExampleOperation - + en-us Example Operation object - - + + de Beispiel Operation Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -1951,18 +1924,17 @@ CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -1982,18 +1954,17 @@ CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2013,18 +1984,17 @@ CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2042,18 +2012,17 @@ PARAMETER ExampleCapability - + en-us Example Capability object - - + + de Beispiel Capability Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2066,18 +2035,17 @@ PARAMETER ExampleBasicEvent - + en-us Example BasicEvent object - - + + de Beispiel BasicEvent Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2109,18 +2077,17 @@ PARAMETER ExampleSubmodelElementListOrdered - + en-us Example SubmodelElementListOrdered object - - + + de Beispiel SubmodelElementListOrdered Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2128,24 +2095,25 @@ + true + SubmodelElement CONSTANT ExampleProperty - + en-us Example Property object - - + + de Beispiel Property Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Properties/ExampleProperty @@ -2158,19 +2126,18 @@ CONSTANT ExampleMultiLanguageProperty - + en-us Example MultiLanguageProperty object - - + + de Beispiel MultiLanguageProperty Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/MultiLanguageProperties/ExampleMultiLanguageProperty @@ -2182,19 +2149,18 @@ PARAMETER ExampleRange - + en-us Example Range object - - + + de Beispiel Range Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Ranges/ExampleRange @@ -2208,19 +2174,18 @@ PARAMETER ExampleRange2 - + en-us Example Range object - - + + de Beispiel Range Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Ranges/ExampleRange @@ -2231,24 +2196,22 @@ 0 - SubmodelElement PARAMETER ExampleSubmodelElementCollection - + en-us Example SubmodelElementCollection object - - + + de Beispiel SubmodelElementCollection Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2261,19 +2224,18 @@ PARAMETER ExampleBlob - + en-us Example Blob object - - + + de Beispiel Blob Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Blobs/ExampleBlob @@ -2286,19 +2248,18 @@ PARAMETER ExampleFile - + en-us Example File object - - + + de Beispiel File Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Files/ExampleFile @@ -2311,19 +2272,18 @@ PARAMETER ExampleReferenceElement - + en-us Example Reference Element object - - + + de Beispiel Reference Element Element - + - Template - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/ReferenceElements/ExampleReferenceElement @@ -2337,18 +2297,17 @@ PARAMETER ExampleSubmodelElementCollection2 - + en-us Example SubmodelElementCollection object - - + + de Beispiel SubmodelElementCollection Element - + - Template - GlobalReference + ExternalReference GlobalReference @@ -2364,23 +2323,23 @@ TestConceptDescription - + en-us An example concept description for the test application - - + + de Ein Beispiel-ConceptDescription für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_ConceptDescription - GlobalReference + ExternalReference GlobalReference @@ -2395,34 +2354,35 @@ https://acplt.org/Test_ConceptDescription_Mandatory + PROPERTY TestConceptDescription1 - + en-us An example concept description for the test application - - + + de Ein Beispiel-ConceptDescription für eine Test-Anwendung - + - 0.9 - 0 + 0 + 9 https://acplt.org/Test_ConceptDescription_Missing TestSpec_01 - 0.9 - 0 + 0 + 9 http://acplt.org/DataSpecifciations/Example/Identification - GlobalReference + ExternalReference GlobalReference @@ -2433,29 +2393,29 @@ - + de Test Specification - - + + en-us TestSpecification - + - + de Test Spec - - + + en-us TestSpec - + SpaceUnit - GlobalReference - + ExternalReference + GlobalReference http://acplt.org/Units/SpaceUnit @@ -2466,14 +2426,14 @@ SU REAL_MEASURE - + de Dies ist eine Data Specification für Testzwecke - - + + en-us This is a DataSpecification for testing purposes - + string @@ -2481,7 +2441,7 @@ http://acplt.org/ValueId/ExampleValueId - GlobalReference + ExternalReference GlobalReference @@ -2493,7 +2453,7 @@ http://acplt.org/ValueId/ExampleValueId2 - GlobalReference + ExternalReference GlobalReference @@ -2505,14 +2465,13 @@ TEST - Max - GlobalReference + ExternalReference GlobalReference diff --git a/dataformat-xml/src/test/resources/xmlExample.xml b/dataformat-xml/src/test/resources/xmlExample.xml index e804aeeb1..5e37d5016 100644 --- a/dataformat-xml/src/test/resources/xmlExample.xml +++ b/dataformat-xml/src/test/resources/xmlExample.xml @@ -1,28 +1,20 @@ - + xsi:schemaLocation="https://admin-shell.io/aas/3/0 AAS.xsd"> ExampleMotor http://customer.com/aas/9175_7013_7091_9168 Instance - - GlobalReference - - - AssetAdministrationShell - http://customer.com/assets/KHBVZJSQKIY - - - + http://customer.com/assets/KHBVZJSQKIY EquipmentID 538fd1b3-f99f-4a52-9c75-72e9fa921270 - GlobalReference + ExternalReference GlobalReference @@ -35,7 +27,7 @@ DeviceID QjYgPggjwkiHk4RrQiYSLg== - GlobalReference + ExternalReference GlobalReference @@ -52,7 +44,7 @@ - GlobalReference + ExternalReference Submodel @@ -61,7 +53,7 @@ - GlobalReference + ExternalReference Submodel @@ -70,7 +62,7 @@ - GlobalReference + ExternalReference Submodel @@ -85,9 +77,8 @@ TechnicalData http://i40.customer.com/type/1/1/7A7104BDAB57E184 - Instance - GlobalReference + ExternalReference GlobalReference @@ -99,9 +90,8 @@ PARAMETER MaxRotationSpeed - Instance - GlobalReference + ExternalReference ConceptDescription @@ -121,9 +111,8 @@ OperatingManual - Instance - GlobalReference + ExternalReference ConceptDescription @@ -134,9 +123,8 @@ Title - Instance - GlobalReference + ExternalReference ConceptDescription @@ -149,9 +137,8 @@ DigitalFile_PDF - Instance - GlobalReference + ExternalReference ConceptDescription @@ -174,9 +161,8 @@ VARIABLE RotationSpeed - Instance - GlobalReference + ExternalReference ConceptDescription @@ -197,7 +183,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -208,33 +194,33 @@ - + EN Title - - + + DE Titel - + - + EN Title - - + + DE Titel - + ExampleString ExampleString STRING_TRANSLATABLE - + EN SprachabhängigerTiteldesDokuments. - + @@ -247,7 +233,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -258,33 +244,33 @@ - + EN DigitalFile - - + + EN DigitalFile - + - + EN DigitalFile - - + + DE DigitaleDatei - + ExampleString ExampleString STRING - + EN A file representing the document version. In addition to the mandatory PDF file, other files can be specified. - + @@ -296,13 +282,13 @@ MaxRotationSpeed 2 - 2.1 + 1 0173-1#02-BAA120#008 - GlobalReference + ExternalReference GlobalReference @@ -313,18 +299,18 @@ - + de max.Drehzahl - - + + en Max.rotationspeed - + 1/min - GlobalReference + ExternalReference GlobalReference @@ -335,14 +321,14 @@ ExampleString REAL_MEASURE - + de HöchstezulässigeDrehzahl,mitwelcherderMotoroderdieSpeiseinheitbetriebenwerdendarf - - + + EN Greatestpermissiblerotationspeedwithwhichthemotororfeedingunitmaybeoperated - + @@ -356,7 +342,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -367,28 +353,28 @@ - + DE AktuelleDrehzahl - - + + EN Actualrotationspeed - + - + DE AktuelleDrehzahl - - + + EN - ActualRotationSpeed - + ActRotationSpeed + 1/min - GlobalReference + ExternalReference GlobalReference @@ -399,14 +385,14 @@ ExampleString REAL_MEASURE - + DE Aktuelle Drehzahl, mitwelcher der Motor oder die Speiseinheit betrieben wird - - + + EN Actual rotationspeed with which the motor or feedingunit is operated - + @@ -419,7 +405,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -430,29 +416,29 @@ - + EN Document - + - + EN Document - - + + DE Dokument - + ExampleString [ISO15519-1:2010] STRING - + EN Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann. - + diff --git a/dataformat-xml/src/test/resources/xmlExampleWithModifiedPrefix.xml b/dataformat-xml/src/test/resources/xmlExampleWithModifiedPrefix.xml index accbfb240..2db066ec3 100644 --- a/dataformat-xml/src/test/resources/xmlExampleWithModifiedPrefix.xml +++ b/dataformat-xml/src/test/resources/xmlExampleWithModifiedPrefix.xml @@ -1,27 +1,20 @@ - + + xsi:schemaLocation="https://admin-shell.io/aas/3/0 AAS.xsd"> ExampleMotor http://customer.com/aas/9175_7013_7091_9168 Instance - - GlobalReference - - - AssetAdministrationShell - http://customer.com/assets/KHBVZJSQKIY - - - + http://customer.com/assets/KHBVZJSQKIY EquipmentID 538fd1b3-f99f-4a52-9c75-72e9fa921270 - GlobalReference + ExternalReference GlobalReference @@ -34,7 +27,7 @@ DeviceID QjYgPggjwkiHk4RrQiYSLg== - GlobalReference + ExternalReference GlobalReference @@ -51,7 +44,7 @@ - GlobalReference + ExternalReference Submodel @@ -60,7 +53,7 @@ - GlobalReference + ExternalReference Submodel @@ -69,7 +62,7 @@ - GlobalReference + ExternalReference Submodel @@ -84,9 +77,8 @@ TechnicalData http://i40.customer.com/type/1/1/7A7104BDAB57E184 - Instance - GlobalReference + ExternalReference GlobalReference @@ -98,9 +90,8 @@ PARAMETER MaxRotationSpeed - Instance - GlobalReference + ExternalReference ConceptDescription @@ -120,9 +111,8 @@ OperatingManual - Instance - GlobalReference + ExternalReference ConceptDescription @@ -133,9 +123,8 @@ Title - Instance - GlobalReference + ExternalReference ConceptDescription @@ -148,9 +137,8 @@ DigitalFile_PDF - Instance - GlobalReference + ExternalReference ConceptDescription @@ -173,9 +161,8 @@ VARIABLE RotationSpeed - Instance - GlobalReference + ExternalReference ConceptDescription @@ -196,7 +183,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -207,33 +194,33 @@ - + EN Title - - + + DE Titel - + - + EN Title - - + + DE Titel - + ExampleString ExampleString STRING_TRANSLATABLE - + EN SprachabhängigerTiteldesDokuments. - + @@ -246,7 +233,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -257,33 +244,33 @@ - + EN DigitalFile - - + + EN DigitalFile - + - + EN DigitalFile - - + + DE DigitaleDatei - + ExampleString ExampleString STRING - + EN A file representing the document version. In addition to the mandatory PDF file, other files can be specified. - + @@ -295,13 +282,13 @@ MaxRotationSpeed 2 - 2.1 + 1 0173-1#02-BAA120#008 - GlobalReference + ExternalReference GlobalReference @@ -312,18 +299,18 @@ - + de max.Drehzahl - - + + en Max.rotationspeed - + 1/min - GlobalReference + ExternalReference GlobalReference @@ -334,14 +321,14 @@ ExampleString REAL_MEASURE - + de HöchstezulässigeDrehzahl,mitwelcherderMotoroderdieSpeiseinheitbetriebenwerdendarf - - + + EN Greatestpermissiblerotationspeedwithwhichthemotororfeedingunitmaybeoperated - + @@ -355,7 +342,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -366,28 +353,28 @@ - + DE AktuelleDrehzahl - - + + EN Actualrotationspeed - + - + DE AktuelleDrehzahl - - + + EN - ActualRotationSpeed - + ActRotationSpeed + 1/min - GlobalReference + ExternalReference GlobalReference @@ -398,14 +385,14 @@ ExampleString REAL_MEASURE - + DE Aktuelle Drehzahl, mitwelcher der Motor oder die Speiseinheit betrieben wird - - + + EN Actual rotationspeed with which the motor or feedingunit is operated - + @@ -418,7 +405,7 @@ - GlobalReference + ExternalReference GlobalReference @@ -429,29 +416,29 @@ - + EN Document - + - + EN Document - - + + DE Dokument - + ExampleString [ISO15519-1:2010] STRING - + EN Feste und geordnete Menge von für die Verwendung durch Personen bestimmte Informationen, die verwaltet und als Einheit zwischen Benutzern und System ausgetauscht werden kann. - + diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AasSubmodelElements.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AASSubmodelElements.java similarity index 50% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AasSubmodelElements.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AASSubmodelElements.java index b4ef8e5ff..23009d63b 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AasSubmodelElements.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AASSubmodelElements.java @@ -22,92 +22,92 @@ /** * Enumeration of all possible elements of a 'SubmodelElementList'. */ -@IRI("aas:AasSubmodelElements") -public enum AasSubmodelElements { +@IRI("aas:AASSubmodelElements") +public enum AASSubmodelElements { /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/AnnotatedRelationshipElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/AnnotatedRelationshipElement") ANNOTATED_RELATIONSHIP_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/BasicEventElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/BasicEventElement") BASIC_EVENT_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/Blob") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/Blob") BLOB, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/Capability") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/Capability") CAPABILITY, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/DataElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/DataElement") DATA_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/Entity") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/Entity") ENTITY, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/EventElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/EventElement") EVENT_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/File") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/File") FILE, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/MultiLanguageProperty") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/MultiLanguageProperty") MULTI_LANGUAGE_PROPERTY, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/Operation") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/Operation") OPERATION, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/Property") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/Property") PROPERTY, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/Range") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/Range") RANGE, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/ReferenceElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/ReferenceElement") REFERENCE_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/RelationshipElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/RelationshipElement") RELATIONSHIP_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/SubmodelElement") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/SubmodelElement") SUBMODEL_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/SubmodelElementCollection") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/SubmodelElementCollection") SUBMODEL_ELEMENT_COLLECTION, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AasSubmodelElements/SubmodelElementList") + @IRI("https://admin-shell.io/aas/3/0/AASSubmodelElements/SubmodelElementList") SUBMODEL_ELEMENT_LIST; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AbstractLangString.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AbstractLangString.java new file mode 100644 index 000000000..c50f75ab4 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AbstractLangString.java @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + + + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; + + +/** + * Strings with language tags + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = LangStringDefinitionTypeIec61360.class), + @KnownSubtypes.Type(value = LangStringPreferredNameTypeIec61360.class), + @KnownSubtypes.Type(value = LangStringShortNameTypeIec61360.class), + @KnownSubtypes.Type(value = LangStringNameType.class), + @KnownSubtypes.Type(value = LangStringTextType.class) +}) +public interface AbstractLangString { + + /** + * Language tag conforming to BCP 47 + * + * More information under https://admin-shell.io/aas/3/0/AbstractLangString/language + * + * @return Returns the String for the property language. + */ + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/language") + String getLanguage(); + + /** + * Language tag conforming to BCP 47 + * + * More information under https://admin-shell.io/aas/3/0/AbstractLangString/language + * + * @param language desired value for the property language. + */ + void setLanguage(String language); + + /** + * Text in the 'language' + * + * More information under https://admin-shell.io/aas/3/0/AbstractLangString/text + * + * @return Returns the String for the property text. + */ + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/text") + String getText(); + + /** + * Text in the 'language' + * + * More information under https://admin-shell.io/aas/3/0/AbstractLangString/text + * + * @param text desired value for the property text. + */ + void setText(String text); + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AdministrativeInformation.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AdministrativeInformation.java index bbc83bede..e5c3ff60f 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AdministrativeInformation.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AdministrativeInformation.java @@ -28,39 +28,77 @@ }) public interface AdministrativeInformation extends HasDataSpecification { + /** + * The subject ID of the subject responsible for making the element. + * + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/creator + * + * @return Returns the Reference for the property creator. + */ + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/creator") + Reference getCreator(); + + /** + * The subject ID of the subject responsible for making the element. + * + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/creator + * + * @param creator desired value for the property creator. + */ + void setCreator(Reference creator); + /** * Revision of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/revision + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/revision * * @return Returns the String for the property revision. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/revision") + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/revision") String getRevision(); /** * Revision of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/revision + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/revision * * @param revision desired value for the property revision. */ void setRevision(String revision); + /** + * Identifier of the template that guided the creation of the element. + * + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/templateID + * + * @return Returns the String for the property templateID. + */ + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/templateID") + String getTemplateID(); + + /** + * Identifier of the template that guided the creation of the element. + * + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/templateID + * + * @param templateID desired value for the property templateID. + */ + void setTemplateID(String templateID); + /** * Version of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/version + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/version * * @return Returns the String for the property version. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/version") + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/version") String getVersion(); /** * Version of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/version + * More information under https://admin-shell.io/aas/3/0/AdministrativeInformation/version * * @param version desired value for the property version. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AnnotatedRelationshipElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AnnotatedRelationshipElement.java index d665254b4..841ea2032 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AnnotatedRelationshipElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AnnotatedRelationshipElement.java @@ -34,20 +34,18 @@ public interface AnnotatedRelationshipElement extends RelationshipElement { * A data element that represents an annotation that holds for the relationship between the two * elements * - * More information under - * https://admin-shell.io/aas/3/0/RC02/AnnotatedRelationshipElement/annotations + * More information under https://admin-shell.io/aas/3/0/AnnotatedRelationshipElement/annotations * * @return Returns the List of DataElements for the property annotations. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AnnotatedRelationshipElement/annotations") + @IRI("https://admin-shell.io/aas/3/0/AnnotatedRelationshipElement/annotations") List getAnnotations(); /** * A data element that represents an annotation that holds for the relationship between the two * elements * - * More information under - * https://admin-shell.io/aas/3/0/RC02/AnnotatedRelationshipElement/annotations + * More information under https://admin-shell.io/aas/3/0/AnnotatedRelationshipElement/annotations * * @param annotations desired value for the property annotations. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetAdministrationShell.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetAdministrationShell.java index 71cba3dc5..238314362 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetAdministrationShell.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetAdministrationShell.java @@ -32,19 +32,17 @@ public interface AssetAdministrationShell extends HasDataSpecification, Identifi /** * Meta-information about the asset the AAS is representing. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/assetInformation + * More information under https://admin-shell.io/aas/3/0/AssetAdministrationShell/assetInformation * * @return Returns the AssetInformation for the property assetInformation. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/assetInformation") + @IRI("https://admin-shell.io/aas/3/0/AssetAdministrationShell/assetInformation") AssetInformation getAssetInformation(); /** * Meta-information about the asset the AAS is representing. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/assetInformation + * More information under https://admin-shell.io/aas/3/0/AssetAdministrationShell/assetInformation * * @param assetInformation desired value for the property assetInformation. */ @@ -53,17 +51,17 @@ public interface AssetAdministrationShell extends HasDataSpecification, Identifi /** * The reference to the AAS the AAS was derived from. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/derivedFrom + * More information under https://admin-shell.io/aas/3/0/AssetAdministrationShell/derivedFrom * * @return Returns the Reference for the property derivedFrom. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/derivedFrom") + @IRI("https://admin-shell.io/aas/3/0/AssetAdministrationShell/derivedFrom") Reference getDerivedFrom(); /** * The reference to the AAS the AAS was derived from. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/derivedFrom + * More information under https://admin-shell.io/aas/3/0/AssetAdministrationShell/derivedFrom * * @param derivedFrom desired value for the property derivedFrom. */ @@ -72,17 +70,17 @@ public interface AssetAdministrationShell extends HasDataSpecification, Identifi /** * References to submodels of the AAS. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/submodels + * More information under https://admin-shell.io/aas/3/0/AssetAdministrationShell/submodels * * @return Returns the List of References for the property submodels. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/submodels") + @IRI("https://admin-shell.io/aas/3/0/AssetAdministrationShell/submodels") List getSubmodels(); /** * References to submodels of the AAS. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/submodels + * More information under https://admin-shell.io/aas/3/0/AssetAdministrationShell/submodels * * @param submodels desired value for the property submodels. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetInformation.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetInformation.java index b8f349253..517cb9db6 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetInformation.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetInformation.java @@ -33,36 +33,57 @@ public interface AssetInformation { /** * Denotes whether the Asset is of kind 'Type' or 'Instance'. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/assetKind + * More information under https://admin-shell.io/aas/3/0/AssetInformation/assetKind * * @return Returns the AssetKind for the property assetKind. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/assetKind") + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/assetKind") AssetKind getAssetKind(); /** * Denotes whether the Asset is of kind 'Type' or 'Instance'. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/assetKind + * More information under https://admin-shell.io/aas/3/0/AssetInformation/assetKind * * @param assetKind desired value for the property assetKind. */ void setAssetKind(AssetKind assetKind); + /** + * In case 'assetKind' is applicable the 'assetType' is the asset ID of the type asset of the asset + * under consideration as identified by 'globalAssetID'. + * + * More information under https://admin-shell.io/aas/3/0/AssetInformation/assetType + * + * @return Returns the String for the property assetType. + */ + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/assetType") + String getAssetType(); + + /** + * In case 'assetKind' is applicable the 'assetType' is the asset ID of the type asset of the asset + * under consideration as identified by 'globalAssetID'. + * + * More information under https://admin-shell.io/aas/3/0/AssetInformation/assetType + * + * @param assetType desired value for the property assetType. + */ + void setAssetType(String assetType); + /** * Thumbnail of the asset represented by the Asset Administration Shell. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/defaultThumbnail + * More information under https://admin-shell.io/aas/3/0/AssetInformation/defaultThumbnail * * @return Returns the Resource for the property defaultThumbnail. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/defaultThumbnail") + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/defaultThumbnail") Resource getDefaultThumbnail(); /** * Thumbnail of the asset represented by the Asset Administration Shell. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/defaultThumbnail + * More information under https://admin-shell.io/aas/3/0/AssetInformation/defaultThumbnail * * @param defaultThumbnail desired value for the property defaultThumbnail. */ @@ -71,41 +92,41 @@ public interface AssetInformation { /** * Global identifier of the asset the AAS is representing. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/globalAssetId + * More information under https://admin-shell.io/aas/3/0/AssetInformation/globalAssetID * - * @return Returns the Reference for the property globalAssetId. + * @return Returns the String for the property globalAssetID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/globalAssetId") - Reference getGlobalAssetId(); + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/globalAssetID") + String getGlobalAssetID(); /** * Global identifier of the asset the AAS is representing. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/globalAssetId + * More information under https://admin-shell.io/aas/3/0/AssetInformation/globalAssetID * - * @param globalAssetId desired value for the property globalAssetId. + * @param globalAssetID desired value for the property globalAssetID. */ - void setGlobalAssetId(Reference globalAssetId); + void setGlobalAssetID(String globalAssetID); /** * Additional domain-specific, typically proprietary identifier for the asset like e.g., serial * number etc. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/specificAssetIds + * More information under https://admin-shell.io/aas/3/0/AssetInformation/specificAssetIds * - * @return Returns the List of SpecificAssetIds for the property specificAssetIds. + * @return Returns the List of SpecificAssetIDs for the property specificAssetIds. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/specificAssetIds") - List getSpecificAssetIds(); + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/specificAssetIds") + List getSpecificAssetIds(); /** * Additional domain-specific, typically proprietary identifier for the asset like e.g., serial * number etc. * - * More information under https://admin-shell.io/aas/3/0/RC02/AssetInformation/specificAssetIds + * More information under https://admin-shell.io/aas/3/0/AssetInformation/specificAssetIds * * @param specificAssetIds desired value for the property specificAssetIds. */ - void setSpecificAssetIds(List specificAssetIds); + void setSpecificAssetIds(List specificAssetIds); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetKind.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetKind.java index d74952f03..70ea05c93 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetKind.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/AssetKind.java @@ -26,16 +26,21 @@ public enum AssetKind { /** - * concrete, clearly identifiable component of a certain type + * Instance asset */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetKind/Instance") + @IRI("https://admin-shell.io/aas/3/0/AssetKind/Instance") INSTANCE, /** - * hardware or software element which specifies the common attributes shared by all instances of the - * type + * Neither a type asset nor an instance asset */ - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetKind/Type") + @IRI("https://admin-shell.io/aas/3/0/AssetKind/NotApplicable") + NOT_APPLICABLE, + + /** + * Type asset + */ + @IRI("https://admin-shell.io/aas/3/0/AssetKind/Type") TYPE; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/BasicEventElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/BasicEventElement.java index 8af5b27d9..2364f88f2 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/BasicEventElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/BasicEventElement.java @@ -31,17 +31,17 @@ public interface BasicEventElement extends EventElement { /** * Direction of event. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/direction + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/direction * * @return Returns the Direction for the property direction. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/direction") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/direction") Direction getDirection(); /** * Direction of event. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/direction + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/direction * * @param direction desired value for the property direction. */ @@ -50,17 +50,17 @@ public interface BasicEventElement extends EventElement { /** * Timestamp in UTC, when the last event was received (input direction) or sent (output direction). * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/lastUpdate + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/lastUpdate * * @return Returns the String for the property lastUpdate. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/lastUpdate") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/lastUpdate") String getLastUpdate(); /** * Timestamp in UTC, when the last event was received (input direction) or sent (output direction). * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/lastUpdate + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/lastUpdate * * @param lastUpdate desired value for the property lastUpdate. */ @@ -69,17 +69,17 @@ public interface BasicEventElement extends EventElement { /** * For input direction: not applicable. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/maxInterval + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/maxInterval * * @return Returns the String for the property maxInterval. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/maxInterval") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/maxInterval") String getMaxInterval(); /** * For input direction: not applicable. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/maxInterval + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/maxInterval * * @param maxInterval desired value for the property maxInterval. */ @@ -90,11 +90,11 @@ public interface BasicEventElement extends EventElement { * Refers to a 'Submodel', 'SubmodelElementList', 'SubmodelElementCollection' or 'Entity', which * contains 'DataElement''s describing the proprietary specification for the message broker. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageBroker + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/messageBroker * * @return Returns the Reference for the property messageBroker. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageBroker") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/messageBroker") Reference getMessageBroker(); /** @@ -102,7 +102,7 @@ public interface BasicEventElement extends EventElement { * Refers to a 'Submodel', 'SubmodelElementList', 'SubmodelElementCollection' or 'Entity', which * contains 'DataElement''s describing the proprietary specification for the message broker. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageBroker + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/messageBroker * * @param messageBroker desired value for the property messageBroker. */ @@ -112,18 +112,18 @@ public interface BasicEventElement extends EventElement { * Information for the outer message infrastructure for scheduling the event to the respective * communication channel. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageTopic + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/messageTopic * * @return Returns the String for the property messageTopic. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageTopic") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/messageTopic") String getMessageTopic(); /** * Information for the outer message infrastructure for scheduling the event to the respective * communication channel. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageTopic + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/messageTopic * * @param messageTopic desired value for the property messageTopic. */ @@ -133,18 +133,18 @@ public interface BasicEventElement extends EventElement { * For input direction, reports on the maximum frequency, the software entity behind the respective * Referable can handle input events. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/minInterval + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/minInterval * * @return Returns the String for the property minInterval. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/minInterval") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/minInterval") String getMinInterval(); /** * For input direction, reports on the maximum frequency, the software entity behind the respective * Referable can handle input events. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/minInterval + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/minInterval * * @param minInterval desired value for the property minInterval. */ @@ -154,18 +154,18 @@ public interface BasicEventElement extends EventElement { * Reference to the 'Referable', which defines the scope of the event. Can be * 'AssetAdministrationShell', 'Submodel', or 'SubmodelElement'. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/observed + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/observed * * @return Returns the Reference for the property observed. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/observed") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/observed") Reference getObserved(); /** * Reference to the 'Referable', which defines the scope of the event. Can be * 'AssetAdministrationShell', 'Submodel', or 'SubmodelElement'. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/observed + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/observed * * @param observed desired value for the property observed. */ @@ -174,17 +174,17 @@ public interface BasicEventElement extends EventElement { /** * State of event. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/state + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/state * * @return Returns the StateOfEvent for the property state. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/state") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/state") StateOfEvent getState(); /** * State of event. * - * More information under https://admin-shell.io/aas/3/0/RC02/BasicEventElement/state + * More information under https://admin-shell.io/aas/3/0/BasicEventElement/state * * @param state desired value for the property state. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Blob.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Blob.java index 4bfe5e465..8ea957078 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Blob.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Blob.java @@ -32,17 +32,17 @@ public interface Blob extends DataElement { /** * Content type of the content of the 'Blob'. * - * More information under https://admin-shell.io/aas/3/0/RC02/Blob/contentType + * More information under https://admin-shell.io/aas/3/0/Blob/contentType * * @return Returns the String for the property contentType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Blob/contentType") + @IRI("https://admin-shell.io/aas/3/0/Blob/contentType") String getContentType(); /** * Content type of the content of the 'Blob'. * - * More information under https://admin-shell.io/aas/3/0/RC02/Blob/contentType + * More information under https://admin-shell.io/aas/3/0/Blob/contentType * * @param contentType desired value for the property contentType. */ @@ -51,17 +51,17 @@ public interface Blob extends DataElement { /** * The value of the 'Blob' instance of a blob data element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Blob/value + * More information under https://admin-shell.io/aas/3/0/Blob/value * * @return Returns the byte[] for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Blob/value") + @IRI("https://admin-shell.io/aas/3/0/Blob/value") byte[] getValue(); /** * The value of the 'Blob' instance of a blob data element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Blob/value + * More information under https://admin-shell.io/aas/3/0/Blob/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ConceptDescription.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ConceptDescription.java index 9ec8b2308..a18fe9266 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ConceptDescription.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ConceptDescription.java @@ -33,17 +33,17 @@ public interface ConceptDescription extends HasDataSpecification, Identifiable { /** * Reference to an external definition the concept is compatible to or was derived from. * - * More information under https://admin-shell.io/aas/3/0/RC02/ConceptDescription/isCaseOf + * More information under https://admin-shell.io/aas/3/0/ConceptDescription/isCaseOf * * @return Returns the List of References for the property isCaseOf. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ConceptDescription/isCaseOf") + @IRI("https://admin-shell.io/aas/3/0/ConceptDescription/isCaseOf") List getIsCaseOf(); /** * Reference to an external definition the concept is compatible to or was derived from. * - * More information under https://admin-shell.io/aas/3/0/RC02/ConceptDescription/isCaseOf + * More information under https://admin-shell.io/aas/3/0/ConceptDescription/isCaseOf * * @param isCaseOf desired value for the property isCaseOf. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationContent.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationContent.java index 41b9e9d64..c6ba9d955 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationContent.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationContent.java @@ -25,8 +25,7 @@ * and meta information about the template itself. */ @KnownSubtypes({ - @KnownSubtypes.Type(value = DataSpecificationIEC61360.class), - @KnownSubtypes.Type(value = DataSpecificationPhysicalUnit.class) + @KnownSubtypes.Type(value = DataSpecificationIec61360.class) }) public interface DataSpecificationContent { diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationIEC61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationIEC61360.java deleted file mode 100644 index c6f5b49ef..000000000 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationIEC61360.java +++ /dev/null @@ -1,265 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - */ - -package org.eclipse.digitaltwin.aas4j.v3.model; - -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIEC61360; - -import java.util.List; - - -/** - * Content of data specification template for concept descriptions for properties, values and value - * lists conformant to IEC 61360. - */ -@KnownSubtypes({ - @KnownSubtypes.Type(value = DefaultDataSpecificationIEC61360.class) -}) -public interface DataSpecificationIEC61360 extends DataSpecificationContent { - - /** - * Data Type - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/dataType - * - * @return Returns the DataTypeIEC61360 for the property dataType. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/dataType") - DataTypeIEC61360 getDataType(); - - /** - * Data Type - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/dataType - * - * @param dataType desired value for the property dataType. - */ - void setDataType(DataTypeIEC61360 dataType); - - /** - * Definition in different languages - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/definition - * - * @return Returns the List of LangStrings for the property definition. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/definition") - List getDefinition(); - - /** - * Definition in different languages - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/definition - * - * @param definition desired value for the property definition. - */ - void setDefinition(List definition); - - /** - * Set of levels. - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/levelType - * - * @return Returns the LevelType for the property levelType. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/levelType") - LevelType getLevelType(); - - /** - * Set of levels. - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/levelType - * - * @param levelType desired value for the property levelType. - */ - void setLevelType(LevelType levelType); - - /** - * Preferred name - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/preferredName - * - * @return Returns the List of LangStrings for the property preferredName. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/preferredName") - List getPreferredName(); - - /** - * Preferred name - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/preferredName - * - * @param preferredName desired value for the property preferredName. - */ - void setPreferredName(List preferredName); - - /** - * Short name - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/shortName - * - * @return Returns the List of LangStrings for the property shortName. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/shortName") - List getShortName(); - - /** - * Short name - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/shortName - * - * @param shortName desired value for the property shortName. - */ - void setShortName(List shortName); - - /** - * Source of definition - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/sourceOfDefinition - * - * @return Returns the String for the property sourceOfDefinition. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/sourceOfDefinition") - String getSourceOfDefinition(); - - /** - * Source of definition - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/sourceOfDefinition - * - * @param sourceOfDefinition desired value for the property sourceOfDefinition. - */ - void setSourceOfDefinition(String sourceOfDefinition); - - /** - * Symbol - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/symbol - * - * @return Returns the String for the property symbol. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/symbol") - String getSymbol(); - - /** - * Symbol - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/symbol - * - * @param symbol desired value for the property symbol. - */ - void setSymbol(String symbol); - - /** - * Unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unit - * - * @return Returns the String for the property unit. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unit") - String getUnit(); - - /** - * Unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unit - * - * @param unit desired value for the property unit. - */ - void setUnit(String unit); - - /** - * Unique unit id - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unitId - * - * @return Returns the Reference for the property unitId. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unitId") - Reference getUnitId(); - - /** - * Unique unit id - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unitId - * - * @param unitId desired value for the property unitId. - */ - void setUnitId(Reference unitId); - - /** - * Value - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/value - * - * @return Returns the String for the property value. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/value") - String getValue(); - - /** - * Value - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/value - * - * @param value desired value for the property value. - */ - void setValue(String value); - - /** - * Value Format - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueFormat - * - * @return Returns the String for the property valueFormat. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueFormat") - String getValueFormat(); - - /** - * Value Format - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueFormat - * - * @param valueFormat desired value for the property valueFormat. - */ - void setValueFormat(String valueFormat); - - /** - * List of allowed values - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueList - * - * @return Returns the ValueList for the property valueList. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueList") - ValueList getValueList(); - - /** - * List of allowed values - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueList - * - * @param valueList desired value for the property valueList. - */ - void setValueList(ValueList valueList); - -} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationIec61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationIec61360.java new file mode 100644 index 000000000..c0b5a1b18 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationIec61360.java @@ -0,0 +1,263 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationIec61360; + +import java.util.List; + + +/** + * Content of data specification template for concept descriptions for properties, values and value + * lists conformant to IEC 61360. + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultDataSpecificationIec61360.class) +}) +public interface DataSpecificationIec61360 extends DataSpecificationContent { + + /** + * Data Type + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/dataType + * + * @return Returns the DataTypeIec61360 for the property dataType. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/dataType") + DataTypeIec61360 getDataType(); + + /** + * Data Type + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/dataType + * + * @param dataType desired value for the property dataType. + */ + void setDataType(DataTypeIec61360 dataType); + + /** + * Definition in different languages + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/definition + * + * @return Returns the List of LangStringDefinitionTypeIEC61360s for the property definition. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/definition") + List getDefinition(); + + /** + * Definition in different languages + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/definition + * + * @param definition desired value for the property definition. + */ + void setDefinition(List definition); + + /** + * Set of levels. + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/levelType + * + * @return Returns the LevelType for the property levelType. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/levelType") + LevelType getLevelType(); + + /** + * Set of levels. + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/levelType + * + * @param levelType desired value for the property levelType. + */ + void setLevelType(LevelType levelType); + + /** + * Preferred name + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/preferredName + * + * @return Returns the List of LangStringPreferredNameTypeIEC61360s for the property preferredName. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/preferredName") + List getPreferredName(); + + /** + * Preferred name + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/preferredName + * + * @param preferredName desired value for the property preferredName. + */ + void setPreferredName(List preferredName); + + /** + * Short name + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/shortName + * + * @return Returns the List of LangStringShortNameTypeIEC61360s for the property shortName. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/shortName") + List getShortName(); + + /** + * Short name + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/shortName + * + * @param shortName desired value for the property shortName. + */ + void setShortName(List shortName); + + /** + * Source of definition + * + * More information under + * https://admin-shell.io/aas/3/0/DataSpecificationIec61360/sourceOfDefinition + * + * @return Returns the String for the property sourceOfDefinition. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/sourceOfDefinition") + String getSourceOfDefinition(); + + /** + * Source of definition + * + * More information under + * https://admin-shell.io/aas/3/0/DataSpecificationIec61360/sourceOfDefinition + * + * @param sourceOfDefinition desired value for the property sourceOfDefinition. + */ + void setSourceOfDefinition(String sourceOfDefinition); + + /** + * Symbol + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/symbol + * + * @return Returns the String for the property symbol. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/symbol") + String getSymbol(); + + /** + * Symbol + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/symbol + * + * @param symbol desired value for the property symbol. + */ + void setSymbol(String symbol); + + /** + * Unit + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/unit + * + * @return Returns the String for the property unit. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/unit") + String getUnit(); + + /** + * Unit + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/unit + * + * @param unit desired value for the property unit. + */ + void setUnit(String unit); + + /** + * Unique unit id + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/unitID + * + * @return Returns the Reference for the property unitID. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/unitID") + Reference getUnitID(); + + /** + * Unique unit id + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/unitID + * + * @param unitID desired value for the property unitID. + */ + void setUnitID(Reference unitID); + + /** + * Value + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/value + * + * @return Returns the String for the property value. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/value") + String getValue(); + + /** + * Value + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/value + * + * @param value desired value for the property value. + */ + void setValue(String value); + + /** + * Value Format + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/valueFormat + * + * @return Returns the String for the property valueFormat. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/valueFormat") + String getValueFormat(); + + /** + * Value Format + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/valueFormat + * + * @param valueFormat desired value for the property valueFormat. + */ + void setValueFormat(String valueFormat); + + /** + * List of allowed values + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/valueList + * + * @return Returns the ValueList for the property valueList. + */ + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/valueList") + ValueList getValueList(); + + /** + * List of allowed values + * + * More information under https://admin-shell.io/aas/3/0/DataSpecificationIec61360/valueList + * + * @param valueList desired value for the property valueList. + */ + void setValueList(ValueList valueList); + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationPhysicalUnit.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationPhysicalUnit.java deleted file mode 100644 index f4b8c0374..000000000 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataSpecificationPhysicalUnit.java +++ /dev/null @@ -1,292 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - */ - -package org.eclipse.digitaltwin.aas4j.v3.model; - -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultDataSpecificationPhysicalUnit; - -import java.util.List; - - -/** -*/ -@KnownSubtypes({ - @KnownSubtypes.Type(value = DefaultDataSpecificationPhysicalUnit.class) -}) -public interface DataSpecificationPhysicalUnit extends DataSpecificationContent { - - /** - * Conversion factor - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/conversionFactor - * - * @return Returns the String for the property conversionFactor. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/conversionFactor") - String getConversionFactor(); - - /** - * Conversion factor - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/conversionFactor - * - * @param conversionFactor desired value for the property conversionFactor. - */ - void setConversionFactor(String conversionFactor); - - /** - * Definition in different languages - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/definition - * - * @return Returns the List of LangStrings for the property definition. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/definition") - List getDefinition(); - - /** - * Definition in different languages - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/definition - * - * @param definition desired value for the property definition. - */ - void setDefinition(List definition); - - /** - * Notation of physical unit conformant to DIN - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/dinNotation - * - * @return Returns the String for the property dinNotation. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/dinNotation") - String getDinNotation(); - - /** - * Notation of physical unit conformant to DIN - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/dinNotation - * - * @param dinNotation desired value for the property dinNotation. - */ - void setDinNotation(String dinNotation); - - /** - * Code of physical unit conformant to ECE - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceCode - * - * @return Returns the String for the property eceCode. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceCode") - String getEceCode(); - - /** - * Code of physical unit conformant to ECE - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceCode - * - * @param eceCode desired value for the property eceCode. - */ - void setEceCode(String eceCode); - - /** - * Name of physical unit conformant to ECE - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceName - * - * @return Returns the String for the property eceName. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceName") - String getEceName(); - - /** - * Name of physical unit conformant to ECE - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceName - * - * @param eceName desired value for the property eceName. - */ - void setEceName(String eceName); - - /** - * Name of NIST physical unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/nistName - * - * @return Returns the String for the property nistName. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/nistName") - String getNistName(); - - /** - * Name of NIST physical unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/nistName - * - * @param nistName desired value for the property nistName. - */ - void setNistName(String nistName); - - /** - * Registration authority ID - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/registrationAuthorityId - * - * @return Returns the String for the property registrationAuthorityId. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/registrationAuthorityId") - String getRegistrationAuthorityId(); - - /** - * Registration authority ID - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/registrationAuthorityId - * - * @param registrationAuthorityId desired value for the property registrationAuthorityId. - */ - void setRegistrationAuthorityId(String registrationAuthorityId); - - /** - * Name of SI physical unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siName - * - * @return Returns the String for the property siName. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siName") - String getSiName(); - - /** - * Name of SI physical unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siName - * - * @param siName desired value for the property siName. - */ - void setSiName(String siName); - - /** - * Notation of SI physical unit - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siNotation - * - * @return Returns the String for the property siNotation. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siNotation") - String getSiNotation(); - - /** - * Notation of SI physical unit - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siNotation - * - * @param siNotation desired value for the property siNotation. - */ - void setSiNotation(String siNotation); - - /** - * Source of definition - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/sourceOfDefinition - * - * @return Returns the String for the property sourceOfDefinition. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/sourceOfDefinition") - String getSourceOfDefinition(); - - /** - * Source of definition - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/sourceOfDefinition - * - * @param sourceOfDefinition desired value for the property sourceOfDefinition. - */ - void setSourceOfDefinition(String sourceOfDefinition); - - /** - * Supplier - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/supplier - * - * @return Returns the String for the property supplier. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/supplier") - String getSupplier(); - - /** - * Supplier - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/supplier - * - * @param supplier desired value for the property supplier. - */ - void setSupplier(String supplier); - - /** - * Name of the physical unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitName - * - * @return Returns the String for the property unitName. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitName") - String getUnitName(); - - /** - * Name of the physical unit - * - * More information under https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitName - * - * @param unitName desired value for the property unitName. - */ - void setUnitName(String unitName); - - /** - * Symbol for the physical unit - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitSymbol - * - * @return Returns the String for the property unitSymbol. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitSymbol") - String getUnitSymbol(); - - /** - * Symbol for the physical unit - * - * More information under - * https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitSymbol - * - * @param unitSymbol desired value for the property unitSymbol. - */ - void setUnitSymbol(String unitSymbol); - -} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeDefXSD.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeDefXSD.java new file mode 100644 index 000000000..7452b2596 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeDefXSD.java @@ -0,0 +1,178 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + + + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; + + +/** + * Enumeration listing all XSD anySimpleTypes + */ +@IRI("aas:DataTypeDefXSD") +public enum DataTypeDefXSD { + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/AnyUri") + ANY_URI, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Base64Binary") + BASE64BINARY, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Boolean") + BOOLEAN, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Byte") + BYTE, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Date") + DATE, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/DateTime") + DATE_TIME, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Decimal") + DECIMAL, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Double") + DOUBLE, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Duration") + DURATION, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Float") + FLOAT, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/GDay") + GDAY, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/GMonth") + GMONTH, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/GMonthDay") + GMONTH_DAY, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/GYear") + GYEAR, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/GYearMonth") + GYEAR_MONTH, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/HexBinary") + HEX_BINARY, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Int") + INT, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Integer") + INTEGER, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Long") + LONG, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/NegativeInteger") + NEGATIVE_INTEGER, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/NonNegativeInteger") + NON_NEGATIVE_INTEGER, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/NonPositiveInteger") + NON_POSITIVE_INTEGER, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/PositiveInteger") + POSITIVE_INTEGER, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Short") + SHORT, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/String") + STRING, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/Time") + TIME, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/UnsignedByte") + UNSIGNED_BYTE, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/UnsignedInt") + UNSIGNED_INT, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/UnsignedLong") + UNSIGNED_LONG, + + /** + */ + @IRI("https://admin-shell.io/aas/3/0/DataTypeDefXSD/UnsignedShort") + UNSIGNED_SHORT; + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeDefXsd.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeDefXsd.java deleted file mode 100644 index 43960e9b9..000000000 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeDefXsd.java +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - */ - -package org.eclipse.digitaltwin.aas4j.v3.model; - - - -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; - - -/** - * Enumeration listing all xsd anySimpleTypes - */ -@IRI("aas:DataTypeDefXsd") -public enum DataTypeDefXsd { - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/AnyUri") - ANY_URI, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Base64Binary") - BASE64BINARY, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Boolean") - BOOLEAN, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Byte") - BYTE, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Date") - DATE, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/DateTime") - DATE_TIME, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/DateTimeStamp") - DATE_TIME_STAMP, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/DayTimeDuration") - DAY_TIME_DURATION, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Decimal") - DECIMAL, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Double") - DOUBLE, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Duration") - DURATION, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Float") - FLOAT, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/GDay") - GDAY, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/GMonth") - GMONTH, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/GMonthDay") - GMONTH_DAY, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/GYear") - GYEAR, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/GYearMonth") - GYEAR_MONTH, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/HexBinary") - HEX_BINARY, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Int") - INT, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Integer") - INTEGER, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Long") - LONG, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/NegativeInteger") - NEGATIVE_INTEGER, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/NonNegativeInteger") - NON_NEGATIVE_INTEGER, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/NonPositiveInteger") - NON_POSITIVE_INTEGER, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/PositiveInteger") - POSITIVE_INTEGER, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Short") - SHORT, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/String") - STRING, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/Time") - TIME, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/UnsignedByte") - UNSIGNED_BYTE, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/UnsignedInt") - UNSIGNED_INT, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/UnsignedLong") - UNSIGNED_LONG, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/UnsignedShort") - UNSIGNED_SHORT, - - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeDefXsd/YearMonthDuration") - YEAR_MONTH_DURATION; - -} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeIEC61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeIec61360.java similarity index 70% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeIEC61360.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeIec61360.java index d3c4d3a8c..a77873cda 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeIEC61360.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/DataTypeIec61360.java @@ -22,128 +22,128 @@ /** */ @IRI("aas:DataTypeIEC61360") -public enum DataTypeIEC61360 { +public enum DataTypeIec61360 { /** * values containing the content of a file. Values may be binaries. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Blob") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Blob") BLOB, /** * values representing truth of logic or Boolean algebra (TRUE, FALSE) */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Boolean") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Boolean") BOOLEAN, /** * values containing a calendar date, conformant to ISO 8601:2004 Format yyyy-mm-dd Example from IEC * 61360-1:2017: "1999-05-31" is the [DATE] representation of: "31 May 1999". */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Date") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Date") DATE, /** * values containing an address to a file. The values are of type URI and can represent an absolute * or relative path. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/File") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/File") FILE, /** * Values containing string with any sequence of characters, using the syntax of HTML5 (see W3C * Recommendation 28:2014) */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Html") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Html") HTML, /** * values containing values of type INTEGER but are no currencies or measures */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/IntegerCount") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/IntegerCount") INTEGER_COUNT, /** * values containing values of type INTEGER that are currencies */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/IntegerCurrency") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/IntegerCurrency") INTEGER_CURRENCY, /** * values containing values that are measure of type INTEGER. In addition such a value comes with a * physical unit. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/IntegerMeasure") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/IntegerMeasure") INTEGER_MEASURE, /** * values conforming to ISO/IEC 11179 series global identifier sequences */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Irdi") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Irdi") IRDI, /** * values containing values of type STRING conformant to Rfc 3987 */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Iri") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Iri") IRI, /** * values containing values of type rational */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Rational") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Rational") RATIONAL, /** * values containing values of type rational. In addition such a value comes with a physical unit. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/RationalMeasure") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/RationalMeasure") RATIONAL_MEASURE, /** * values containing numbers that can be written as a terminating or non-terminating decimal; a * rational or irrational number but are no currencies or measures */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/RealCount") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/RealCount") REAL_COUNT, /** * values containing values of type REAL that are currencies */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/RealCurrency") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/RealCurrency") REAL_CURRENCY, /** * values containing values that are measures of type REAL. In addition such a value comes with a * physical unit. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/RealMeasure") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/RealMeasure") REAL_MEASURE, /** * values consisting of sequence of characters but cannot be translated into other languages */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/String") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/String") STRING, /** * values containing string but shall be represented as different string in different languages */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/StringTranslatable") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/StringTranslatable") STRING_TRANSLATABLE, /** * values containing a time, conformant to ISO 8601:2004 but restricted to what is allowed in the * corresponding type in xml. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Time") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Time") TIME, /** * values containing a time, conformant to ISO 8601:2004 but restricted to what is allowed in the * corresponding type in xml. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/DataTypeIEC61360/Timestamp") + @IRI("https://admin-shell.io/aas/3/0/DataTypeIEC61360/Timestamp") TIMESTAMP; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Direction.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Direction.java index e1386e4b8..9a556a503 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Direction.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Direction.java @@ -28,13 +28,13 @@ public enum Direction { /** * Input direction. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Direction/Input") + @IRI("https://admin-shell.io/aas/3/0/Direction/Input") INPUT, /** * Output direction */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Direction/Output") + @IRI("https://admin-shell.io/aas/3/0/Direction/Output") OUTPUT; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EmbeddedDataSpecification.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EmbeddedDataSpecification.java index 76155b87e..5be85af48 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EmbeddedDataSpecification.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EmbeddedDataSpecification.java @@ -31,19 +31,17 @@ public interface EmbeddedDataSpecification { /** * Reference to the data specification * - * More information under - * https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecification + * More information under https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecification * * @return Returns the Reference for the property dataSpecification. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecification") + @IRI("https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecification") Reference getDataSpecification(); /** * Reference to the data specification * - * More information under - * https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecification + * More information under https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecification * * @param dataSpecification desired value for the property dataSpecification. */ @@ -53,23 +51,21 @@ public interface EmbeddedDataSpecification { * Actual content of the data specification * * More information under - * https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecificationContent + * https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecificationContent * * @return Returns the DataSpecificationContent for the property dataSpecificationContent. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecificationContent") -// DataSpecificationContent getDataSpecificationContent(); - DataSpecificationIEC61360 getDataSpecificationContent(); + @IRI("https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecificationContent") + DataSpecificationContent getDataSpecificationContent(); /** * Actual content of the data specification * * More information under - * https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecificationContent + * https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecificationContent * * @param dataSpecificationContent desired value for the property dataSpecificationContent. */ -// void setDataSpecificationContent(DataSpecificationContent dataSpecificationContent); - void setDataSpecificationContent(DataSpecificationIEC61360 dataSpecificationContent); + void setDataSpecificationContent(DataSpecificationContent dataSpecificationContent); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Entity.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Entity.java index 82494cab0..17c09503a 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Entity.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Entity.java @@ -32,17 +32,17 @@ public interface Entity extends SubmodelElement { /** * Describes whether the entity is a co-managed entity or a self-managed entity. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/entityType + * More information under https://admin-shell.io/aas/3/0/Entity/entityType * * @return Returns the EntityType for the property entityType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/entityType") + @IRI("https://admin-shell.io/aas/3/0/Entity/entityType") EntityType getEntityType(); /** * Describes whether the entity is a co-managed entity or a self-managed entity. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/entityType + * More information under https://admin-shell.io/aas/3/0/Entity/entityType * * @param entityType desired value for the property entityType. */ @@ -51,59 +51,59 @@ public interface Entity extends SubmodelElement { /** * Global identifier of the asset the entity is representing. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/globalAssetId + * More information under https://admin-shell.io/aas/3/0/Entity/globalAssetID * - * @return Returns the Reference for the property globalAssetId. + * @return Returns the String for the property globalAssetID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/globalAssetId") - Reference getGlobalAssetId(); + @IRI("https://admin-shell.io/aas/3/0/Entity/globalAssetID") + String getGlobalAssetID(); /** * Global identifier of the asset the entity is representing. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/globalAssetId + * More information under https://admin-shell.io/aas/3/0/Entity/globalAssetID * - * @param globalAssetId desired value for the property globalAssetId. + * @param globalAssetID desired value for the property globalAssetID. */ - void setGlobalAssetId(Reference globalAssetId); + void setGlobalAssetID(String globalAssetID); /** * Reference to a specific asset ID representing a supplementary identifier of the asset represented * by the Asset Administration Shell. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/specificAssetId + * More information under https://admin-shell.io/aas/3/0/Entity/specificAssetIds * - * @return Returns the SpecificAssetId for the property specificAssetId. + * @return Returns the List of SpecificAssetIDs for the property specificAssetIds. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/specificAssetId") - SpecificAssetId getSpecificAssetId(); + @IRI("https://admin-shell.io/aas/3/0/Entity/specificAssetIds") + List getSpecificAssetIds(); /** * Reference to a specific asset ID representing a supplementary identifier of the asset represented * by the Asset Administration Shell. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/specificAssetId + * More information under https://admin-shell.io/aas/3/0/Entity/specificAssetIds * - * @param specificAssetId desired value for the property specificAssetId. + * @param specificAssetIds desired value for the property specificAssetIds. */ - void setSpecificAssetId(SpecificAssetId specificAssetId); + void setSpecificAssetIds(List specificAssetIds); /** * Describes statements applicable to the entity by a set of submodel elements, typically with a * qualified value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/statements + * More information under https://admin-shell.io/aas/3/0/Entity/statements * * @return Returns the List of SubmodelElements for the property statements. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/statements") + @IRI("https://admin-shell.io/aas/3/0/Entity/statements") List getStatements(); /** * Describes statements applicable to the entity by a set of submodel elements, typically with a * qualified value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Entity/statements + * More information under https://admin-shell.io/aas/3/0/Entity/statements * * @param statements desired value for the property statements. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EntityType.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EntityType.java index 2c53169cd..5fec4fe06 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EntityType.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EntityType.java @@ -29,14 +29,14 @@ public enum EntityType { * For co-managed entities there is no separate AAS. Co-managed entities need to be part of a * self-managed entity. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EntityType/CoManagedEntity") + @IRI("https://admin-shell.io/aas/3/0/EntityType/CoManagedEntity") CO_MANAGED_ENTITY, /** * Self-Managed Entities have their own AAS but can be part of the bill of material of a composite * self-managed entity. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EntityType/SelfManagedEntity") + @IRI("https://admin-shell.io/aas/3/0/EntityType/SelfManagedEntity") SELF_MANAGED_ENTITY; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Environment.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Environment.java index 09f112e4f..5485872b9 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Environment.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Environment.java @@ -32,17 +32,17 @@ public interface Environment { /** * Asset administration shell * - * More information under https://admin-shell.io/aas/3/0/RC02/Environment/assetAdministrationShells + * More information under https://admin-shell.io/aas/3/0/Environment/assetAdministrationShells * * @return Returns the List of AssetAdministrationShells for the property assetAdministrationShells. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Environment/assetAdministrationShells") + @IRI("https://admin-shell.io/aas/3/0/Environment/assetAdministrationShells") List getAssetAdministrationShells(); /** * Asset administration shell * - * More information under https://admin-shell.io/aas/3/0/RC02/Environment/assetAdministrationShells + * More information under https://admin-shell.io/aas/3/0/Environment/assetAdministrationShells * * @param assetAdministrationShells desired value for the property assetAdministrationShells. */ @@ -51,17 +51,17 @@ public interface Environment { /** * Concept description * - * More information under https://admin-shell.io/aas/3/0/RC02/Environment/conceptDescriptions + * More information under https://admin-shell.io/aas/3/0/Environment/conceptDescriptions * * @return Returns the List of ConceptDescriptions for the property conceptDescriptions. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Environment/conceptDescriptions") + @IRI("https://admin-shell.io/aas/3/0/Environment/conceptDescriptions") List getConceptDescriptions(); /** * Concept description * - * More information under https://admin-shell.io/aas/3/0/RC02/Environment/conceptDescriptions + * More information under https://admin-shell.io/aas/3/0/Environment/conceptDescriptions * * @param conceptDescriptions desired value for the property conceptDescriptions. */ @@ -70,17 +70,17 @@ public interface Environment { /** * Submodel * - * More information under https://admin-shell.io/aas/3/0/RC02/Environment/submodels + * More information under https://admin-shell.io/aas/3/0/Environment/submodels * * @return Returns the List of Submodels for the property submodels. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Environment/submodels") + @IRI("https://admin-shell.io/aas/3/0/Environment/submodels") List getSubmodels(); /** * Submodel * - * More information under https://admin-shell.io/aas/3/0/RC02/Environment/submodels + * More information under https://admin-shell.io/aas/3/0/Environment/submodels * * @param submodels desired value for the property submodels. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EventPayload.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EventPayload.java index 17c9ce8cc..f971df611 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EventPayload.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/EventPayload.java @@ -31,133 +31,133 @@ public interface EventPayload { /** * Reference to the referable, which defines the scope of the event. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/observableReference + * More information under https://admin-shell.io/aas/3/0/EventPayload/observableReference * * @return Returns the Reference for the property observableReference. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/observableReference") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/observableReference") Reference getObservableReference(); /** * Reference to the referable, which defines the scope of the event. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/observableReference + * More information under https://admin-shell.io/aas/3/0/EventPayload/observableReference * * @param observableReference desired value for the property observableReference. */ void setObservableReference(Reference observableReference); /** - * 'semanticId' of the referable which defines the scope of the event, if available. + * 'semanticID' of the referable which defines the scope of the event, if available. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/observableSemanticId + * More information under https://admin-shell.io/aas/3/0/EventPayload/observableSemanticID * - * @return Returns the Reference for the property observableSemanticId. + * @return Returns the Reference for the property observableSemanticID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/observableSemanticId") - Reference getObservableSemanticId(); + @IRI("https://admin-shell.io/aas/3/0/EventPayload/observableSemanticID") + Reference getObservableSemanticID(); /** - * 'semanticId' of the referable which defines the scope of the event, if available. + * 'semanticID' of the referable which defines the scope of the event, if available. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/observableSemanticId + * More information under https://admin-shell.io/aas/3/0/EventPayload/observableSemanticID * - * @param observableSemanticId desired value for the property observableSemanticId. + * @param observableSemanticID desired value for the property observableSemanticID. */ - void setObservableSemanticId(Reference observableSemanticId); + void setObservableSemanticID(Reference observableSemanticID); /** * Event specific payload. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/payload + * More information under https://admin-shell.io/aas/3/0/EventPayload/payload * - * @return Returns the String for the property payload. + * @return Returns the byte[] for the property payload. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/payload") - String getPayload(); + @IRI("https://admin-shell.io/aas/3/0/EventPayload/payload") + byte[] getPayload(); /** * Event specific payload. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/payload + * More information under https://admin-shell.io/aas/3/0/EventPayload/payload * * @param payload desired value for the property payload. */ - void setPayload(String payload); + void setPayload(byte[] payload); /** * Reference to the source event element, including identification of 'AssetAdministrationShell', * 'Submodel', 'SubmodelElement''s. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/source + * More information under https://admin-shell.io/aas/3/0/EventPayload/source * * @return Returns the Reference for the property source. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/source") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/source") Reference getSource(); /** * Reference to the source event element, including identification of 'AssetAdministrationShell', * 'Submodel', 'SubmodelElement''s. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/source + * More information under https://admin-shell.io/aas/3/0/EventPayload/source * * @param source desired value for the property source. */ void setSource(Reference source); /** - * 'semanticId' of the source event element, if available + * 'semanticID' of the source event element, if available * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/sourceSemanticId + * More information under https://admin-shell.io/aas/3/0/EventPayload/sourceSemanticID * - * @return Returns the Reference for the property sourceSemanticId. + * @return Returns the Reference for the property sourceSemanticID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/sourceSemanticId") - Reference getSourceSemanticId(); + @IRI("https://admin-shell.io/aas/3/0/EventPayload/sourceSemanticID") + Reference getSourceSemanticID(); /** - * 'semanticId' of the source event element, if available + * 'semanticID' of the source event element, if available * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/sourceSemanticId + * More information under https://admin-shell.io/aas/3/0/EventPayload/sourceSemanticID * - * @param sourceSemanticId desired value for the property sourceSemanticId. + * @param sourceSemanticID desired value for the property sourceSemanticID. */ - void setSourceSemanticId(Reference sourceSemanticId); + void setSourceSemanticID(Reference sourceSemanticID); /** * Subject, who/which initiated the creation. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/subjectId + * More information under https://admin-shell.io/aas/3/0/EventPayload/subjectID * - * @return Returns the Reference for the property subjectId. + * @return Returns the Reference for the property subjectID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/subjectId") - Reference getSubjectId(); + @IRI("https://admin-shell.io/aas/3/0/EventPayload/subjectID") + Reference getSubjectID(); /** * Subject, who/which initiated the creation. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/subjectId + * More information under https://admin-shell.io/aas/3/0/EventPayload/subjectID * - * @param subjectId desired value for the property subjectId. + * @param subjectID desired value for the property subjectID. */ - void setSubjectId(Reference subjectId); + void setSubjectID(Reference subjectID); /** * Timestamp in UTC, when this event was triggered. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/timeStamp + * More information under https://admin-shell.io/aas/3/0/EventPayload/timeStamp * * @return Returns the String for the property timeStamp. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/timeStamp") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/timeStamp") String getTimeStamp(); /** * Timestamp in UTC, when this event was triggered. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/timeStamp + * More information under https://admin-shell.io/aas/3/0/EventPayload/timeStamp * * @param timeStamp desired value for the property timeStamp. */ @@ -167,18 +167,18 @@ public interface EventPayload { * Information for the outer message infrastructure for scheduling the event to the respective * communication channel. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/topic + * More information under https://admin-shell.io/aas/3/0/EventPayload/topic * * @return Returns the String for the property topic. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/topic") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/topic") String getTopic(); /** * Information for the outer message infrastructure for scheduling the event to the respective * communication channel. * - * More information under https://admin-shell.io/aas/3/0/RC02/EventPayload/topic + * More information under https://admin-shell.io/aas/3/0/EventPayload/topic * * @param topic desired value for the property topic. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Extension.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Extension.java index f0d15055a..9638fe412 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Extension.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Extension.java @@ -14,11 +14,12 @@ package org.eclipse.digitaltwin.aas4j.v3.model; - import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultExtension; +import java.util.List; + /** * Single extension of an element. @@ -31,17 +32,17 @@ public interface Extension extends HasSemantics { /** * Name of the extension. * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/name + * More information under https://admin-shell.io/aas/3/0/Extension/name * * @return Returns the String for the property name. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/name") + @IRI("https://admin-shell.io/aas/3/0/Extension/name") String getName(); /** * Name of the extension. * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/name + * More information under https://admin-shell.io/aas/3/0/Extension/name * * @param name desired value for the property name. */ @@ -50,36 +51,36 @@ public interface Extension extends HasSemantics { /** * Reference to an element the extension refers to. * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/refersTo + * More information under https://admin-shell.io/aas/3/0/Extension/refersTo * - * @return Returns the Reference for the property refersTo. + * @return Returns the List of References for the property refersTo. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/refersTo") - Reference getRefersTo(); + @IRI("https://admin-shell.io/aas/3/0/Extension/refersTo") + List getRefersTo(); /** * Reference to an element the extension refers to. * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/refersTo + * More information under https://admin-shell.io/aas/3/0/Extension/refersTo * * @param refersTo desired value for the property refersTo. */ - void setRefersTo(Reference refersTo); + void setRefersTo(List refersTo); /** * Value of the extension * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/value + * More information under https://admin-shell.io/aas/3/0/Extension/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/value") + @IRI("https://admin-shell.io/aas/3/0/Extension/value") String getValue(); /** * Value of the extension * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/value + * More information under https://admin-shell.io/aas/3/0/Extension/value * * @param value desired value for the property value. */ @@ -88,20 +89,20 @@ public interface Extension extends HasSemantics { /** * Type of the value of the extension. * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/valueType + * More information under https://admin-shell.io/aas/3/0/Extension/valueType * - * @return Returns the DataTypeDefXsd for the property valueType. + * @return Returns the DataTypeDefXSD for the property valueType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/valueType") - DataTypeDefXsd getValueType(); + @IRI("https://admin-shell.io/aas/3/0/Extension/valueType") + DataTypeDefXSD getValueType(); /** * Type of the value of the extension. * - * More information under https://admin-shell.io/aas/3/0/RC02/Extension/valueType + * More information under https://admin-shell.io/aas/3/0/Extension/valueType * * @param valueType desired value for the property valueType. */ - void setValueType(DataTypeDefXsd valueType); + void setValueType(DataTypeDefXSD valueType); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/File.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/File.java index 5b48c07a2..6bf0dfc6c 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/File.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/File.java @@ -31,17 +31,17 @@ public interface File extends DataElement { /** * Content type of the content of the file. * - * More information under https://admin-shell.io/aas/3/0/RC02/File/contentType + * More information under https://admin-shell.io/aas/3/0/File/contentType * * @return Returns the String for the property contentType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/File/contentType") + @IRI("https://admin-shell.io/aas/3/0/File/contentType") String getContentType(); /** * Content type of the content of the file. * - * More information under https://admin-shell.io/aas/3/0/RC02/File/contentType + * More information under https://admin-shell.io/aas/3/0/File/contentType * * @param contentType desired value for the property contentType. */ @@ -50,17 +50,17 @@ public interface File extends DataElement { /** * Path and name of the referenced file (with file extension). * - * More information under https://admin-shell.io/aas/3/0/RC02/File/value + * More information under https://admin-shell.io/aas/3/0/File/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/File/value") + @IRI("https://admin-shell.io/aas/3/0/File/value") String getValue(); /** * Path and name of the referenced file (with file extension). * - * More information under https://admin-shell.io/aas/3/0/RC02/File/value + * More information under https://admin-shell.io/aas/3/0/File/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasDataSpecification.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasDataSpecification.java index b2243158c..c266eda1c 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasDataSpecification.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasDataSpecification.java @@ -36,19 +36,19 @@ public interface HasDataSpecification { * Embedded data specification. * * More information under - * https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications + * https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications * * @return Returns the List of EmbeddedDataSpecifications for the property * embeddedDataSpecifications. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") List getEmbeddedDataSpecifications(); /** * Embedded data specification. * * More information under - * https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications + * https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications * * @param embeddedDataSpecifications desired value for the property embeddedDataSpecifications. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasExtensions.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasExtensions.java index 2f2a6c062..4da4a2342 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasExtensions.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasExtensions.java @@ -31,17 +31,17 @@ public interface HasExtensions { /** * An extension of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions + * More information under https://admin-shell.io/aas/3/0/HasExtensions/extensions * * @return Returns the List of Extensions for the property extensions. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") List getExtensions(); /** * An extension of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions + * More information under https://admin-shell.io/aas/3/0/HasExtensions/extensions * * @param extensions desired value for the property extensions. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasKind.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasKind.java index 8d092c44c..420fed252 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasKind.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasKind.java @@ -24,7 +24,6 @@ * An element with a kind is an element that can either represent a template or an instance. */ @KnownSubtypes({ - @KnownSubtypes.Type(value = SubmodelElement.class), @KnownSubtypes.Type(value = Submodel.class) }) public interface HasKind { @@ -32,20 +31,20 @@ public interface HasKind { /** * Kind of the element: either type or instance. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasKind/kind + * More information under https://admin-shell.io/aas/3/0/HasKind/kind * - * @return Returns the ModelingKind for the property kind. + * @return Returns the ModellingKind for the property kind. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - ModelingKind getKind(); + @IRI("https://admin-shell.io/aas/3/0/HasKind/kind") + ModellingKind getKind(); /** * Kind of the element: either type or instance. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasKind/kind + * More information under https://admin-shell.io/aas/3/0/HasKind/kind * * @param kind desired value for the property kind. */ - void setKind(ModelingKind kind); + void setKind(ModellingKind kind); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasSemantics.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasSemantics.java index e5abf4604..a5933022c 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasSemantics.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/HasSemantics.java @@ -24,7 +24,7 @@ * Element that can have a semantic definition plus some supplemental semantic definitions. */ @KnownSubtypes({ - @KnownSubtypes.Type(value = SpecificAssetId.class), + @KnownSubtypes.Type(value = SpecificAssetID.class), @KnownSubtypes.Type(value = SubmodelElement.class), @KnownSubtypes.Type(value = Submodel.class), @KnownSubtypes.Type(value = Extension.class), @@ -36,39 +36,39 @@ public interface HasSemantics { * Identifier of the semantic definition of the element. It is called semantic ID of the element or * also main semantic ID of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId + * More information under https://admin-shell.io/aas/3/0/HasSemantics/semanticID * - * @return Returns the Reference for the property semanticId. + * @return Returns the Reference for the property semanticID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - Reference getSemanticId(); + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + Reference getSemanticID(); /** * Identifier of the semantic definition of the element. It is called semantic ID of the element or * also main semantic ID of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId + * More information under https://admin-shell.io/aas/3/0/HasSemantics/semanticID * - * @param semanticId desired value for the property semanticId. + * @param semanticID desired value for the property semanticID. */ - void setSemanticId(Reference semanticId); + void setSemanticID(Reference semanticID); /** * Identifier of a supplemental semantic definition of the element. It is called supplemental * semantic ID of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds + * More information under https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds * * @return Returns the List of References for the property supplementalSemanticIds. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") List getSupplementalSemanticIds(); /** * Identifier of a supplemental semantic definition of the element. It is called supplemental * semantic ID of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds + * More information under https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds * * @param supplementalSemanticIds desired value for the property supplementalSemanticIds. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Identifiable.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Identifiable.java index 0785653ed..325a3d6d8 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Identifiable.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Identifiable.java @@ -33,17 +33,17 @@ public interface Identifiable extends Referable { /** * Administrative information of an identifiable element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Identifiable/administration + * More information under https://admin-shell.io/aas/3/0/Identifiable/administration * * @return Returns the AdministrativeInformation for the property administration. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/administration") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/administration") AdministrativeInformation getAdministration(); /** * Administrative information of an identifiable element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Identifiable/administration + * More information under https://admin-shell.io/aas/3/0/Identifiable/administration * * @param administration desired value for the property administration. */ @@ -52,17 +52,17 @@ public interface Identifiable extends Referable { /** * The globally unique identification of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Identifiable/id + * More information under https://admin-shell.io/aas/3/0/Identifiable/id * * @return Returns the String for the property id. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/id") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/id") String getId(); /** * The globally unique identification of the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Identifiable/id + * More information under https://admin-shell.io/aas/3/0/Identifiable/id * * @param id desired value for the property id. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Key.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Key.java index 5038c071b..e58033a6a 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Key.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Key.java @@ -31,17 +31,17 @@ public interface Key { /** * Denotes which kind of entity is referenced. * - * More information under https://admin-shell.io/aas/3/0/RC02/Key/type + * More information under https://admin-shell.io/aas/3/0/Key/type * * @return Returns the KeyTypes for the property type. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Key/type") + @IRI("https://admin-shell.io/aas/3/0/Key/type") KeyTypes getType(); /** * Denotes which kind of entity is referenced. * - * More information under https://admin-shell.io/aas/3/0/RC02/Key/type + * More information under https://admin-shell.io/aas/3/0/Key/type * * @param type desired value for the property type. */ @@ -50,17 +50,17 @@ public interface Key { /** * The key value, for example an IRDI or an URI * - * More information under https://admin-shell.io/aas/3/0/RC02/Key/value + * More information under https://admin-shell.io/aas/3/0/Key/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Key/value") + @IRI("https://admin-shell.io/aas/3/0/Key/value") String getValue(); /** * The key value, for example an IRDI or an URI * - * More information under https://admin-shell.io/aas/3/0/RC02/Key/value + * More information under https://admin-shell.io/aas/3/0/Key/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/KeyTypes.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/KeyTypes.java index a96aad7fe..c08fef3b8 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/KeyTypes.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/KeyTypes.java @@ -27,133 +27,133 @@ public enum KeyTypes { /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/AnnotatedRelationshipElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/AnnotatedRelationshipElement") ANNOTATED_RELATIONSHIP_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/AssetAdministrationShell") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/AssetAdministrationShell") ASSET_ADMINISTRATION_SHELL, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/BasicEventElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/BasicEventElement") BASIC_EVENT_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Blob") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Blob") BLOB, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Capability") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Capability") CAPABILITY, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/ConceptDescription") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/ConceptDescription") CONCEPT_DESCRIPTION, /** * Data element. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/DataElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/DataElement") DATA_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Entity") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Entity") ENTITY, /** * Event. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/EventElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/EventElement") EVENT_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/File") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/File") FILE, /** * Bookmark or a similar local identifier of a subordinate part of a primary resource */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/FragmentReference") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/FragmentReference") FRAGMENT_REFERENCE, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/GlobalReference") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/GlobalReference") GLOBAL_REFERENCE, /** * Identifiable. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Identifiable") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Identifiable") IDENTIFIABLE, /** * Property with a value that can be provided in multiple languages */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/MultiLanguageProperty") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/MultiLanguageProperty") MULTI_LANGUAGE_PROPERTY, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Operation") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Operation") OPERATION, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Property") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Property") PROPERTY, /** * Range with min and max */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Range") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Range") RANGE, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Referable") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Referable") REFERABLE, /** * Reference */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/ReferenceElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/ReferenceElement") REFERENCE_ELEMENT, /** * Relationship */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/RelationshipElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/RelationshipElement") RELATIONSHIP_ELEMENT, /** */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/Submodel") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/Submodel") SUBMODEL, /** * Submodel Element */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/SubmodelElement") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/SubmodelElement") SUBMODEL_ELEMENT, /** * Struct of Submodel Elements */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/SubmodelElementCollection") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/SubmodelElementCollection") SUBMODEL_ELEMENT_COLLECTION, /** * List of Submodel Elements */ - @IRI("https://admin-shell.io/aas/3/0/RC02/KeyTypes/SubmodelElementList") + @IRI("https://admin-shell.io/aas/3/0/KeyTypes/SubmodelElementList") SUBMODEL_ELEMENT_LIST; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringDefinitionTypeIec61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringDefinitionTypeIec61360.java new file mode 100644 index 000000000..a2153c56c --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringDefinitionTypeIec61360.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringDefinitionTypeIec61360; + + +/** + * String with length 1023 maximum and minimum 1 characters and with language tags + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultLangStringDefinitionTypeIec61360.class) +}) +public interface LangStringDefinitionTypeIec61360 extends AbstractLangString { + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangString.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringNameType.java similarity index 64% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangString.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringNameType.java index 184e10ff6..510fa9ff7 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangString.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringNameType.java @@ -14,19 +14,17 @@ package org.eclipse.digitaltwin.aas4j.v3.model; -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import java.io.Serializable; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringNameType; -@IRI("rdf:langString") -public interface LangString extends Serializable { - - public String getLanguage(); - - public void setLanguage(String language); - - public String getText(); +/** + * String with length 128 maximum and minimum 1 characters and with language tags + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultLangStringNameType.class) +}) +public interface LangStringNameType extends AbstractLangString { - public void setText(String text); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringPreferredNameTypeIec61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringPreferredNameTypeIec61360.java new file mode 100644 index 000000000..970690271 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringPreferredNameTypeIec61360.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringPreferredNameTypeIec61360; + + +/** + * String with length 255 maximum and minimum 1 characters and with language tags + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultLangStringPreferredNameTypeIec61360.class) +}) +public interface LangStringPreferredNameTypeIec61360 extends AbstractLangString { + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringShortNameTypeIec61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringShortNameTypeIec61360.java new file mode 100644 index 000000000..dfa79c706 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringShortNameTypeIec61360.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringShortNameTypeIec61360; + + +/** + * String with length 18 maximum and minimum 1 characters and with language tags + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultLangStringShortNameTypeIec61360.class) +}) +public interface LangStringShortNameTypeIec61360 extends AbstractLangString { + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringTextType.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringTextType.java new file mode 100644 index 000000000..dc960b950 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LangStringTextType.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model; + + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLangStringTextType; + + +/** + * String with length 1023 maximum and minimum 1 characters and with language tags + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultLangStringTextType.class) +}) +public interface LangStringTextType extends AbstractLangString { + +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LevelType.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LevelType.java index c08474de1..36ca14e5b 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LevelType.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/LevelType.java @@ -15,33 +15,94 @@ package org.eclipse.digitaltwin.aas4j.v3.model; - import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultLevelType; + + +/** + * Value represented by up to four variants of a numeric value in a specific role: MIN, NOM, TYP and + * MAX. True means that the value is available, false means the value is not available. + */ +@KnownSubtypes({ + @KnownSubtypes.Type(value = DefaultLevelType.class) +}) +public interface LevelType { + + /** + * Maximum of the value + * + * More information under https://admin-shell.io/aas/3/0/LevelType/max + * + * @return Returns the boolean for the property max. + */ + @IRI("https://admin-shell.io/aas/3/0/LevelType/max") + boolean getMax(); + + /** + * Maximum of the value + * + * More information under https://admin-shell.io/aas/3/0/LevelType/max + * + * @param max desired value for the property max. + */ + void setMax(boolean max); + /** + * Minimum of the value + * + * More information under https://admin-shell.io/aas/3/0/LevelType/min + * + * @return Returns the boolean for the property min. + */ + @IRI("https://admin-shell.io/aas/3/0/LevelType/min") + boolean getMin(); -/** -*/ -@IRI("aas:LevelType") -public enum LevelType { + /** + * Minimum of the value + * + * More information under https://admin-shell.io/aas/3/0/LevelType/min + * + * @param min desired value for the property min. + */ + void setMin(boolean min); - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/LevelType/Max") - MAX, + /** + * Nominal value (value as designated) + * + * More information under https://admin-shell.io/aas/3/0/LevelType/nom + * + * @return Returns the boolean for the property nom. + */ + @IRI("https://admin-shell.io/aas/3/0/LevelType/nom") + boolean getNom(); - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/LevelType/Min") - MIN, + /** + * Nominal value (value as designated) + * + * More information under https://admin-shell.io/aas/3/0/LevelType/nom + * + * @param nom desired value for the property nom. + */ + void setNom(boolean nom); - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/LevelType/Nom") - NOM, + /** + * Value as typically present + * + * More information under https://admin-shell.io/aas/3/0/LevelType/typ + * + * @return Returns the boolean for the property typ. + */ + @IRI("https://admin-shell.io/aas/3/0/LevelType/typ") + boolean getTyp(); - /** - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/LevelType/Typ") - TYP; + /** + * Value as typically present + * + * More information under https://admin-shell.io/aas/3/0/LevelType/typ + * + * @param typ desired value for the property typ. + */ + void setTyp(boolean typ); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ModelingKind.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ModellingKind.java similarity index 65% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ModelingKind.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ModellingKind.java index 8a56f484f..070e48af7 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ModelingKind.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ModellingKind.java @@ -22,19 +22,21 @@ /** * Enumeration for denoting whether an element is a template or an instance. */ -@IRI("aas:ModelingKind") -public enum ModelingKind { +@IRI("aas:ModellingKind") +public enum ModellingKind { /** - * Concrete, clearly identifiable component of a certain template. + * Concrete, clearly identifiable element instance. Its creation and validation may be guided by a + * corresponding element template. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ModelingKind/Instance") + @IRI("https://admin-shell.io/aas/3/0/ModellingKind/Instance") INSTANCE, /** - * Software element which specifies the common attributes shared by all instances of the template. + * Specification of the common features of a structured element in sufficient detail that such a + * instance can be instantiated using it */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ModelingKind/Template") + @IRI("https://admin-shell.io/aas/3/0/ModellingKind/Template") TEMPLATE; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/MultiLanguageProperty.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/MultiLanguageProperty.java index 6ac64f0ac..e2ca85aa4 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/MultiLanguageProperty.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/MultiLanguageProperty.java @@ -32,39 +32,39 @@ public interface MultiLanguageProperty extends DataElement { /** * The value of the property instance. * - * More information under https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/value + * More information under https://admin-shell.io/aas/3/0/MultiLanguageProperty/value * - * @return Returns the List of LangStrings for the property value. + * @return Returns the List of LangStringTextTypes for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/value") - List getValue(); + @IRI("https://admin-shell.io/aas/3/0/MultiLanguageProperty/value") + List getValue(); /** * The value of the property instance. * - * More information under https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/value + * More information under https://admin-shell.io/aas/3/0/MultiLanguageProperty/value * * @param value desired value for the property value. */ - void setValue(List value); + void setValue(List value); /** * Reference to the global unique ID of a coded value. * - * More information under https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/valueId + * More information under https://admin-shell.io/aas/3/0/MultiLanguageProperty/valueID * - * @return Returns the Reference for the property valueId. + * @return Returns the Reference for the property valueID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/valueId") - Reference getValueId(); + @IRI("https://admin-shell.io/aas/3/0/MultiLanguageProperty/valueID") + Reference getValueID(); /** * Reference to the global unique ID of a coded value. * - * More information under https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/valueId + * More information under https://admin-shell.io/aas/3/0/MultiLanguageProperty/valueID * - * @param valueId desired value for the property valueId. + * @param valueID desired value for the property valueID. */ - void setValueId(Reference valueId); + void setValueID(Reference valueID); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Operation.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Operation.java index 090ac90e1..18bb33559 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Operation.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Operation.java @@ -32,17 +32,17 @@ public interface Operation extends SubmodelElement { /** * Parameter that is input and output of the operation. * - * More information under https://admin-shell.io/aas/3/0/RC02/Operation/inoutputVariables + * More information under https://admin-shell.io/aas/3/0/Operation/inoutputVariables * * @return Returns the List of OperationVariables for the property inoutputVariables. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Operation/inoutputVariables") + @IRI("https://admin-shell.io/aas/3/0/Operation/inoutputVariables") List getInoutputVariables(); /** * Parameter that is input and output of the operation. * - * More information under https://admin-shell.io/aas/3/0/RC02/Operation/inoutputVariables + * More information under https://admin-shell.io/aas/3/0/Operation/inoutputVariables * * @param inoutputVariables desired value for the property inoutputVariables. */ @@ -51,17 +51,17 @@ public interface Operation extends SubmodelElement { /** * Input parameter of the operation. * - * More information under https://admin-shell.io/aas/3/0/RC02/Operation/inputVariables + * More information under https://admin-shell.io/aas/3/0/Operation/inputVariables * * @return Returns the List of OperationVariables for the property inputVariables. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Operation/inputVariables") + @IRI("https://admin-shell.io/aas/3/0/Operation/inputVariables") List getInputVariables(); /** * Input parameter of the operation. * - * More information under https://admin-shell.io/aas/3/0/RC02/Operation/inputVariables + * More information under https://admin-shell.io/aas/3/0/Operation/inputVariables * * @param inputVariables desired value for the property inputVariables. */ @@ -70,17 +70,17 @@ public interface Operation extends SubmodelElement { /** * Output parameter of the operation. * - * More information under https://admin-shell.io/aas/3/0/RC02/Operation/outputVariables + * More information under https://admin-shell.io/aas/3/0/Operation/outputVariables * * @return Returns the List of OperationVariables for the property outputVariables. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Operation/outputVariables") + @IRI("https://admin-shell.io/aas/3/0/Operation/outputVariables") List getOutputVariables(); /** * Output parameter of the operation. * - * More information under https://admin-shell.io/aas/3/0/RC02/Operation/outputVariables + * More information under https://admin-shell.io/aas/3/0/Operation/outputVariables * * @param outputVariables desired value for the property outputVariables. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/OperationVariable.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/OperationVariable.java index 384ec53af..7b5cf13d6 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/OperationVariable.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/OperationVariable.java @@ -32,17 +32,17 @@ public interface OperationVariable { /** * Describes an argument or result of an operation via a submodel element * - * More information under https://admin-shell.io/aas/3/0/RC02/OperationVariable/value + * More information under https://admin-shell.io/aas/3/0/OperationVariable/value * * @return Returns the SubmodelElement for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/OperationVariable/value") + @IRI("https://admin-shell.io/aas/3/0/OperationVariable/value") SubmodelElement getValue(); /** * Describes an argument or result of an operation via a submodel element * - * More information under https://admin-shell.io/aas/3/0/RC02/OperationVariable/value + * More information under https://admin-shell.io/aas/3/0/OperationVariable/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Property.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Property.java index 9336dd356..13a195fb3 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Property.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Property.java @@ -31,17 +31,17 @@ public interface Property extends DataElement { /** * The value of the property instance. * - * More information under https://admin-shell.io/aas/3/0/RC02/Property/value + * More information under https://admin-shell.io/aas/3/0/Property/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Property/value") + @IRI("https://admin-shell.io/aas/3/0/Property/value") String getValue(); /** * The value of the property instance. * - * More information under https://admin-shell.io/aas/3/0/RC02/Property/value + * More information under https://admin-shell.io/aas/3/0/Property/value * * @param value desired value for the property value. */ @@ -50,39 +50,39 @@ public interface Property extends DataElement { /** * Reference to the global unique ID of a coded value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Property/valueId + * More information under https://admin-shell.io/aas/3/0/Property/valueID * - * @return Returns the Reference for the property valueId. + * @return Returns the Reference for the property valueID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Property/valueId") - Reference getValueId(); + @IRI("https://admin-shell.io/aas/3/0/Property/valueID") + Reference getValueID(); /** * Reference to the global unique ID of a coded value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Property/valueId + * More information under https://admin-shell.io/aas/3/0/Property/valueID * - * @param valueId desired value for the property valueId. + * @param valueID desired value for the property valueID. */ - void setValueId(Reference valueId); + void setValueID(Reference valueID); /** * Data type of the value * - * More information under https://admin-shell.io/aas/3/0/RC02/Property/valueType + * More information under https://admin-shell.io/aas/3/0/Property/valueType * - * @return Returns the DataTypeDefXsd for the property valueType. + * @return Returns the DataTypeDefXSD for the property valueType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Property/valueType") - DataTypeDefXsd getValueType(); + @IRI("https://admin-shell.io/aas/3/0/Property/valueType") + DataTypeDefXSD getValueType(); /** * Data type of the value * - * More information under https://admin-shell.io/aas/3/0/RC02/Property/valueType + * More information under https://admin-shell.io/aas/3/0/Property/valueType * * @param valueType desired value for the property valueType. */ - void setValueType(DataTypeDefXsd valueType); + void setValueType(DataTypeDefXSD valueType); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifiable.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifiable.java index bcc501872..c7dcf966d 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifiable.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifiable.java @@ -32,17 +32,17 @@ public interface Qualifiable { /** * Additional qualification of a qualifiable element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers + * More information under https://admin-shell.io/aas/3/0/Qualifiable/qualifiers * * @return Returns the List of Qualifiers for the property qualifiers. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") List getQualifiers(); /** * Additional qualification of a qualifiable element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers + * More information under https://admin-shell.io/aas/3/0/Qualifiable/qualifiers * * @param qualifiers desired value for the property qualifiers. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifier.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifier.java index bd0a2487f..d78e990a8 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifier.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Qualifier.java @@ -32,17 +32,17 @@ public interface Qualifier extends HasSemantics { /** * The qualifier kind describes the kind of the qualifier that is applied to the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/kind + * More information under https://admin-shell.io/aas/3/0/Qualifier/kind * * @return Returns the QualifierKind for the property kind. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/kind") + @IRI("https://admin-shell.io/aas/3/0/Qualifier/kind") QualifierKind getKind(); /** * The qualifier kind describes the kind of the qualifier that is applied to the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/kind + * More information under https://admin-shell.io/aas/3/0/Qualifier/kind * * @param kind desired value for the property kind. */ @@ -51,17 +51,17 @@ public interface Qualifier extends HasSemantics { /** * The qualifier type describes the type of the qualifier that is applied to the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/type + * More information under https://admin-shell.io/aas/3/0/Qualifier/type * * @return Returns the String for the property type. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/type") + @IRI("https://admin-shell.io/aas/3/0/Qualifier/type") String getType(); /** * The qualifier type describes the type of the qualifier that is applied to the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/type + * More information under https://admin-shell.io/aas/3/0/Qualifier/type * * @param type desired value for the property type. */ @@ -70,17 +70,17 @@ public interface Qualifier extends HasSemantics { /** * The qualifier value is the value of the qualifier. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/value + * More information under https://admin-shell.io/aas/3/0/Qualifier/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/value") + @IRI("https://admin-shell.io/aas/3/0/Qualifier/value") String getValue(); /** * The qualifier value is the value of the qualifier. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/value + * More information under https://admin-shell.io/aas/3/0/Qualifier/value * * @param value desired value for the property value. */ @@ -89,39 +89,39 @@ public interface Qualifier extends HasSemantics { /** * Reference to the global unique ID of a coded value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/valueId + * More information under https://admin-shell.io/aas/3/0/Qualifier/valueID * - * @return Returns the Reference for the property valueId. + * @return Returns the Reference for the property valueID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/valueId") - Reference getValueId(); + @IRI("https://admin-shell.io/aas/3/0/Qualifier/valueID") + Reference getValueID(); /** * Reference to the global unique ID of a coded value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/valueId + * More information under https://admin-shell.io/aas/3/0/Qualifier/valueID * - * @param valueId desired value for the property valueId. + * @param valueID desired value for the property valueID. */ - void setValueId(Reference valueId); + void setValueID(Reference valueID); /** * Data type of the qualifier value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/valueType + * More information under https://admin-shell.io/aas/3/0/Qualifier/valueType * - * @return Returns the DataTypeDefXsd for the property valueType. + * @return Returns the DataTypeDefXSD for the property valueType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/valueType") - DataTypeDefXsd getValueType(); + @IRI("https://admin-shell.io/aas/3/0/Qualifier/valueType") + DataTypeDefXSD getValueType(); /** * Data type of the qualifier value. * - * More information under https://admin-shell.io/aas/3/0/RC02/Qualifier/valueType + * More information under https://admin-shell.io/aas/3/0/Qualifier/valueType * * @param valueType desired value for the property valueType. */ - void setValueType(DataTypeDefXsd valueType); + void setValueType(DataTypeDefXSD valueType); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/QualifierKind.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/QualifierKind.java index cba1f36a5..776c50f89 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/QualifierKind.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/QualifierKind.java @@ -26,21 +26,21 @@ public enum QualifierKind { /** - * qualifies the semantic definition the element is referring to ('semanticId') + * qualifies the semantic definition the element is referring to ('semanticID') */ - @IRI("https://admin-shell.io/aas/3/0/RC02/QualifierKind/ConceptQualifier") + @IRI("https://admin-shell.io/aas/3/0/QualifierKind/ConceptQualifier") CONCEPT_QUALIFIER, /** * qualifies the elements within a specific submodel on concept level. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/QualifierKind/TemplateQualifier") + @IRI("https://admin-shell.io/aas/3/0/QualifierKind/TemplateQualifier") TEMPLATE_QUALIFIER, /** * qualifies the value of the element and can change during run-time. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/QualifierKind/ValueQualifier") + @IRI("https://admin-shell.io/aas/3/0/QualifierKind/ValueQualifier") VALUE_QUALIFIER; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Range.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Range.java index c65a2b6aa..c9d70b9eb 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Range.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Range.java @@ -31,17 +31,17 @@ public interface Range extends DataElement { /** * The maximum value of the range. * - * More information under https://admin-shell.io/aas/3/0/RC02/Range/max + * More information under https://admin-shell.io/aas/3/0/Range/max * * @return Returns the String for the property max. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Range/max") + @IRI("https://admin-shell.io/aas/3/0/Range/max") String getMax(); /** * The maximum value of the range. * - * More information under https://admin-shell.io/aas/3/0/RC02/Range/max + * More information under https://admin-shell.io/aas/3/0/Range/max * * @param max desired value for the property max. */ @@ -50,17 +50,17 @@ public interface Range extends DataElement { /** * The minimum value of the range. * - * More information under https://admin-shell.io/aas/3/0/RC02/Range/min + * More information under https://admin-shell.io/aas/3/0/Range/min * * @return Returns the String for the property min. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Range/min") + @IRI("https://admin-shell.io/aas/3/0/Range/min") String getMin(); /** * The minimum value of the range. * - * More information under https://admin-shell.io/aas/3/0/RC02/Range/min + * More information under https://admin-shell.io/aas/3/0/Range/min * * @param min desired value for the property min. */ @@ -69,20 +69,20 @@ public interface Range extends DataElement { /** * Data type of the min und max * - * More information under https://admin-shell.io/aas/3/0/RC02/Range/valueType + * More information under https://admin-shell.io/aas/3/0/Range/valueType * - * @return Returns the DataTypeDefXsd for the property valueType. + * @return Returns the DataTypeDefXSD for the property valueType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Range/valueType") - DataTypeDefXsd getValueType(); + @IRI("https://admin-shell.io/aas/3/0/Range/valueType") + DataTypeDefXSD getValueType(); /** * Data type of the min und max * - * More information under https://admin-shell.io/aas/3/0/RC02/Range/valueType + * More information under https://admin-shell.io/aas/3/0/Range/valueType * * @param valueType desired value for the property valueType. */ - void setValueType(DataTypeDefXsd valueType); + void setValueType(DataTypeDefXSD valueType); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Referable.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Referable.java index fdb75d447..b8a84a829 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Referable.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Referable.java @@ -33,98 +33,77 @@ public interface Referable extends HasExtensions { * 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/RC02/Referable/category + * More information under https://admin-shell.io/aas/3/0/Referable/category * * @return Returns the String for the property category. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") String getCategory(); /** * 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/RC02/Referable/category + * More information under https://admin-shell.io/aas/3/0/Referable/category * * @param category desired value for the property category. */ void setCategory(String category); - /** - * Checksum to be used to determine if an Referable (including its aggregated child elements) has - * changed. - * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/checksum - * - * @return Returns the String for the property checksum. - */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - String getChecksum(); - - /** - * Checksum to be used to determine if an Referable (including its aggregated child elements) has - * changed. - * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/checksum - * - * @param checksum desired value for the property checksum. - */ - void setChecksum(String checksum); - /** * Description or comments on the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/description + * More information under https://admin-shell.io/aas/3/0/Referable/description * - * @return Returns the List of LangStrings for the property description. + * @return Returns the List of LangStringTextTypes for the property description. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - List getDescription(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + List getDescription(); /** * Description or comments on the element. * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/description + * More information under https://admin-shell.io/aas/3/0/Referable/description * * @param description desired value for the property description. */ - void setDescription(List description); + void setDescription(List description); /** * Display name. Can be provided in several languages. * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/displayName + * More information under https://admin-shell.io/aas/3/0/Referable/displayName * - * @return Returns the List of LangStrings for the property displayName. + * @return Returns the List of LangStringNameTypes for the property displayName. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - List getDisplayName(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + List getDisplayName(); /** * Display name. Can be provided in several languages. * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/displayName + * More information under https://admin-shell.io/aas/3/0/Referable/displayName * * @param displayName desired value for the property displayName. */ - void setDisplayName(List displayName); + void setDisplayName(List displayName); /** * 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. * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/idShort + * More information under https://admin-shell.io/aas/3/0/Referable/idShort * * @return Returns the String for the property idShort. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") String getIdShort(); /** * 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. * - * More information under https://admin-shell.io/aas/3/0/RC02/Referable/idShort + * More information under https://admin-shell.io/aas/3/0/Referable/idShort * * @param idShort desired value for the property idShort. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Reference.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Reference.java index 6ea0f4b3d..e338f7e63 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Reference.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Reference.java @@ -32,55 +32,55 @@ public interface Reference { /** * Unique references in their name space. * - * More information under https://admin-shell.io/aas/3/0/RC02/Reference/keys + * More information under https://admin-shell.io/aas/3/0/Reference/keys * * @return Returns the List of Keys for the property keys. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Reference/keys") + @IRI("https://admin-shell.io/aas/3/0/Reference/keys") List getKeys(); /** * Unique references in their name space. * - * More information under https://admin-shell.io/aas/3/0/RC02/Reference/keys + * More information under https://admin-shell.io/aas/3/0/Reference/keys * * @param keys desired value for the property keys. */ void setKeys(List keys); /** - * 'semanticId' of the referenced model element ('type' = 'ModelReference'). + * 'semanticID' of the referenced model element ('type' = 'ModelReference'). * - * More information under https://admin-shell.io/aas/3/0/RC02/Reference/referredSemanticId + * More information under https://admin-shell.io/aas/3/0/Reference/referredSemanticID * - * @return Returns the Reference for the property referredSemanticId. + * @return Returns the Reference for the property referredSemanticID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Reference/referredSemanticId") - Reference getReferredSemanticId(); + @IRI("https://admin-shell.io/aas/3/0/Reference/referredSemanticID") + Reference getReferredSemanticID(); /** - * 'semanticId' of the referenced model element ('type' = 'ModelReference'). + * 'semanticID' of the referenced model element ('type' = 'ModelReference'). * - * More information under https://admin-shell.io/aas/3/0/RC02/Reference/referredSemanticId + * More information under https://admin-shell.io/aas/3/0/Reference/referredSemanticID * - * @param referredSemanticId desired value for the property referredSemanticId. + * @param referredSemanticID desired value for the property referredSemanticID. */ - void setReferredSemanticId(Reference referredSemanticId); + void setReferredSemanticID(Reference referredSemanticID); /** * Type of the reference. * - * More information under https://admin-shell.io/aas/3/0/RC02/Reference/type + * More information under https://admin-shell.io/aas/3/0/Reference/type * * @return Returns the ReferenceTypes for the property type. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Reference/type") + @IRI("https://admin-shell.io/aas/3/0/Reference/type") ReferenceTypes getType(); /** * Type of the reference. * - * More information under https://admin-shell.io/aas/3/0/RC02/Reference/type + * More information under https://admin-shell.io/aas/3/0/Reference/type * * @param type desired value for the property type. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceElement.java index 3e0f75445..f94d3b5f9 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceElement.java @@ -33,18 +33,18 @@ public interface ReferenceElement extends DataElement { * Global reference to an external object or entity or a logical reference to another element within * the same or another AAS (i.e. a model reference to a Referable). * - * More information under https://admin-shell.io/aas/3/0/RC02/ReferenceElement/value + * More information under https://admin-shell.io/aas/3/0/ReferenceElement/value * * @return Returns the Reference for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ReferenceElement/value") + @IRI("https://admin-shell.io/aas/3/0/ReferenceElement/value") Reference getValue(); /** * Global reference to an external object or entity or a logical reference to another element within * the same or another AAS (i.e. a model reference to a Referable). * - * More information under https://admin-shell.io/aas/3/0/RC02/ReferenceElement/value + * More information under https://admin-shell.io/aas/3/0/ReferenceElement/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceTypes.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceTypes.java index d0be45a9c..6182c32e0 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceTypes.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ReferenceTypes.java @@ -20,21 +20,21 @@ /** - * ReferenceTypes + * Reference types */ @IRI("aas:ReferenceTypes") public enum ReferenceTypes { /** - * GlobalReference. + * External reference. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ReferenceTypes/GlobalReference") - GLOBAL_REFERENCE, + @IRI("https://admin-shell.io/aas/3/0/ReferenceTypes/ExternalReference") + EXTERNAL_REFERENCE, /** - * ModelReference + * Model reference. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ReferenceTypes/ModelReference") + @IRI("https://admin-shell.io/aas/3/0/ReferenceTypes/ModelReference") MODEL_REFERENCE; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/RelationshipElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/RelationshipElement.java index 8cc4d013a..ab0b90430 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/RelationshipElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/RelationshipElement.java @@ -33,17 +33,17 @@ public interface RelationshipElement extends SubmodelElement { /** * Reference to the first element in the relationship taking the role of the subject. * - * More information under https://admin-shell.io/aas/3/0/RC02/RelationshipElement/first + * More information under https://admin-shell.io/aas/3/0/RelationshipElement/first * * @return Returns the Reference for the property first. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/RelationshipElement/first") + @IRI("https://admin-shell.io/aas/3/0/RelationshipElement/first") Reference getFirst(); /** * Reference to the first element in the relationship taking the role of the subject. * - * More information under https://admin-shell.io/aas/3/0/RC02/RelationshipElement/first + * More information under https://admin-shell.io/aas/3/0/RelationshipElement/first * * @param first desired value for the property first. */ @@ -52,17 +52,17 @@ public interface RelationshipElement extends SubmodelElement { /** * Reference to the second element in the relationship taking the role of the object. * - * More information under https://admin-shell.io/aas/3/0/RC02/RelationshipElement/second + * More information under https://admin-shell.io/aas/3/0/RelationshipElement/second * * @return Returns the Reference for the property second. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/RelationshipElement/second") + @IRI("https://admin-shell.io/aas/3/0/RelationshipElement/second") Reference getSecond(); /** * Reference to the second element in the relationship taking the role of the object. * - * More information under https://admin-shell.io/aas/3/0/RC02/RelationshipElement/second + * More information under https://admin-shell.io/aas/3/0/RelationshipElement/second * * @param second desired value for the property second. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Resource.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Resource.java index 1fc485372..78e144ece 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Resource.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Resource.java @@ -32,17 +32,17 @@ public interface Resource { /** * Content type of the content of the file. * - * More information under https://admin-shell.io/aas/3/0/RC02/Resource/contentType + * More information under https://admin-shell.io/aas/3/0/Resource/contentType * * @return Returns the String for the property contentType. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Resource/contentType") + @IRI("https://admin-shell.io/aas/3/0/Resource/contentType") String getContentType(); /** * Content type of the content of the file. * - * More information under https://admin-shell.io/aas/3/0/RC02/Resource/contentType + * More information under https://admin-shell.io/aas/3/0/Resource/contentType * * @param contentType desired value for the property contentType. */ @@ -51,17 +51,17 @@ public interface Resource { /** * Path and name of the resource (with file extension). * - * More information under https://admin-shell.io/aas/3/0/RC02/Resource/path + * More information under https://admin-shell.io/aas/3/0/Resource/path * * @return Returns the String for the property path. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Resource/path") + @IRI("https://admin-shell.io/aas/3/0/Resource/path") String getPath(); /** * Path and name of the resource (with file extension). * - * More information under https://admin-shell.io/aas/3/0/RC02/Resource/path + * More information under https://admin-shell.io/aas/3/0/Resource/path * * @param path desired value for the property path. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SpecificAssetId.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SpecificAssetID.java similarity index 64% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SpecificAssetId.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SpecificAssetID.java index 56e7731fd..fd90bddd3 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SpecificAssetId.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SpecificAssetID.java @@ -17,50 +17,50 @@ import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.KnownSubtypes; -import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSpecificAssetId; +import org.eclipse.digitaltwin.aas4j.v3.model.impl.DefaultSpecificAssetID; /** * A specific asset ID describes a generic supplementary identifying attribute of the asset. */ @KnownSubtypes({ - @KnownSubtypes.Type(value = DefaultSpecificAssetId.class) + @KnownSubtypes.Type(value = DefaultSpecificAssetID.class) }) -public interface SpecificAssetId extends HasSemantics { +public interface SpecificAssetID extends HasSemantics { /** * The (external) subject the key belongs to or has meaning to. * - * More information under https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/externalSubjectId + * More information under https://admin-shell.io/aas/3/0/SpecificAssetID/externalSubjectID * - * @return Returns the Reference for the property externalSubjectId. + * @return Returns the Reference for the property externalSubjectID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/externalSubjectId") - Reference getExternalSubjectId(); + @IRI("https://admin-shell.io/aas/3/0/SpecificAssetID/externalSubjectID") + Reference getExternalSubjectID(); /** * The (external) subject the key belongs to or has meaning to. * - * More information under https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/externalSubjectId + * More information under https://admin-shell.io/aas/3/0/SpecificAssetID/externalSubjectID * - * @param externalSubjectId desired value for the property externalSubjectId. + * @param externalSubjectID desired value for the property externalSubjectID. */ - void setExternalSubjectId(Reference externalSubjectId); + void setExternalSubjectID(Reference externalSubjectID); /** * Name of the identifier * - * More information under https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/name + * More information under https://admin-shell.io/aas/3/0/SpecificAssetID/name * * @return Returns the String for the property name. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/name") + @IRI("https://admin-shell.io/aas/3/0/SpecificAssetID/name") String getName(); /** * Name of the identifier * - * More information under https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/name + * More information under https://admin-shell.io/aas/3/0/SpecificAssetID/name * * @param name desired value for the property name. */ @@ -69,17 +69,17 @@ public interface SpecificAssetId extends HasSemantics { /** * The value of the specific asset identifier with the corresponding name. * - * More information under https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/value + * More information under https://admin-shell.io/aas/3/0/SpecificAssetID/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/value") + @IRI("https://admin-shell.io/aas/3/0/SpecificAssetID/value") String getValue(); /** * The value of the specific asset identifier with the corresponding name. * - * More information under https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/value + * More information under https://admin-shell.io/aas/3/0/SpecificAssetID/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/StateOfEvent.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/StateOfEvent.java index 4c308ede0..67ec72fe8 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/StateOfEvent.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/StateOfEvent.java @@ -28,13 +28,13 @@ public enum StateOfEvent { /** * Event is off. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/StateOfEvent/Off") + @IRI("https://admin-shell.io/aas/3/0/StateOfEvent/Off") OFF, /** * Event is on */ - @IRI("https://admin-shell.io/aas/3/0/RC02/StateOfEvent/On") + @IRI("https://admin-shell.io/aas/3/0/StateOfEvent/On") ON; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Submodel.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Submodel.java index d9e908190..132c85b2d 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Submodel.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/Submodel.java @@ -32,17 +32,17 @@ public interface Submodel extends HasDataSpecification, Identifiable, HasSemanti /** * A submodel consists of zero or more submodel elements. * - * More information under https://admin-shell.io/aas/3/0/RC02/Submodel/submodelElements + * More information under https://admin-shell.io/aas/3/0/Submodel/submodelElements * * @return Returns the List of SubmodelElements for the property submodelElements. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/Submodel/submodelElements") + @IRI("https://admin-shell.io/aas/3/0/Submodel/submodelElements") List getSubmodelElements(); /** * A submodel consists of zero or more submodel elements. * - * More information under https://admin-shell.io/aas/3/0/RC02/Submodel/submodelElements + * More information under https://admin-shell.io/aas/3/0/Submodel/submodelElements * * @param submodelElements desired value for the property submodelElements. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElement.java index 10bd56018..8e9f1af77 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElement.java @@ -32,6 +32,6 @@ @KnownSubtypes.Type(value = SubmodelElementCollection.class), @KnownSubtypes.Type(value = SubmodelElementList.class) }) -public interface SubmodelElement extends HasDataSpecification, HasSemantics, HasKind, Referable, Qualifiable { +public interface SubmodelElement extends HasDataSpecification, HasSemantics, Referable, Qualifiable { } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementCollection.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementCollection.java index 405c24c33..ccfffd58b 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementCollection.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementCollection.java @@ -33,17 +33,17 @@ public interface SubmodelElementCollection extends SubmodelElement { /** * Submodel element contained in the collection. * - * More information under https://admin-shell.io/aas/3/0/RC02/SubmodelElementCollection/value + * More information under https://admin-shell.io/aas/3/0/SubmodelElementCollection/value * * @return Returns the Collection of SubmodelElements for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementCollection/value") + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementCollection/value") Collection getValue(); /** * Submodel element contained in the collection. * - * More information under https://admin-shell.io/aas/3/0/RC02/SubmodelElementCollection/value + * More information under https://admin-shell.io/aas/3/0/SubmodelElementCollection/value * * @param value desired value for the property value. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementList.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementList.java index c3d69bd3a..f83b4eb55 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementList.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/SubmodelElementList.java @@ -33,18 +33,18 @@ public interface SubmodelElementList extends SubmodelElement { * Defines whether order in list is relevant. If 'orderRelevant' = False then the list is * representing a set or a bag. * - * More information under https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/orderRelevant + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/orderRelevant * * @return Returns the boolean for the property orderRelevant. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/orderRelevant") + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/orderRelevant") boolean getOrderRelevant(); /** * Defines whether order in list is relevant. If 'orderRelevant' = False then the list is * representing a set or a bag. * - * More information under https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/orderRelevant + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/orderRelevant * * @param orderRelevant desired value for the property orderRelevant. */ @@ -53,59 +53,55 @@ public interface SubmodelElementList extends SubmodelElement { /** * Semantic ID the submodel elements contained in the list match to. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/semanticIdListElement + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/semanticIDListElement * - * @return Returns the Reference for the property semanticIdListElement. + * @return Returns the Reference for the property semanticIDListElement. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/semanticIdListElement") - Reference getSemanticIdListElement(); + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/semanticIDListElement") + Reference getSemanticIDListElement(); /** * Semantic ID the submodel elements contained in the list match to. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/semanticIdListElement + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/semanticIDListElement * - * @param semanticIdListElement desired value for the property semanticIdListElement. + * @param semanticIDListElement desired value for the property semanticIDListElement. */ - void setSemanticIdListElement(Reference semanticIdListElement); + void setSemanticIDListElement(Reference semanticIDListElement); /** * The submodel element type of the submodel elements contained in the list. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/typeValueListElement + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/typeValueListElement * - * @return Returns the AasSubmodelElements for the property typeValueListElement. + * @return Returns the AASSubmodelElements for the property typeValueListElement. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/typeValueListElement") - AasSubmodelElements getTypeValueListElement(); + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/typeValueListElement") + AASSubmodelElements getTypeValueListElement(); /** * The submodel element type of the submodel elements contained in the list. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/typeValueListElement + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/typeValueListElement * * @param typeValueListElement desired value for the property typeValueListElement. */ - void setTypeValueListElement(AasSubmodelElements typeValueListElement); + void setTypeValueListElement(AASSubmodelElements typeValueListElement); /** * Submodel element contained in the list. * - * More information under https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/value + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/value * * @return Returns the List of SubmodelElements for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/value") + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/value") List getValue(); /** * Submodel element contained in the list. * - * More information under https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/value + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/value * * @param value desired value for the property value. */ @@ -114,22 +110,20 @@ public interface SubmodelElementList extends SubmodelElement { /** * The value type of the submodel element contained in the list. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/valueTypeListElement + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/valueTypeListElement * - * @return Returns the DataTypeDefXsd for the property valueTypeListElement. + * @return Returns the DataTypeDefXSD for the property valueTypeListElement. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/valueTypeListElement") - DataTypeDefXsd getValueTypeListElement(); + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/valueTypeListElement") + DataTypeDefXSD getValueTypeListElement(); /** * The value type of the submodel element contained in the list. * - * More information under - * https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/valueTypeListElement + * More information under https://admin-shell.io/aas/3/0/SubmodelElementList/valueTypeListElement * * @param valueTypeListElement desired value for the property valueTypeListElement. */ - void setValueTypeListElement(DataTypeDefXsd valueTypeListElement); + void setValueTypeListElement(DataTypeDefXSD valueTypeListElement); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueList.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueList.java index 3b489a0cc..3fa7f75ce 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueList.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueList.java @@ -32,17 +32,17 @@ public interface ValueList { /** * A pair of a value together with its global unique id. * - * More information under https://admin-shell.io/aas/3/0/RC02/ValueList/valueReferencePairs + * More information under https://admin-shell.io/aas/3/0/ValueList/valueReferencePairs * * @return Returns the List of ValueReferencePairs for the property valueReferencePairs. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ValueList/valueReferencePairs") + @IRI("https://admin-shell.io/aas/3/0/ValueList/valueReferencePairs") List getValueReferencePairs(); /** * A pair of a value together with its global unique id. * - * More information under https://admin-shell.io/aas/3/0/RC02/ValueList/valueReferencePairs + * More information under https://admin-shell.io/aas/3/0/ValueList/valueReferencePairs * * @param valueReferencePairs desired value for the property valueReferencePairs. */ diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueReferencePair.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueReferencePair.java index 26d3e61b6..8b432070b 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueReferencePair.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/ValueReferencePair.java @@ -30,19 +30,19 @@ public interface ValueReferencePair { /** - * The value of the referenced concept definition of the value in valueId. + * The value of the referenced concept definition of the value in 'valueID'. * - * More information under https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/value + * More information under https://admin-shell.io/aas/3/0/ValueReferencePair/value * * @return Returns the String for the property value. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/value") + @IRI("https://admin-shell.io/aas/3/0/ValueReferencePair/value") String getValue(); /** - * The value of the referenced concept definition of the value in valueId. + * The value of the referenced concept definition of the value in 'valueID'. * - * More information under https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/value + * More information under https://admin-shell.io/aas/3/0/ValueReferencePair/value * * @param value desired value for the property value. */ @@ -51,20 +51,20 @@ public interface ValueReferencePair { /** * Global unique id of the value. * - * More information under https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/valueId + * More information under https://admin-shell.io/aas/3/0/ValueReferencePair/valueID * - * @return Returns the Reference for the property valueId. + * @return Returns the Reference for the property valueID. */ - @IRI("https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/valueId") - Reference getValueId(); + @IRI("https://admin-shell.io/aas/3/0/ValueReferencePair/valueID") + Reference getValueID(); /** * Global unique id of the value. * - * More information under https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/valueId + * More information under https://admin-shell.io/aas/3/0/ValueReferencePair/valueID * - * @param valueId desired value for the property valueId. + * @param valueID desired value for the property valueID. */ - void setValueId(Reference valueId); + void setValueID(Reference valueID); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AdministrativeInformationBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AdministrativeInformationBuilder.java index e1d558eb6..25ccb9399 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AdministrativeInformationBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AdministrativeInformationBuilder.java @@ -16,6 +16,7 @@ import org.eclipse.digitaltwin.aas4j.v3.model.AdministrativeInformation; import org.eclipse.digitaltwin.aas4j.v3.model.EmbeddedDataSpecification; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import java.util.List; @@ -23,6 +24,17 @@ public abstract class AdministrativeInformationBuilder> extends ExtendableBuilder { + /** + * This function allows setting a value for creator + * + * @param creator desired value to be set + * @return Builder object with new value for creator + */ + public B creator(Reference creator) { + getBuildingInstance().setCreator(creator); + return getSelf(); + } + /** * This function allows setting a value for revision * @@ -34,6 +46,17 @@ public B revision(String revision) { return getSelf(); } + /** + * This function allows setting a value for templateID + * + * @param templateID desired value to be set + * @return Builder object with new value for templateID + */ + public B templateID(String templateID) { + getBuildingInstance().setTemplateID(templateID); + return getSelf(); + } + /** * This function allows setting a value for version * diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AnnotatedRelationshipElementBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AnnotatedRelationshipElementBuilder.java index cadcc5cb7..663bd819f 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AnnotatedRelationshipElementBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AnnotatedRelationshipElementBuilder.java @@ -89,13 +89,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -121,17 +121,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -143,24 +132,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -171,7 +149,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -182,7 +160,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -193,7 +171,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetAdministrationShellBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetAdministrationShellBuilder.java index 2b4655e64..45b103666 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetAdministrationShellBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetAdministrationShellBuilder.java @@ -121,24 +121,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -149,7 +138,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -160,7 +149,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -171,7 +160,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetInformationBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetInformationBuilder.java index 0d3463602..cb3798301 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetInformationBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/AssetInformationBuilder.java @@ -14,7 +14,10 @@ package org.eclipse.digitaltwin.aas4j.v3.model.builder; -import org.eclipse.digitaltwin.aas4j.v3.model.*; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetInformation; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetKind; +import org.eclipse.digitaltwin.aas4j.v3.model.Resource; +import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetID; import java.util.List; @@ -33,6 +36,17 @@ public B assetKind(AssetKind assetKind) { return getSelf(); } + /** + * This function allows setting a value for assetType + * + * @param assetType desired value to be set + * @return Builder object with new value for assetType + */ + public B assetType(String assetType) { + getBuildingInstance().setAssetType(assetType); + return getSelf(); + } + /** * This function allows setting a value for defaultThumbnail * @@ -45,13 +59,13 @@ public B defaultThumbnail(Resource defaultThumbnail) { } /** - * This function allows setting a value for globalAssetId + * This function allows setting a value for globalAssetID * - * @param globalAssetId desired value to be set - * @return Builder object with new value for globalAssetId + * @param globalAssetID desired value to be set + * @return Builder object with new value for globalAssetID */ - public B globalAssetId(Reference globalAssetId) { - getBuildingInstance().setGlobalAssetId(globalAssetId); + public B globalAssetID(String globalAssetID) { + getBuildingInstance().setGlobalAssetID(globalAssetID); return getSelf(); } @@ -61,7 +75,7 @@ public B globalAssetId(Reference globalAssetId) { * @param specificAssetIds desired value to be set * @return Builder object with new value for specificAssetIds */ - public B specificAssetIds(List specificAssetIds) { + public B specificAssetIds(List specificAssetIds) { getBuildingInstance().setSpecificAssetIds(specificAssetIds); return getSelf(); } @@ -72,7 +86,7 @@ public B specificAssetIds(List specificAssetIds) { * @param specificAssetIds desired value to be added * @return Builder object with new value for specificAssetIds */ - public B specificAssetIds(SpecificAssetId specificAssetIds) { + public B specificAssetIds(SpecificAssetID specificAssetIds) { getBuildingInstance().getSpecificAssetIds().add(specificAssetIds); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BasicEventElementBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BasicEventElementBuilder.java index c60515ac5..01edbf0a3 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BasicEventElementBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BasicEventElementBuilder.java @@ -133,13 +133,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -165,17 +165,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -187,24 +176,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -215,7 +193,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -226,7 +204,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -237,7 +215,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BlobBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BlobBuilder.java index f5487587d..43f20de00 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BlobBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/BlobBuilder.java @@ -66,13 +66,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -98,17 +98,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -120,24 +109,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -148,7 +126,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -159,7 +137,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -170,7 +148,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/CapabilityBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/CapabilityBuilder.java index 0676d33f7..f62d73756 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/CapabilityBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/CapabilityBuilder.java @@ -44,13 +44,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -76,17 +76,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -98,24 +87,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -126,7 +104,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -137,7 +115,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -148,7 +126,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ConceptDescriptionBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ConceptDescriptionBuilder.java index ca29fd076..65e871bb3 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ConceptDescriptionBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ConceptDescriptionBuilder.java @@ -99,24 +99,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -127,7 +116,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -138,7 +127,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -149,7 +138,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationIEC61360Builder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationIec61360Builder.java similarity index 85% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationIEC61360Builder.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationIec61360Builder.java index f86fde9df..d02d832fe 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationIEC61360Builder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationIec61360Builder.java @@ -19,7 +19,7 @@ import java.util.List; -public abstract class DataSpecificationIEC61360Builder> +public abstract class DataSpecificationIec61360Builder> extends ExtendableBuilder { /** @@ -28,7 +28,7 @@ public abstract class DataSpecificationIEC61360Builder definition) { + public B definition(List definition) { getBuildingInstance().setDefinition(definition); return getSelf(); } @@ -50,7 +50,7 @@ public B definition(List definition) { * @param definition desired value to be added * @return Builder object with new value for definition */ - public B definition(LangString definition) { + public B definition(LangStringDefinitionTypeIec61360 definition) { getBuildingInstance().getDefinition().add(definition); return getSelf(); } @@ -72,7 +72,7 @@ public B levelType(LevelType levelType) { * @param preferredName desired value to be set * @return Builder object with new value for preferredName */ - public B preferredName(List preferredName) { + public B preferredName(List preferredName) { getBuildingInstance().setPreferredName(preferredName); return getSelf(); } @@ -83,7 +83,7 @@ public B preferredName(List preferredName) { * @param preferredName desired value to be added * @return Builder object with new value for preferredName */ - public B preferredName(LangString preferredName) { + public B preferredName(LangStringPreferredNameTypeIec61360 preferredName) { getBuildingInstance().getPreferredName().add(preferredName); return getSelf(); } @@ -94,7 +94,7 @@ public B preferredName(LangString preferredName) { * @param shortName desired value to be set * @return Builder object with new value for shortName */ - public B shortName(List shortName) { + public B shortName(List shortName) { getBuildingInstance().setShortName(shortName); return getSelf(); } @@ -105,7 +105,7 @@ public B shortName(List shortName) { * @param shortName desired value to be added * @return Builder object with new value for shortName */ - public B shortName(LangString shortName) { + public B shortName(LangStringShortNameTypeIec61360 shortName) { getBuildingInstance().getShortName().add(shortName); return getSelf(); } @@ -144,13 +144,13 @@ public B unit(String unit) { } /** - * This function allows setting a value for unitId + * This function allows setting a value for unitID * - * @param unitId desired value to be set - * @return Builder object with new value for unitId + * @param unitID desired value to be set + * @return Builder object with new value for unitID */ - public B unitId(Reference unitId) { - getBuildingInstance().setUnitId(unitId); + public B unitID(Reference unitID) { + getBuildingInstance().setUnitID(unitID); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationPhysicalUnitBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationPhysicalUnitBuilder.java deleted file mode 100644 index c0d0eab44..000000000 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/DataSpecificationPhysicalUnitBuilder.java +++ /dev/null @@ -1,180 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - */ - -package org.eclipse.digitaltwin.aas4j.v3.model.builder; - -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationPhysicalUnit; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; - -import java.util.List; - - -public abstract class DataSpecificationPhysicalUnitBuilder> - extends ExtendableBuilder { - - /** - * This function allows setting a value for conversionFactor - * - * @param conversionFactor desired value to be set - * @return Builder object with new value for conversionFactor - */ - public B conversionFactor(String conversionFactor) { - getBuildingInstance().setConversionFactor(conversionFactor); - return getSelf(); - } - - /** - * This function allows setting a value for definition - * - * @param definition desired value to be set - * @return Builder object with new value for definition - */ - public B definition(List definition) { - getBuildingInstance().setDefinition(definition); - return getSelf(); - } - - /** - * This function allows adding a value to the List definition - * - * @param definition desired value to be added - * @return Builder object with new value for definition - */ - public B definition(LangString definition) { - getBuildingInstance().getDefinition().add(definition); - return getSelf(); - } - - /** - * This function allows setting a value for dinNotation - * - * @param dinNotation desired value to be set - * @return Builder object with new value for dinNotation - */ - public B dinNotation(String dinNotation) { - getBuildingInstance().setDinNotation(dinNotation); - return getSelf(); - } - - /** - * This function allows setting a value for eceCode - * - * @param eceCode desired value to be set - * @return Builder object with new value for eceCode - */ - public B eceCode(String eceCode) { - getBuildingInstance().setEceCode(eceCode); - return getSelf(); - } - - /** - * This function allows setting a value for eceName - * - * @param eceName desired value to be set - * @return Builder object with new value for eceName - */ - public B eceName(String eceName) { - getBuildingInstance().setEceName(eceName); - return getSelf(); - } - - /** - * This function allows setting a value for nistName - * - * @param nistName desired value to be set - * @return Builder object with new value for nistName - */ - public B nistName(String nistName) { - getBuildingInstance().setNistName(nistName); - return getSelf(); - } - - /** - * This function allows setting a value for registrationAuthorityId - * - * @param registrationAuthorityId desired value to be set - * @return Builder object with new value for registrationAuthorityId - */ - public B registrationAuthorityId(String registrationAuthorityId) { - getBuildingInstance().setRegistrationAuthorityId(registrationAuthorityId); - return getSelf(); - } - - /** - * This function allows setting a value for siName - * - * @param siName desired value to be set - * @return Builder object with new value for siName - */ - public B siName(String siName) { - getBuildingInstance().setSiName(siName); - return getSelf(); - } - - /** - * This function allows setting a value for siNotation - * - * @param siNotation desired value to be set - * @return Builder object with new value for siNotation - */ - public B siNotation(String siNotation) { - getBuildingInstance().setSiNotation(siNotation); - return getSelf(); - } - - /** - * This function allows setting a value for sourceOfDefinition - * - * @param sourceOfDefinition desired value to be set - * @return Builder object with new value for sourceOfDefinition - */ - public B sourceOfDefinition(String sourceOfDefinition) { - getBuildingInstance().setSourceOfDefinition(sourceOfDefinition); - return getSelf(); - } - - /** - * This function allows setting a value for supplier - * - * @param supplier desired value to be set - * @return Builder object with new value for supplier - */ - public B supplier(String supplier) { - getBuildingInstance().setSupplier(supplier); - return getSelf(); - } - - /** - * This function allows setting a value for unitName - * - * @param unitName desired value to be set - * @return Builder object with new value for unitName - */ - public B unitName(String unitName) { - getBuildingInstance().setUnitName(unitName); - return getSelf(); - } - - /** - * This function allows setting a value for unitSymbol - * - * @param unitSymbol desired value to be set - * @return Builder object with new value for unitSymbol - */ - public B unitSymbol(String unitSymbol) { - getBuildingInstance().setUnitSymbol(unitSymbol); - return getSelf(); - } - -} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EmbeddedDataSpecificationBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EmbeddedDataSpecificationBuilder.java index 642f5ae50..f88b3561e 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EmbeddedDataSpecificationBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EmbeddedDataSpecificationBuilder.java @@ -16,7 +16,6 @@ import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationContent; -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIEC61360; import org.eclipse.digitaltwin.aas4j.v3.model.EmbeddedDataSpecification; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; @@ -41,7 +40,7 @@ public B dataSpecification(Reference dataSpecification) { * @param dataSpecificationContent desired value to be set * @return Builder object with new value for dataSpecificationContent */ - public B dataSpecificationContent(DataSpecificationIEC61360 dataSpecificationContent) { + public B dataSpecificationContent(DataSpecificationContent dataSpecificationContent) { getBuildingInstance().setDataSpecificationContent(dataSpecificationContent); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EntityBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EntityBuilder.java index ecb7442fe..92e516e17 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EntityBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EntityBuilder.java @@ -33,24 +33,35 @@ public B entityType(EntityType entityType) { } /** - * This function allows setting a value for globalAssetId + * This function allows setting a value for globalAssetID * - * @param globalAssetId desired value to be set - * @return Builder object with new value for globalAssetId + * @param globalAssetID desired value to be set + * @return Builder object with new value for globalAssetID */ - public B globalAssetId(Reference globalAssetId) { - getBuildingInstance().setGlobalAssetId(globalAssetId); + public B globalAssetID(String globalAssetID) { + getBuildingInstance().setGlobalAssetID(globalAssetID); return getSelf(); } /** - * This function allows setting a value for specificAssetId + * This function allows setting a value for specificAssetIds * - * @param specificAssetId desired value to be set - * @return Builder object with new value for specificAssetId + * @param specificAssetIds desired value to be set + * @return Builder object with new value for specificAssetIds */ - public B specificAssetId(SpecificAssetId specificAssetId) { - getBuildingInstance().setSpecificAssetId(specificAssetId); + public B specificAssetIds(List specificAssetIds) { + getBuildingInstance().setSpecificAssetIds(specificAssetIds); + return getSelf(); + } + + /** + * This function allows adding a value to the List specificAssetIds + * + * @param specificAssetIds desired value to be added + * @return Builder object with new value for specificAssetIds + */ + public B specificAssetIds(SpecificAssetID specificAssetIds) { + getBuildingInstance().getSpecificAssetIds().add(specificAssetIds); return getSelf(); } @@ -99,13 +110,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -131,17 +142,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -153,24 +153,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -181,7 +170,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -192,7 +181,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -203,7 +192,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EventPayloadBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EventPayloadBuilder.java index 0c9fa3ec4..d00833379 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EventPayloadBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/EventPayloadBuilder.java @@ -33,13 +33,13 @@ public B observableReference(Reference observableReference) { } /** - * This function allows setting a value for observableSemanticId + * This function allows setting a value for observableSemanticID * - * @param observableSemanticId desired value to be set - * @return Builder object with new value for observableSemanticId + * @param observableSemanticID desired value to be set + * @return Builder object with new value for observableSemanticID */ - public B observableSemanticId(Reference observableSemanticId) { - getBuildingInstance().setObservableSemanticId(observableSemanticId); + public B observableSemanticID(Reference observableSemanticID) { + getBuildingInstance().setObservableSemanticID(observableSemanticID); return getSelf(); } @@ -49,7 +49,7 @@ public B observableSemanticId(Reference observableSemanticId) { * @param payload desired value to be set * @return Builder object with new value for payload */ - public B payload(String payload) { + public B payload(byte[] payload) { getBuildingInstance().setPayload(payload); return getSelf(); } @@ -66,24 +66,24 @@ public B source(Reference source) { } /** - * This function allows setting a value for sourceSemanticId + * This function allows setting a value for sourceSemanticID * - * @param sourceSemanticId desired value to be set - * @return Builder object with new value for sourceSemanticId + * @param sourceSemanticID desired value to be set + * @return Builder object with new value for sourceSemanticID */ - public B sourceSemanticId(Reference sourceSemanticId) { - getBuildingInstance().setSourceSemanticId(sourceSemanticId); + public B sourceSemanticID(Reference sourceSemanticID) { + getBuildingInstance().setSourceSemanticID(sourceSemanticID); return getSelf(); } /** - * This function allows setting a value for subjectId + * This function allows setting a value for subjectID * - * @param subjectId desired value to be set - * @return Builder object with new value for subjectId + * @param subjectID desired value to be set + * @return Builder object with new value for subjectID */ - public B subjectId(Reference subjectId) { - getBuildingInstance().setSubjectId(subjectId); + public B subjectID(Reference subjectID) { + getBuildingInstance().setSubjectID(subjectID); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ExtensionBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ExtensionBuilder.java index c68ea8dda..bff2490ca 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ExtensionBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ExtensionBuilder.java @@ -14,7 +14,7 @@ package org.eclipse.digitaltwin.aas4j.v3.model.builder; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.Extension; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; @@ -40,11 +40,22 @@ public B name(String name) { * @param refersTo desired value to be set * @return Builder object with new value for refersTo */ - public B refersTo(Reference refersTo) { + public B refersTo(List refersTo) { getBuildingInstance().setRefersTo(refersTo); return getSelf(); } + /** + * This function allows adding a value to the List refersTo + * + * @param refersTo desired value to be added + * @return Builder object with new value for refersTo + */ + public B refersTo(Reference refersTo) { + getBuildingInstance().getRefersTo().add(refersTo); + return getSelf(); + } + /** * This function allows setting a value for value * @@ -62,19 +73,19 @@ public B value(String value) { * @param valueType desired value to be set * @return Builder object with new value for valueType */ - public B valueType(DataTypeDefXsd valueType) { + public B valueType(DataTypeDefXSD valueType) { getBuildingInstance().setValueType(valueType); return getSelf(); } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/FileBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/FileBuilder.java index 9da09f850..347317d65 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/FileBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/FileBuilder.java @@ -66,13 +66,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -98,17 +98,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -120,24 +109,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -148,7 +126,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -159,7 +137,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -170,7 +148,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringDefinitionTypeIec61360Builder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringDefinitionTypeIec61360Builder.java new file mode 100644 index 000000000..29b8d3f92 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringDefinitionTypeIec61360Builder.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.builder; + + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360; + + +public abstract class LangStringDefinitionTypeIec61360Builder> + extends ExtendableBuilder { + + /** + * This function allows setting a value for language + * + * @param language desired value to be set + * @return Builder object with new value for language + */ + public B language(String language) { + getBuildingInstance().setLanguage(language); + return getSelf(); + } + + /** + * This function allows setting a value for text + * + * @param text desired value to be set + * @return Builder object with new value for text + */ + public B text(String text) { + getBuildingInstance().setText(text); + return getSelf(); + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringNameTypeBuilder.java similarity index 84% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringBuilder.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringNameTypeBuilder.java index 261521209..8b541147d 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringNameTypeBuilder.java @@ -15,39 +15,31 @@ package org.eclipse.digitaltwin.aas4j.v3.model.builder; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; -public abstract class LangStringBuilder> extends ExtendableBuilder { +public abstract class LangStringNameTypeBuilder> + extends ExtendableBuilder { /** - * - * This function allows setting a value for text - * - * @param text desired value to be set - * - * @return Builder object with new value for text - * - */ - - public B text(String text) { - getBuildingInstance().setText(text); - return getSelf(); - } - - /** - * * This function allows setting a value for language * * @param language desired value to be set - * * @return Builder object with new value for language - * */ - public B language(String language) { getBuildingInstance().setLanguage(language); return getSelf(); } + /** + * This function allows setting a value for text + * + * @param text desired value to be set + * @return Builder object with new value for text + */ + public B text(String text) { + getBuildingInstance().setText(text); + return getSelf(); + } } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringPreferredNameTypeIec61360Builder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringPreferredNameTypeIec61360Builder.java new file mode 100644 index 000000000..dedd6c541 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringPreferredNameTypeIec61360Builder.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.builder; + + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360; + + +public abstract class LangStringPreferredNameTypeIec61360Builder> + extends ExtendableBuilder { + + /** + * This function allows setting a value for language + * + * @param language desired value to be set + * @return Builder object with new value for language + */ + public B language(String language) { + getBuildingInstance().setLanguage(language); + return getSelf(); + } + + /** + * This function allows setting a value for text + * + * @param text desired value to be set + * @return Builder object with new value for text + */ + public B text(String text) { + getBuildingInstance().setText(text); + return getSelf(); + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringShortNameTypeIec61360Builder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringShortNameTypeIec61360Builder.java new file mode 100644 index 000000000..697ef25fc --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringShortNameTypeIec61360Builder.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.builder; + + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringShortNameTypeIec61360; + + +public abstract class LangStringShortNameTypeIec61360Builder> + extends ExtendableBuilder { + + /** + * This function allows setting a value for language + * + * @param language desired value to be set + * @return Builder object with new value for language + */ + public B language(String language) { + getBuildingInstance().setLanguage(language); + return getSelf(); + } + + /** + * This function allows setting a value for text + * + * @param text desired value to be set + * @return Builder object with new value for text + */ + public B text(String text) { + getBuildingInstance().setText(text); + return getSelf(); + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringTextTypeBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringTextTypeBuilder.java new file mode 100644 index 000000000..b84b045d8 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LangStringTextTypeBuilder.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.builder; + + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; + + +public abstract class LangStringTextTypeBuilder> + extends ExtendableBuilder { + + /** + * This function allows setting a value for language + * + * @param language desired value to be set + * @return Builder object with new value for language + */ + public B language(String language) { + getBuildingInstance().setLanguage(language); + return getSelf(); + } + + /** + * This function allows setting a value for text + * + * @param text desired value to be set + * @return Builder object with new value for text + */ + public B text(String text) { + getBuildingInstance().setText(text); + return getSelf(); + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LevelTypeBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LevelTypeBuilder.java new file mode 100644 index 000000000..48246a400 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/LevelTypeBuilder.java @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.builder; + + +import org.eclipse.digitaltwin.aas4j.v3.model.LevelType; + + +public abstract class LevelTypeBuilder> extends ExtendableBuilder { + + /** + * This function allows setting a value for max + * + * @param max desired value to be set + * @return Builder object with new value for max + */ + public B max(boolean max) { + getBuildingInstance().setMax(max); + return getSelf(); + } + + /** + * This function allows setting a value for min + * + * @param min desired value to be set + * @return Builder object with new value for min + */ + public B min(boolean min) { + getBuildingInstance().setMin(min); + return getSelf(); + } + + /** + * This function allows setting a value for nom + * + * @param nom desired value to be set + * @return Builder object with new value for nom + */ + public B nom(boolean nom) { + getBuildingInstance().setNom(nom); + return getSelf(); + } + + /** + * This function allows setting a value for typ + * + * @param typ desired value to be set + * @return Builder object with new value for typ + */ + public B typ(boolean typ) { + getBuildingInstance().setTyp(typ); + return getSelf(); + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/MultiLanguagePropertyBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/MultiLanguagePropertyBuilder.java index 5163cfc8c..ac14d8c29 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/MultiLanguagePropertyBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/MultiLanguagePropertyBuilder.java @@ -28,7 +28,7 @@ public abstract class MultiLanguagePropertyBuilder value) { + public B value(List value) { getBuildingInstance().setValue(value); return getSelf(); } @@ -39,19 +39,19 @@ public B value(List value) { * @param value desired value to be added * @return Builder object with new value for value */ - public B value(LangString value) { + public B value(LangStringTextType value) { getBuildingInstance().getValue().add(value); return getSelf(); } /** - * This function allows setting a value for valueId + * This function allows setting a value for valueID * - * @param valueId desired value to be set - * @return Builder object with new value for valueId + * @param valueID desired value to be set + * @return Builder object with new value for valueID */ - public B valueId(Reference valueId) { - getBuildingInstance().setValueId(valueId); + public B valueID(Reference valueID) { + getBuildingInstance().setValueID(valueID); return getSelf(); } @@ -78,13 +78,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -110,17 +110,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -132,24 +121,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -160,7 +138,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -171,7 +149,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -182,7 +160,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/OperationBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/OperationBuilder.java index 5d6ba4f98..767c3bd8e 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/OperationBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/OperationBuilder.java @@ -110,13 +110,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -142,17 +142,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -164,24 +153,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -192,7 +170,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -203,7 +181,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -214,7 +192,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/PropertyBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/PropertyBuilder.java index c7b7a3f8b..234ebf561 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/PropertyBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/PropertyBuilder.java @@ -33,13 +33,13 @@ public B value(String value) { } /** - * This function allows setting a value for valueId + * This function allows setting a value for valueID * - * @param valueId desired value to be set - * @return Builder object with new value for valueId + * @param valueID desired value to be set + * @return Builder object with new value for valueID */ - public B valueId(Reference valueId) { - getBuildingInstance().setValueId(valueId); + public B valueID(Reference valueID) { + getBuildingInstance().setValueID(valueID); return getSelf(); } @@ -49,7 +49,7 @@ public B valueId(Reference valueId) { * @param valueType desired value to be set * @return Builder object with new value for valueType */ - public B valueType(DataTypeDefXsd valueType) { + public B valueType(DataTypeDefXSD valueType) { getBuildingInstance().setValueType(valueType); return getSelf(); } @@ -77,13 +77,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -109,17 +109,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -131,24 +120,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -159,7 +137,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -170,7 +148,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -181,7 +159,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/QualifierBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/QualifierBuilder.java index 92fda0dc0..ed8646d44 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/QualifierBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/QualifierBuilder.java @@ -14,7 +14,7 @@ package org.eclipse.digitaltwin.aas4j.v3.model.builder; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.Qualifier; import org.eclipse.digitaltwin.aas4j.v3.model.QualifierKind; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; @@ -58,13 +58,13 @@ public B value(String value) { } /** - * This function allows setting a value for valueId + * This function allows setting a value for valueID * - * @param valueId desired value to be set - * @return Builder object with new value for valueId + * @param valueID desired value to be set + * @return Builder object with new value for valueID */ - public B valueId(Reference valueId) { - getBuildingInstance().setValueId(valueId); + public B valueID(Reference valueID) { + getBuildingInstance().setValueID(valueID); return getSelf(); } @@ -74,19 +74,19 @@ public B valueId(Reference valueId) { * @param valueType desired value to be set * @return Builder object with new value for valueType */ - public B valueType(DataTypeDefXsd valueType) { + public B valueType(DataTypeDefXSD valueType) { getBuildingInstance().setValueType(valueType); return getSelf(); } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RangeBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RangeBuilder.java index 360be810c..f265d1700 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RangeBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RangeBuilder.java @@ -49,7 +49,7 @@ public B min(String min) { * @param valueType desired value to be set * @return Builder object with new value for valueType */ - public B valueType(DataTypeDefXsd valueType) { + public B valueType(DataTypeDefXSD valueType) { getBuildingInstance().setValueType(valueType); return getSelf(); } @@ -77,13 +77,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -109,17 +109,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -131,24 +120,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -159,7 +137,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -170,7 +148,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -181,7 +159,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceBuilder.java index 8f7918483..734afc5dc 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceBuilder.java @@ -46,13 +46,13 @@ public B keys(Key keys) { } /** - * This function allows setting a value for referredSemanticId + * This function allows setting a value for referredSemanticID * - * @param referredSemanticId desired value to be set - * @return Builder object with new value for referredSemanticId + * @param referredSemanticID desired value to be set + * @return Builder object with new value for referredSemanticID */ - public B referredSemanticId(Reference referredSemanticId) { - getBuildingInstance().setReferredSemanticId(referredSemanticId); + public B referredSemanticID(Reference referredSemanticID) { + getBuildingInstance().setReferredSemanticID(referredSemanticID); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceElementBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceElementBuilder.java index b14a6b0c6..35af6b641 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceElementBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ReferenceElementBuilder.java @@ -56,13 +56,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -88,17 +88,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -110,24 +99,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -138,7 +116,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -149,7 +127,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -160,7 +138,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RelationshipElementBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RelationshipElementBuilder.java index dfc475fa5..40079a339 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RelationshipElementBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/RelationshipElementBuilder.java @@ -67,13 +67,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -99,17 +99,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -121,24 +110,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -149,7 +127,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -160,7 +138,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -171,7 +149,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SpecificAssetIdBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SpecificAssetIDBuilder.java similarity index 79% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SpecificAssetIdBuilder.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SpecificAssetIDBuilder.java index c6d83b7f7..4db2e0991 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SpecificAssetIdBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SpecificAssetIDBuilder.java @@ -15,22 +15,22 @@ package org.eclipse.digitaltwin.aas4j.v3.model.builder; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId; +import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetID; import java.util.List; -public abstract class SpecificAssetIdBuilder> +public abstract class SpecificAssetIDBuilder> extends ExtendableBuilder { /** - * This function allows setting a value for externalSubjectId + * This function allows setting a value for externalSubjectID * - * @param externalSubjectId desired value to be set - * @return Builder object with new value for externalSubjectId + * @param externalSubjectID desired value to be set + * @return Builder object with new value for externalSubjectID */ - public B externalSubjectId(Reference externalSubjectId) { - getBuildingInstance().setExternalSubjectId(externalSubjectId); + public B externalSubjectID(Reference externalSubjectID) { + getBuildingInstance().setExternalSubjectID(externalSubjectID); return getSelf(); } @@ -57,13 +57,13 @@ public B value(String value) { } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelBuilder.java index a4be53b77..583367d60 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelBuilder.java @@ -98,24 +98,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -126,7 +115,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -137,7 +126,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -148,7 +137,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } @@ -187,13 +176,13 @@ public B extensions(Extension extensions) { } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -225,7 +214,7 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { * @param kind desired value to be set * @return Builder object with new value for kind */ - public B kind(ModelingKind kind) { + public B kind(ModellingKind kind) { getBuildingInstance().setKind(kind); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementCollectionBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementCollectionBuilder.java index 4164623c0..44b318ea5 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementCollectionBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementCollectionBuilder.java @@ -68,13 +68,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -100,17 +100,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -122,24 +111,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -150,7 +128,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -161,7 +139,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -172,7 +150,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementListBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementListBuilder.java index 3c92d5b75..c81241e0a 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementListBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/SubmodelElementListBuilder.java @@ -34,13 +34,13 @@ public B orderRelevant(boolean orderRelevant) { } /** - * This function allows setting a value for semanticIdListElement + * This function allows setting a value for semanticIDListElement * - * @param semanticIdListElement desired value to be set - * @return Builder object with new value for semanticIdListElement + * @param semanticIDListElement desired value to be set + * @return Builder object with new value for semanticIDListElement */ - public B semanticIdListElement(Reference semanticIdListElement) { - getBuildingInstance().setSemanticIdListElement(semanticIdListElement); + public B semanticIDListElement(Reference semanticIDListElement) { + getBuildingInstance().setSemanticIDListElement(semanticIDListElement); return getSelf(); } @@ -50,7 +50,7 @@ public B semanticIdListElement(Reference semanticIdListElement) { * @param typeValueListElement desired value to be set * @return Builder object with new value for typeValueListElement */ - public B typeValueListElement(AasSubmodelElements typeValueListElement) { + public B typeValueListElement(AASSubmodelElements typeValueListElement) { getBuildingInstance().setTypeValueListElement(typeValueListElement); return getSelf(); } @@ -83,7 +83,7 @@ public B value(SubmodelElement value) { * @param valueTypeListElement desired value to be set * @return Builder object with new value for valueTypeListElement */ - public B valueTypeListElement(DataTypeDefXsd valueTypeListElement) { + public B valueTypeListElement(DataTypeDefXSD valueTypeListElement) { getBuildingInstance().setValueTypeListElement(valueTypeListElement); return getSelf(); } @@ -111,13 +111,13 @@ public B embeddedDataSpecifications(EmbeddedDataSpecification embeddedDataSpecif } /** - * This function allows setting a value for semanticId + * This function allows setting a value for semanticID * - * @param semanticId desired value to be set - * @return Builder object with new value for semanticId + * @param semanticID desired value to be set + * @return Builder object with new value for semanticID */ - public B semanticId(Reference semanticId) { - getBuildingInstance().setSemanticId(semanticId); + public B semanticID(Reference semanticID) { + getBuildingInstance().setSemanticID(semanticID); return getSelf(); } @@ -143,17 +143,6 @@ public B supplementalSemanticIds(Reference supplementalSemanticIds) { return getSelf(); } - /** - * This function allows setting a value for kind - * - * @param kind desired value to be set - * @return Builder object with new value for kind - */ - public B kind(ModelingKind kind) { - getBuildingInstance().setKind(kind); - return getSelf(); - } - /** * This function allows setting a value for category * @@ -165,24 +154,13 @@ public B category(String category) { return getSelf(); } - /** - * This function allows setting a value for checksum - * - * @param checksum desired value to be set - * @return Builder object with new value for checksum - */ - public B checksum(String checksum) { - getBuildingInstance().setChecksum(checksum); - return getSelf(); - } - /** * This function allows setting a value for description * * @param description desired value to be set * @return Builder object with new value for description */ - public B description(List description) { + public B description(List description) { getBuildingInstance().setDescription(description); return getSelf(); } @@ -193,7 +171,7 @@ public B description(List description) { * @param description desired value to be added * @return Builder object with new value for description */ - public B description(LangString description) { + public B description(LangStringTextType description) { getBuildingInstance().getDescription().add(description); return getSelf(); } @@ -204,7 +182,7 @@ public B description(LangString description) { * @param displayName desired value to be set * @return Builder object with new value for displayName */ - public B displayName(List displayName) { + public B displayName(List displayName) { getBuildingInstance().setDisplayName(displayName); return getSelf(); } @@ -215,7 +193,7 @@ public B displayName(List displayName) { * @param displayName desired value to be added * @return Builder object with new value for displayName */ - public B displayName(LangString displayName) { + public B displayName(LangStringNameType displayName) { getBuildingInstance().getDisplayName().add(displayName); return getSelf(); } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ValueReferencePairBuilder.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ValueReferencePairBuilder.java index 2f75e4854..a3589053e 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ValueReferencePairBuilder.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/builder/ValueReferencePairBuilder.java @@ -34,13 +34,13 @@ public B value(String value) { } /** - * This function allows setting a value for valueId + * This function allows setting a value for valueID * - * @param valueId desired value to be set - * @return Builder object with new value for valueId + * @param valueID desired value to be set + * @return Builder object with new value for valueID */ - public B valueId(Reference valueId) { - getBuildingInstance().setValueId(valueId); + public B valueID(Reference valueID) { + getBuildingInstance().setValueID(valueID); return getSelf(); } } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAdministrativeInformation.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAdministrativeInformation.java index 0c8fa5bd8..236a00239 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAdministrativeInformation.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAdministrativeInformation.java @@ -16,6 +16,7 @@ import org.eclipse.digitaltwin.aas4j.v3.model.AdministrativeInformation; import org.eclipse.digitaltwin.aas4j.v3.model.EmbeddedDataSpecification; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; import org.eclipse.digitaltwin.aas4j.v3.model.builder.AdministrativeInformationBuilder; @@ -34,13 +35,19 @@ @IRI("aas:AdministrativeInformation") public class DefaultAdministrativeInformation implements AdministrativeInformation { - @IRI("https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/revision") + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/creator") + protected Reference creator; + + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/revision") protected String revision; - @IRI("https://admin-shell.io/aas/3/0/RC02/AdministrativeInformation/version") + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/templateID") + protected String templateID; + + @IRI("https://admin-shell.io/aas/3/0/AdministrativeInformation/version") protected String version; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); public DefaultAdministrativeInformation() { @@ -49,7 +56,9 @@ public DefaultAdministrativeInformation() { @Override public int hashCode() { - return Objects.hash(this.revision, + return Objects.hash(this.creator, + this.revision, + this.templateID, this.version, this.embeddedDataSpecifications); } @@ -64,12 +73,24 @@ public boolean equals(Object obj) { return false; } else { DefaultAdministrativeInformation other = (DefaultAdministrativeInformation) obj; - return Objects.equals(this.revision, other.revision) && + return Objects.equals(this.creator, other.creator) && + Objects.equals(this.revision, other.revision) && + Objects.equals(this.templateID, other.templateID) && Objects.equals(this.version, other.version) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications); } } + @Override + public Reference getCreator() { + return creator; + } + + @Override + public void setCreator(Reference creator) { + this.creator = creator; + } + @Override public String getRevision() { return revision; @@ -80,6 +101,16 @@ public void setRevision(String revision) { this.revision = revision; } + @Override + public String getTemplateID() { + return templateID; + } + + @Override + public void setTemplateID(String templateID) { + this.templateID = templateID; + } + @Override public String getVersion() { return version; diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAnnotatedRelationshipElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAnnotatedRelationshipElement.java index a27ec76a3..722d4ab26 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAnnotatedRelationshipElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAnnotatedRelationshipElement.java @@ -34,52 +34,44 @@ @IRI("aas:AnnotatedRelationshipElement") public class DefaultAnnotatedRelationshipElement implements AnnotatedRelationshipElement { - @IRI("https://admin-shell.io/aas/3/0/RC02/AnnotatedRelationshipElement/annotations") + @IRI("https://admin-shell.io/aas/3/0/AnnotatedRelationshipElement/annotations") protected List annotations = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; - @IRI("https://admin-shell.io/aas/3/0/RC02/RelationshipElement/first") + @IRI("https://admin-shell.io/aas/3/0/RelationshipElement/first") protected Reference first; - @IRI("https://admin-shell.io/aas/3/0/RC02/RelationshipElement/second") + @IRI("https://admin-shell.io/aas/3/0/RelationshipElement/second") protected Reference second; public DefaultAnnotatedRelationshipElement() { - this.kind = ModelingKind.INSTANCE; - } @Override @@ -88,11 +80,9 @@ public int hashCode() { this.first, this.second, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -114,11 +104,9 @@ public boolean equals(Object obj) { Objects.equals(this.first, other.first) && Objects.equals(this.second, other.second) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -168,13 +156,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -187,16 +175,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -208,32 +186,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetAdministrationShell.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetAdministrationShell.java index 690d5a66b..f9d5a7d03 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetAdministrationShell.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetAdministrationShell.java @@ -14,14 +14,21 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; -import org.eclipse.digitaltwin.aas4j.v3.model.*; -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.builder.AssetAdministrationShellBuilder; - import java.util.ArrayList; import java.util.List; import java.util.Objects; +import org.eclipse.digitaltwin.aas4j.v3.model.AdministrativeInformation; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetInformation; +import org.eclipse.digitaltwin.aas4j.v3.model.EmbeddedDataSpecification; +import org.eclipse.digitaltwin.aas4j.v3.model.Extension; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; +import org.eclipse.digitaltwin.aas4j.v3.model.Reference; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.AssetAdministrationShellBuilder; + /** * Default implementation of package org.eclipse.digitaltwin.aas4j.v3.model.AssetAdministrationShell @@ -32,44 +39,40 @@ @IRI("aas:AssetAdministrationShell") public class DefaultAssetAdministrationShell implements AssetAdministrationShell { - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/assetInformation") + @IRI("https://admin-shell.io/aas/3/0/AssetAdministrationShell/assetInformation") protected AssetInformation assetInformation; - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/derivedFrom") + @IRI("https://admin-shell.io/aas/3/0/AssetAdministrationShell/derivedFrom") protected Reference derivedFrom; - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetAdministrationShell/submodels") + @IRI("https://admin-shell.io/aas/3/0/AssetAdministrationShell/submodels") protected List submodels = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/administration") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/administration") protected AdministrativeInformation administration; - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/id") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/id") protected String id; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultAssetAdministrationShell() { - } @Override @@ -81,7 +84,6 @@ public int hashCode() { this.administration, this.id, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -105,7 +107,6 @@ public boolean equals(Object obj) { Objects.equals(this.administration, other.administration) && Objects.equals(this.id, other.id) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -184,32 +185,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetInformation.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetInformation.java index b3b52da5e..ade88005b 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetInformation.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultAssetInformation.java @@ -14,7 +14,10 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; -import org.eclipse.digitaltwin.aas4j.v3.model.*; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetInformation; +import org.eclipse.digitaltwin.aas4j.v3.model.AssetKind; +import org.eclipse.digitaltwin.aas4j.v3.model.Resource; +import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetID; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; import org.eclipse.digitaltwin.aas4j.v3.model.builder.AssetInformationBuilder; @@ -33,17 +36,20 @@ @IRI("aas:AssetInformation") public class DefaultAssetInformation implements AssetInformation { - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/assetKind") + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/assetKind") protected AssetKind assetKind; - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/defaultThumbnail") + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/assetType") + protected String assetType; + + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/defaultThumbnail") protected Resource defaultThumbnail; - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/globalAssetId") - protected Reference globalAssetId; + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/globalAssetID") + protected String globalAssetID; - @IRI("https://admin-shell.io/aas/3/0/RC02/AssetInformation/specificAssetIds") - protected List specificAssetIds = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/AssetInformation/specificAssetIds") + protected List specificAssetIds = new ArrayList<>(); public DefaultAssetInformation() { @@ -52,8 +58,9 @@ public DefaultAssetInformation() { @Override public int hashCode() { return Objects.hash(this.assetKind, + this.assetType, this.defaultThumbnail, - this.globalAssetId, + this.globalAssetID, this.specificAssetIds); } @@ -68,8 +75,9 @@ public boolean equals(Object obj) { } else { DefaultAssetInformation other = (DefaultAssetInformation) obj; return Objects.equals(this.assetKind, other.assetKind) && + Objects.equals(this.assetType, other.assetType) && Objects.equals(this.defaultThumbnail, other.defaultThumbnail) && - Objects.equals(this.globalAssetId, other.globalAssetId) && + Objects.equals(this.globalAssetID, other.globalAssetID) && Objects.equals(this.specificAssetIds, other.specificAssetIds); } } @@ -84,6 +92,16 @@ public void setAssetKind(AssetKind assetKind) { this.assetKind = assetKind; } + @Override + public String getAssetType() { + return assetType; + } + + @Override + public void setAssetType(String assetType) { + this.assetType = assetType; + } + @Override public Resource getDefaultThumbnail() { return defaultThumbnail; @@ -95,22 +113,22 @@ public void setDefaultThumbnail(Resource defaultThumbnail) { } @Override - public Reference getGlobalAssetId() { - return globalAssetId; + public String getGlobalAssetID() { + return globalAssetID; } @Override - public void setGlobalAssetId(Reference globalAssetId) { - this.globalAssetId = globalAssetId; + public void setGlobalAssetID(String globalAssetID) { + this.globalAssetID = globalAssetID; } @Override - public List getSpecificAssetIds() { + public List getSpecificAssetIds() { return specificAssetIds; } @Override - public void setSpecificAssetIds(List specificAssetIds) { + public void setSpecificAssetIds(List specificAssetIds) { this.specificAssetIds = specificAssetIds; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBasicEventElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBasicEventElement.java index 3a80c453c..035a2c7b0 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBasicEventElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBasicEventElement.java @@ -32,67 +32,59 @@ @IRI("aas:BasicEventElement") public class DefaultBasicEventElement implements BasicEventElement { - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/direction") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/direction") protected Direction direction; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/lastUpdate") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/lastUpdate") protected String lastUpdate; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/maxInterval") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/maxInterval") protected String maxInterval; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageBroker") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/messageBroker") protected Reference messageBroker; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/messageTopic") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/messageTopic") protected String messageTopic; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/minInterval") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/minInterval") protected String minInterval; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/observed") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/observed") protected Reference observed; - @IRI("https://admin-shell.io/aas/3/0/RC02/BasicEventElement/state") + @IRI("https://admin-shell.io/aas/3/0/BasicEventElement/state") protected StateOfEvent state; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultBasicEventElement() { - this.kind = ModelingKind.INSTANCE; - } @Override @@ -106,11 +98,9 @@ public int hashCode() { this.observed, this.state, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -137,11 +127,9 @@ public boolean equals(Object obj) { Objects.equals(this.observed, other.observed) && Objects.equals(this.state, other.state) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -241,13 +229,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -260,16 +248,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -281,32 +259,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBlob.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBlob.java index 2962a721e..bcb565022 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBlob.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultBlob.java @@ -34,51 +34,41 @@ @IRI("aas:Blob") public class DefaultBlob implements Blob { - @IRI("https://admin-shell.io/aas/3/0/RC02/Blob/contentType") + @IRI("https://admin-shell.io/aas/3/0/Blob/contentType") protected String contentType; - @IRI("https://admin-shell.io/aas/3/0/RC02/Blob/value") + @IRI("https://admin-shell.io/aas/3/0/Blob/value") protected byte[] value; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultBlob() { - this.category = "VARIABLE"; - - this.kind = ModelingKind.INSTANCE; - } @Override @@ -86,11 +76,9 @@ public int hashCode() { return Objects.hash(this.contentType, Arrays.hashCode(this.value), this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -111,11 +99,9 @@ public boolean equals(Object obj) { return Objects.equals(this.contentType, other.contentType) && Arrays.equals(this.value, other.value) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -155,13 +141,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -174,16 +160,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -195,32 +171,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultCapability.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultCapability.java index 5d94c4299..77c89e298 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultCapability.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultCapability.java @@ -33,53 +33,43 @@ @IRI("aas:Capability") public class DefaultCapability implements Capability { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultCapability() { - this.kind = ModelingKind.INSTANCE; - } @Override public int hashCode() { return Objects.hash(this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -98,11 +88,9 @@ public boolean equals(Object obj) { } else { DefaultCapability other = (DefaultCapability) obj; return Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -122,13 +110,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -141,16 +129,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -162,32 +140,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultConceptDescription.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultConceptDescription.java index e5f4ad19e..558778b24 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultConceptDescription.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultConceptDescription.java @@ -33,40 +33,35 @@ @IRI("aas:ConceptDescription") public class DefaultConceptDescription implements ConceptDescription { - @IRI("https://admin-shell.io/aas/3/0/RC02/ConceptDescription/isCaseOf") + @IRI("https://admin-shell.io/aas/3/0/ConceptDescription/isCaseOf") protected List isCaseOf = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/administration") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/administration") protected AdministrativeInformation administration; - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/id") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/id") protected String id; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultConceptDescription() { - this.category = "PROPERTY"; - } @Override @@ -76,7 +71,6 @@ public int hashCode() { this.administration, this.id, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -98,7 +92,6 @@ public boolean equals(Object obj) { Objects.equals(this.administration, other.administration) && Objects.equals(this.id, other.id) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -157,32 +150,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationIEC61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationIec61360.java similarity index 64% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationIEC61360.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationIec61360.java index fe9b01d11..168d88f21 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationIEC61360.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationIec61360.java @@ -16,7 +16,7 @@ import org.eclipse.digitaltwin.aas4j.v3.model.*; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.builder.DataSpecificationIEC61360Builder; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.DataSpecificationIec61360Builder; import java.util.ArrayList; import java.util.List; @@ -25,52 +25,52 @@ /** * Default implementation of package - * org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIEC61360 + * org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIec61360 * * Content of data specification template for concept descriptions for properties, values and value * lists conformant to IEC 61360. */ @IRI("aas:DataSpecificationIEC61360") -public class DefaultDataSpecificationIEC61360 implements DataSpecificationIEC61360 { +public class DefaultDataSpecificationIec61360 implements DataSpecificationIec61360 { - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/dataType") - protected DataTypeIEC61360 dataType; + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/dataType") + protected DataTypeIec61360 dataType; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/definition") - protected List definition = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/definition") + protected List definition = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/levelType") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/levelType") protected LevelType levelType; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/preferredName") - protected List preferredName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/preferredName") + protected List preferredName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/shortName") - protected List shortName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/shortName") + protected List shortName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/sourceOfDefinition") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/sourceOfDefinition") protected String sourceOfDefinition; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/symbol") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/symbol") protected String symbol; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unit") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/unit") protected String unit; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/unitId") - protected Reference unitId; + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/unitID") + protected Reference unitID; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/value") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/value") protected String value; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueFormat") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/valueFormat") protected String valueFormat; - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationIEC61360/valueList") + @IRI("https://admin-shell.io/aas/3/0/DataSpecificationIEC61360/valueList") protected ValueList valueList; - public DefaultDataSpecificationIEC61360() { + public DefaultDataSpecificationIec61360() { } @@ -84,7 +84,7 @@ public int hashCode() { this.sourceOfDefinition, this.symbol, this.unit, - this.unitId, + this.unitID, this.value, this.valueFormat, this.valueList); @@ -99,7 +99,7 @@ public boolean equals(Object obj) { } else if (this.getClass() != obj.getClass()) { return false; } else { - DefaultDataSpecificationIEC61360 other = (DefaultDataSpecificationIEC61360) obj; + DefaultDataSpecificationIec61360 other = (DefaultDataSpecificationIec61360) obj; return Objects.equals(this.dataType, other.dataType) && Objects.equals(this.definition, other.definition) && Objects.equals(this.levelType, other.levelType) && @@ -108,7 +108,7 @@ public boolean equals(Object obj) { Objects.equals(this.sourceOfDefinition, other.sourceOfDefinition) && Objects.equals(this.symbol, other.symbol) && Objects.equals(this.unit, other.unit) && - Objects.equals(this.unitId, other.unitId) && + Objects.equals(this.unitID, other.unitID) && Objects.equals(this.value, other.value) && Objects.equals(this.valueFormat, other.valueFormat) && Objects.equals(this.valueList, other.valueList); @@ -116,22 +116,22 @@ public boolean equals(Object obj) { } @Override - public DataTypeIEC61360 getDataType() { + public DataTypeIec61360 getDataType() { return dataType; } @Override - public void setDataType(DataTypeIEC61360 dataType) { + public void setDataType(DataTypeIec61360 dataType) { this.dataType = dataType; } @Override - public List getDefinition() { + public List getDefinition() { return definition; } @Override - public void setDefinition(List definition) { + public void setDefinition(List definition) { this.definition = definition; } @@ -146,22 +146,22 @@ public void setLevelType(LevelType levelType) { } @Override - public List getPreferredName() { + public List getPreferredName() { return preferredName; } @Override - public void setPreferredName(List preferredName) { + public void setPreferredName(List preferredName) { this.preferredName = preferredName; } @Override - public List getShortName() { + public List getShortName() { return shortName; } @Override - public void setShortName(List shortName) { + public void setShortName(List shortName) { this.shortName = shortName; } @@ -196,13 +196,13 @@ public void setUnit(String unit) { } @Override - public Reference getUnitId() { - return unitId; + public Reference getUnitID() { + return unitID; } @Override - public void setUnitId(Reference unitId) { - this.unitId = unitId; + public void setUnitID(Reference unitID) { + this.unitID = unitID; } @Override @@ -236,9 +236,9 @@ public void setValueList(ValueList valueList) { } /** - * This builder class can be used to construct a DefaultDataSpecificationIEC61360 bean. + * This builder class can be used to construct a DefaultDataSpecificationIec61360 bean. */ - public static class Builder extends DataSpecificationIEC61360Builder { + public static class Builder extends DataSpecificationIec61360Builder { @Override protected Builder getSelf() { @@ -246,8 +246,8 @@ protected Builder getSelf() { } @Override - protected DefaultDataSpecificationIEC61360 newBuildingInstance() { - return new DefaultDataSpecificationIEC61360(); + protected DefaultDataSpecificationIec61360 newBuildingInstance() { + return new DefaultDataSpecificationIec61360(); } } } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationPhysicalUnit.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationPhysicalUnit.java deleted file mode 100644 index 3f41583cd..000000000 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultDataSpecificationPhysicalUnit.java +++ /dev/null @@ -1,267 +0,0 @@ -/* - * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - */ - -package org.eclipse.digitaltwin.aas4j.v3.model.impl; - -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationPhysicalUnit; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; -import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.builder.DataSpecificationPhysicalUnitBuilder; - -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; - - -/** - * Default implementation of package - * org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationPhysicalUnit - * - */ - -@IRI("aas:DataSpecificationPhysicalUnit") -public class DefaultDataSpecificationPhysicalUnit implements DataSpecificationPhysicalUnit { - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/conversionFactor") - protected String conversionFactor; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/definition") - protected List definition = new ArrayList<>(); - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/dinNotation") - protected String dinNotation; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceCode") - protected String eceCode; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/eceName") - protected String eceName; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/nistName") - protected String nistName; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/registrationAuthorityId") - protected String registrationAuthorityId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siName") - protected String siName; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/siNotation") - protected String siNotation; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/sourceOfDefinition") - protected String sourceOfDefinition; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/supplier") - protected String supplier; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitName") - protected String unitName; - - @IRI("https://admin-shell.io/aas/3/0/RC02/DataSpecificationPhysicalUnit/unitSymbol") - protected String unitSymbol; - - public DefaultDataSpecificationPhysicalUnit() { - - } - - @Override - public int hashCode() { - return Objects.hash(this.conversionFactor, - this.definition, - this.dinNotation, - this.eceCode, - this.eceName, - this.nistName, - this.registrationAuthorityId, - this.siName, - this.siNotation, - this.sourceOfDefinition, - this.supplier, - this.unitName, - this.unitSymbol); - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } else if (obj == null) { - return false; - } else if (this.getClass() != obj.getClass()) { - return false; - } else { - DefaultDataSpecificationPhysicalUnit other = (DefaultDataSpecificationPhysicalUnit) obj; - return Objects.equals(this.conversionFactor, other.conversionFactor) && - Objects.equals(this.definition, other.definition) && - Objects.equals(this.dinNotation, other.dinNotation) && - Objects.equals(this.eceCode, other.eceCode) && - Objects.equals(this.eceName, other.eceName) && - Objects.equals(this.nistName, other.nistName) && - Objects.equals(this.registrationAuthorityId, other.registrationAuthorityId) && - Objects.equals(this.siName, other.siName) && - Objects.equals(this.siNotation, other.siNotation) && - Objects.equals(this.sourceOfDefinition, other.sourceOfDefinition) && - Objects.equals(this.supplier, other.supplier) && - Objects.equals(this.unitName, other.unitName) && - Objects.equals(this.unitSymbol, other.unitSymbol); - } - } - - @Override - public String getConversionFactor() { - return conversionFactor; - } - - @Override - public void setConversionFactor(String conversionFactor) { - this.conversionFactor = conversionFactor; - } - - @Override - public List getDefinition() { - return definition; - } - - @Override - public void setDefinition(List definition) { - this.definition = definition; - } - - @Override - public String getDinNotation() { - return dinNotation; - } - - @Override - public void setDinNotation(String dinNotation) { - this.dinNotation = dinNotation; - } - - @Override - public String getEceCode() { - return eceCode; - } - - @Override - public void setEceCode(String eceCode) { - this.eceCode = eceCode; - } - - @Override - public String getEceName() { - return eceName; - } - - @Override - public void setEceName(String eceName) { - this.eceName = eceName; - } - - @Override - public String getNistName() { - return nistName; - } - - @Override - public void setNistName(String nistName) { - this.nistName = nistName; - } - - @Override - public String getRegistrationAuthorityId() { - return registrationAuthorityId; - } - - @Override - public void setRegistrationAuthorityId(String registrationAuthorityId) { - this.registrationAuthorityId = registrationAuthorityId; - } - - @Override - public String getSiName() { - return siName; - } - - @Override - public void setSiName(String siName) { - this.siName = siName; - } - - @Override - public String getSiNotation() { - return siNotation; - } - - @Override - public void setSiNotation(String siNotation) { - this.siNotation = siNotation; - } - - @Override - public String getSourceOfDefinition() { - return sourceOfDefinition; - } - - @Override - public void setSourceOfDefinition(String sourceOfDefinition) { - this.sourceOfDefinition = sourceOfDefinition; - } - - @Override - public String getSupplier() { - return supplier; - } - - @Override - public void setSupplier(String supplier) { - this.supplier = supplier; - } - - @Override - public String getUnitName() { - return unitName; - } - - @Override - public void setUnitName(String unitName) { - this.unitName = unitName; - } - - @Override - public String getUnitSymbol() { - return unitSymbol; - } - - @Override - public void setUnitSymbol(String unitSymbol) { - this.unitSymbol = unitSymbol; - } - - /** - * This builder class can be used to construct a DefaultDataSpecificationPhysicalUnit bean. - */ - public static class Builder extends DataSpecificationPhysicalUnitBuilder { - - @Override - protected Builder getSelf() { - return this; - } - - @Override - protected DefaultDataSpecificationPhysicalUnit newBuildingInstance() { - return new DefaultDataSpecificationPhysicalUnit(); - } - } -} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEmbeddedDataSpecification.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEmbeddedDataSpecification.java index c55ee164a..4d3135579 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEmbeddedDataSpecification.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEmbeddedDataSpecification.java @@ -15,7 +15,6 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationContent; -import org.eclipse.digitaltwin.aas4j.v3.model.DataSpecificationIEC61360; import org.eclipse.digitaltwin.aas4j.v3.model.EmbeddedDataSpecification; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; @@ -34,11 +33,11 @@ @IRI("aas:EmbeddedDataSpecification") public class DefaultEmbeddedDataSpecification implements EmbeddedDataSpecification { - @IRI("https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecification") + @IRI("https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecification") protected Reference dataSpecification; - @IRI("https://admin-shell.io/aas/3/0/RC02/EmbeddedDataSpecification/dataSpecificationContent") - protected DataSpecificationIEC61360 dataSpecificationContent; + @IRI("https://admin-shell.io/aas/3/0/EmbeddedDataSpecification/dataSpecificationContent") + protected DataSpecificationContent dataSpecificationContent; public DefaultEmbeddedDataSpecification() { @@ -76,12 +75,12 @@ public void setDataSpecification(Reference dataSpecification) { } @Override - public DataSpecificationIEC61360 getDataSpecificationContent() { + public DataSpecificationContent getDataSpecificationContent() { return dataSpecificationContent; } @Override - public void setDataSpecificationContent(DataSpecificationIEC61360 dataSpecificationContent) { + public void setDataSpecificationContent(DataSpecificationContent dataSpecificationContent) { this.dataSpecificationContent = dataSpecificationContent; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEntity.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEntity.java index 27a1c5848..e3a75f9a8 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEntity.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEntity.java @@ -32,69 +32,59 @@ @IRI("aas:Entity") public class DefaultEntity implements Entity { - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/entityType") + @IRI("https://admin-shell.io/aas/3/0/Entity/entityType") protected EntityType entityType; - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/globalAssetId") - protected Reference globalAssetId; + @IRI("https://admin-shell.io/aas/3/0/Entity/globalAssetID") + protected String globalAssetID; - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/specificAssetId") - protected SpecificAssetId specificAssetId; + @IRI("https://admin-shell.io/aas/3/0/Entity/specificAssetIds") + protected List specificAssetIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Entity/statements") + @IRI("https://admin-shell.io/aas/3/0/Entity/statements") protected List statements = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultEntity() { - this.kind = ModelingKind.INSTANCE; - } @Override public int hashCode() { return Objects.hash(this.entityType, - this.globalAssetId, - this.specificAssetId, + this.globalAssetID, + this.specificAssetIds, this.statements, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -113,15 +103,13 @@ public boolean equals(Object obj) { } else { DefaultEntity other = (DefaultEntity) obj; return Objects.equals(this.entityType, other.entityType) && - Objects.equals(this.globalAssetId, other.globalAssetId) && - Objects.equals(this.specificAssetId, other.specificAssetId) && + Objects.equals(this.globalAssetID, other.globalAssetID) && + Objects.equals(this.specificAssetIds, other.specificAssetIds) && Objects.equals(this.statements, other.statements) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -141,23 +129,23 @@ public void setEntityType(EntityType entityType) { } @Override - public Reference getGlobalAssetId() { - return globalAssetId; + public String getGlobalAssetID() { + return globalAssetID; } @Override - public void setGlobalAssetId(Reference globalAssetId) { - this.globalAssetId = globalAssetId; + public void setGlobalAssetID(String globalAssetID) { + this.globalAssetID = globalAssetID; } @Override - public SpecificAssetId getSpecificAssetId() { - return specificAssetId; + public List getSpecificAssetIds() { + return specificAssetIds; } @Override - public void setSpecificAssetId(SpecificAssetId specificAssetId) { - this.specificAssetId = specificAssetId; + public void setSpecificAssetIds(List specificAssetIds) { + this.specificAssetIds = specificAssetIds; } @Override @@ -181,13 +169,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -200,16 +188,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -221,32 +199,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEnvironment.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEnvironment.java index 2cd5d1648..ae4b92b96 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEnvironment.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEnvironment.java @@ -35,13 +35,13 @@ @IRI("aas:Environment") public class DefaultEnvironment implements Environment { - @IRI("https://admin-shell.io/aas/3/0/RC02/Environment/assetAdministrationShells") + @IRI("https://admin-shell.io/aas/3/0/Environment/assetAdministrationShells") protected List assetAdministrationShells = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Environment/conceptDescriptions") + @IRI("https://admin-shell.io/aas/3/0/Environment/conceptDescriptions") protected List conceptDescriptions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Environment/submodels") + @IRI("https://admin-shell.io/aas/3/0/Environment/submodels") protected List submodels = new ArrayList<>(); public DefaultEnvironment() { diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEventPayload.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEventPayload.java index 779d445b4..b775a8922 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEventPayload.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultEventPayload.java @@ -19,6 +19,7 @@ import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; import org.eclipse.digitaltwin.aas4j.v3.model.builder.EventPayloadBuilder; +import java.util.Arrays; import java.util.Objects; @@ -31,28 +32,28 @@ @IRI("aas:EventPayload") public class DefaultEventPayload implements EventPayload { - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/observableReference") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/observableReference") protected Reference observableReference; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/observableSemanticId") - protected Reference observableSemanticId; + @IRI("https://admin-shell.io/aas/3/0/EventPayload/observableSemanticID") + protected Reference observableSemanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/payload") - protected String payload; + @IRI("https://admin-shell.io/aas/3/0/EventPayload/payload") + protected byte[] payload; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/source") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/source") protected Reference source; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/sourceSemanticId") - protected Reference sourceSemanticId; + @IRI("https://admin-shell.io/aas/3/0/EventPayload/sourceSemanticID") + protected Reference sourceSemanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/subjectId") - protected Reference subjectId; + @IRI("https://admin-shell.io/aas/3/0/EventPayload/subjectID") + protected Reference subjectID; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/timeStamp") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/timeStamp") protected String timeStamp; - @IRI("https://admin-shell.io/aas/3/0/RC02/EventPayload/topic") + @IRI("https://admin-shell.io/aas/3/0/EventPayload/topic") protected String topic; public DefaultEventPayload() { @@ -62,11 +63,11 @@ public DefaultEventPayload() { @Override public int hashCode() { return Objects.hash(this.observableReference, - this.observableSemanticId, - this.payload, + this.observableSemanticID, + Arrays.hashCode(this.payload), this.source, - this.sourceSemanticId, - this.subjectId, + this.sourceSemanticID, + this.subjectID, this.timeStamp, this.topic); } @@ -82,11 +83,11 @@ public boolean equals(Object obj) { } else { DefaultEventPayload other = (DefaultEventPayload) obj; return Objects.equals(this.observableReference, other.observableReference) && - Objects.equals(this.observableSemanticId, other.observableSemanticId) && - Objects.equals(this.payload, other.payload) && + Objects.equals(this.observableSemanticID, other.observableSemanticID) && + Arrays.equals(this.payload, other.payload) && Objects.equals(this.source, other.source) && - Objects.equals(this.sourceSemanticId, other.sourceSemanticId) && - Objects.equals(this.subjectId, other.subjectId) && + Objects.equals(this.sourceSemanticID, other.sourceSemanticID) && + Objects.equals(this.subjectID, other.subjectID) && Objects.equals(this.timeStamp, other.timeStamp) && Objects.equals(this.topic, other.topic); } @@ -103,22 +104,22 @@ public void setObservableReference(Reference observableReference) { } @Override - public Reference getObservableSemanticId() { - return observableSemanticId; + public Reference getObservableSemanticID() { + return observableSemanticID; } @Override - public void setObservableSemanticId(Reference observableSemanticId) { - this.observableSemanticId = observableSemanticId; + public void setObservableSemanticID(Reference observableSemanticID) { + this.observableSemanticID = observableSemanticID; } @Override - public String getPayload() { + public byte[] getPayload() { return payload; } @Override - public void setPayload(String payload) { + public void setPayload(byte[] payload) { this.payload = payload; } @@ -133,23 +134,23 @@ public void setSource(Reference source) { } @Override - public Reference getSourceSemanticId() { - return sourceSemanticId; + public Reference getSourceSemanticID() { + return sourceSemanticID; } @Override - public void setSourceSemanticId(Reference sourceSemanticId) { - this.sourceSemanticId = sourceSemanticId; + public void setSourceSemanticID(Reference sourceSemanticID) { + this.sourceSemanticID = sourceSemanticID; } @Override - public Reference getSubjectId() { - return subjectId; + public Reference getSubjectID() { + return subjectID; } @Override - public void setSubjectId(Reference subjectId) { - this.subjectId = subjectId; + public void setSubjectID(Reference subjectID) { + this.subjectID = subjectID; } @Override diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultExtension.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultExtension.java index 9fc6a390a..7f0212ad5 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultExtension.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultExtension.java @@ -14,7 +14,7 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.Extension; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; @@ -34,28 +34,26 @@ @IRI("aas:Extension") public class DefaultExtension implements Extension { - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/name") + @IRI("https://admin-shell.io/aas/3/0/Extension/name") protected String name; - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/refersTo") - protected Reference refersTo; + @IRI("https://admin-shell.io/aas/3/0/Extension/refersTo") + protected List refersTo = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/value") + @IRI("https://admin-shell.io/aas/3/0/Extension/value") protected String value; - @IRI("https://admin-shell.io/aas/3/0/RC02/Extension/valueType") - protected DataTypeDefXsd valueType; + @IRI("https://admin-shell.io/aas/3/0/Extension/valueType") + protected DataTypeDefXSD valueType; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); public DefaultExtension() { - this.valueType = DataTypeDefXsd.STRING; - } @Override @@ -64,7 +62,7 @@ public int hashCode() { this.refersTo, this.value, this.valueType, - this.semanticId, + this.semanticID, this.supplementalSemanticIds); } @@ -82,7 +80,7 @@ public boolean equals(Object obj) { Objects.equals(this.refersTo, other.refersTo) && Objects.equals(this.value, other.value) && Objects.equals(this.valueType, other.valueType) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds); } } @@ -98,12 +96,12 @@ public void setName(String name) { } @Override - public Reference getRefersTo() { + public List getRefersTo() { return refersTo; } @Override - public void setRefersTo(Reference refersTo) { + public void setRefersTo(List refersTo) { this.refersTo = refersTo; } @@ -118,23 +116,23 @@ public void setValue(String value) { } @Override - public DataTypeDefXsd getValueType() { + public DataTypeDefXSD getValueType() { return valueType; } @Override - public void setValueType(DataTypeDefXsd valueType) { + public void setValueType(DataTypeDefXSD valueType) { this.valueType = valueType; } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultFile.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultFile.java index c09a64c99..146fed567 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultFile.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultFile.java @@ -32,51 +32,41 @@ @IRI("aas:File") public class DefaultFile implements File { - @IRI("https://admin-shell.io/aas/3/0/RC02/File/contentType") + @IRI("https://admin-shell.io/aas/3/0/File/contentType") protected String contentType; - @IRI("https://admin-shell.io/aas/3/0/RC02/File/value") + @IRI("https://admin-shell.io/aas/3/0/File/value") protected String value; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultFile() { - this.category = "VARIABLE"; - - this.kind = ModelingKind.INSTANCE; - } @Override @@ -84,11 +74,9 @@ public int hashCode() { return Objects.hash(this.contentType, this.value, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -109,11 +97,9 @@ public boolean equals(Object obj) { return Objects.equals(this.contentType, other.contentType) && Objects.equals(this.value, other.value) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -153,13 +139,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -172,16 +158,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -193,32 +169,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultKey.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultKey.java index 9cdf44cec..d098f2840 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultKey.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultKey.java @@ -31,10 +31,10 @@ @IRI("aas:Key") public class DefaultKey implements Key { - @IRI("https://admin-shell.io/aas/3/0/RC02/Key/type") + @IRI("https://admin-shell.io/aas/3/0/Key/type") protected KeyTypes type; - @IRI("https://admin-shell.io/aas/3/0/RC02/Key/value") + @IRI("https://admin-shell.io/aas/3/0/Key/value") protected String value; public DefaultKey() { diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringDefinitionTypeIec61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringDefinitionTypeIec61360.java new file mode 100644 index 000000000..ed0a94c2f --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringDefinitionTypeIec61360.java @@ -0,0 +1,100 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.impl; + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.LangStringDefinitionTypeIec61360Builder; + +import java.util.Objects; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360; + + +/** + * Default implementation of package + * org.eclipse.digitaltwin.aas4j.v3.model.LangStringDefinitionTypeIec61360 + * + * String with length 1023 maximum and minimum 1 characters and with language tags + */ + +@IRI("aas:LangStringDefinitionTypeIEC61360") +public class DefaultLangStringDefinitionTypeIec61360 implements LangStringDefinitionTypeIec61360 { + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/language") + protected String language; + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/text") + protected String text; + + public DefaultLangStringDefinitionTypeIec61360() { + + } + + @Override + public int hashCode() { + return Objects.hash(this.language, + this.text); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } else if (obj == null) { + return false; + } else if (this.getClass() != obj.getClass()) { + return false; + } else { + DefaultLangStringDefinitionTypeIec61360 other = (DefaultLangStringDefinitionTypeIec61360) obj; + return Objects.equals(this.language, other.language) && + Objects.equals(this.text, other.text); + } + } + + @Override + public String getLanguage() { + return language; + } + + @Override + public void setLanguage(String language) { + this.language = language; + } + + @Override + public String getText() { + return text; + } + + @Override + public void setText(String text) { + this.text = text; + } + + /** + * This builder class can be used to construct a DefaultLangStringDefinitionTypeIec61360 bean. + */ + public static class Builder extends LangStringDefinitionTypeIec61360Builder { + + @Override + protected Builder getSelf() { + return this; + } + + @Override + protected DefaultLangStringDefinitionTypeIec61360 newBuildingInstance() { + return new DefaultLangStringDefinitionTypeIec61360(); + } + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringNameType.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringNameType.java new file mode 100644 index 000000000..1d165b23d --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringNameType.java @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.impl; + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.LangStringNameTypeBuilder; + +import java.util.Objects; + + +/** + * Default implementation of package org.eclipse.digitaltwin.aas4j.v3.model.LangStringNameType + * + * String with length 128 maximum and minimum 1 characters and with language tags + */ + +@IRI("aas:LangStringNameType") +public class DefaultLangStringNameType implements LangStringNameType { + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/language") + protected String language; + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/text") + protected String text; + + public DefaultLangStringNameType() { + + } + + @Override + public int hashCode() { + return Objects.hash(this.language, + this.text); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } else if (obj == null) { + return false; + } else if (this.getClass() != obj.getClass()) { + return false; + } else { + DefaultLangStringNameType other = (DefaultLangStringNameType) obj; + return Objects.equals(this.language, other.language) && + Objects.equals(this.text, other.text); + } + } + + @Override + public String getLanguage() { + return language; + } + + @Override + public void setLanguage(String language) { + this.language = language; + } + + @Override + public String getText() { + return text; + } + + @Override + public void setText(String text) { + this.text = text; + } + + /** + * This builder class can be used to construct a DefaultLangStringNameType bean. + */ + public static class Builder extends LangStringNameTypeBuilder { + + @Override + protected Builder getSelf() { + return this; + } + + @Override + protected DefaultLangStringNameType newBuildingInstance() { + return new DefaultLangStringNameType(); + } + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringPreferredNameTypeIec61360.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringPreferredNameTypeIec61360.java new file mode 100644 index 000000000..6e60307a3 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringPreferredNameTypeIec61360.java @@ -0,0 +1,100 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.impl; + +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.LangStringPreferredNameTypeIec61360Builder; + +import java.util.Objects; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360; + + +/** + * Default implementation of package + * org.eclipse.digitaltwin.aas4j.v3.model.LangStringPreferredNameTypeIec61360 + * + * String with length 255 maximum and minimum 1 characters and with language tags + */ + +@IRI("aas:LangStringPreferredNameTypeIEC61360") +public class DefaultLangStringPreferredNameTypeIec61360 implements LangStringPreferredNameTypeIec61360 { + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/language") + protected String language; + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/text") + protected String text; + + public DefaultLangStringPreferredNameTypeIec61360() { + + } + + @Override + public int hashCode() { + return Objects.hash(this.language, + this.text); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } else if (obj == null) { + return false; + } else if (this.getClass() != obj.getClass()) { + return false; + } else { + DefaultLangStringPreferredNameTypeIec61360 other = (DefaultLangStringPreferredNameTypeIec61360) obj; + return Objects.equals(this.language, other.language) && + Objects.equals(this.text, other.text); + } + } + + @Override + public String getLanguage() { + return language; + } + + @Override + public void setLanguage(String language) { + this.language = language; + } + + @Override + public String getText() { + return text; + } + + @Override + public void setText(String text) { + this.text = text; + } + + /** + * This builder class can be used to construct a DefaultLangStringPreferredNameTypeIec61360 bean. + */ + public static class Builder extends LangStringPreferredNameTypeIec61360Builder { + + @Override + protected Builder getSelf() { + return this; + } + + @Override + protected DefaultLangStringPreferredNameTypeIec61360 newBuildingInstance() { + return new DefaultLangStringPreferredNameTypeIec61360(); + } + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangString.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringShortNameTypeIec61360.java similarity index 57% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangString.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringShortNameTypeIec61360.java index 206c081a5..adf213af1 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangString.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringShortNameTypeIec61360.java @@ -14,56 +14,37 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; -import org.eclipse.digitaltwin.aas4j.v3.model.LangString; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.builder.LangStringBuilder; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.LangStringShortNameTypeIec61360Builder; import java.util.Objects; +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringShortNameTypeIec61360; -@IRI("rdf:langString") -public class DefaultLangString implements LangString { +/** + * Default implementation of package + * org.eclipse.digitaltwin.aas4j.v3.model.LangStringShortNameTypeIec61360 + * + * String with length 18 maximum and minimum 1 characters and with language tags + */ - protected String language = null; - protected String text = null; +@IRI("aas:LangStringShortNameTypeIEC61360") +public class DefaultLangStringShortNameTypeIec61360 implements LangStringShortNameTypeIec61360 { - public DefaultLangString() { - super(); - } + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/language") + protected String language; - public DefaultLangString(String textAndLanguage) { - if (textAndLanguage.contains("@")) { - String[] splitString = textAndLanguage.split("@"); - this.text = splitString[0]; - this.language = splitString[1]; - } else { - this.text = textAndLanguage; - } - } + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/text") + protected String text; - public DefaultLangString(String text, String language) { - this.text = text; - this.language = language; - } + public DefaultLangStringShortNameTypeIec61360() { - @Override - public String getLanguage() { - return language; - } - - @Override - public void setLanguage(String language) { - this.language = language; } @Override - public String getText() { - return text; - } - - @Override - public void setText(String text) { - this.text = text; + public int hashCode() { + return Objects.hash(this.language, + this.text); } @Override @@ -75,29 +56,36 @@ public boolean equals(Object obj) { } else if (this.getClass() != obj.getClass()) { return false; } else { - DefaultLangString other = (DefaultLangString) obj; - return Objects.equals(this.language, other.language) && Objects.equals(this.text, other.text); + DefaultLangStringShortNameTypeIec61360 other = (DefaultLangStringShortNameTypeIec61360) obj; + return Objects.equals(this.language, other.language) && + Objects.equals(this.text, other.text); } } @Override - public int hashCode() { - return Objects.hash(this.language, this.text); + public String getLanguage() { + return language; } @Override - public String toString() { - String result = this.text; - if (this.language != null && !this.language.isEmpty()) { - return "\"" + result + "\"@" + this.language; - } - return result; + public void setLanguage(String language) { + this.language = language; + } + + @Override + public String getText() { + return text; + } + + @Override + public void setText(String text) { + this.text = text; } /** - * This builder class can be used to construct a DefaultLangString bean. + * This builder class can be used to construct a DefaultLangStringShortNameTypeIec61360 bean. */ - public static class Builder extends LangStringBuilder { + public static class Builder extends LangStringShortNameTypeIec61360Builder { @Override protected Builder getSelf() { @@ -105,8 +93,8 @@ protected Builder getSelf() { } @Override - protected DefaultLangString newBuildingInstance() { - return new DefaultLangString(); + protected DefaultLangStringShortNameTypeIec61360 newBuildingInstance() { + return new DefaultLangStringShortNameTypeIec61360(); } } } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringTextType.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringTextType.java new file mode 100644 index 000000000..90c243c77 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLangStringTextType.java @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.impl; + +import org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.LangStringTextTypeBuilder; + +import java.util.Objects; + + +/** + * Default implementation of package org.eclipse.digitaltwin.aas4j.v3.model.LangStringTextType + * + * String with length 1023 maximum and minimum 1 characters and with language tags + */ + +@IRI("aas:LangStringTextType") +public class DefaultLangStringTextType implements LangStringTextType { + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/language") + protected String language; + + @IRI("https://admin-shell.io/aas/3/0/AbstractLangString/text") + protected String text; + + public DefaultLangStringTextType() { + + } + + @Override + public int hashCode() { + return Objects.hash(this.language, + this.text); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } else if (obj == null) { + return false; + } else if (this.getClass() != obj.getClass()) { + return false; + } else { + DefaultLangStringTextType other = (DefaultLangStringTextType) obj; + return Objects.equals(this.language, other.language) && + Objects.equals(this.text, other.text); + } + } + + @Override + public String getLanguage() { + return language; + } + + @Override + public void setLanguage(String language) { + this.language = language; + } + + @Override + public String getText() { + return text; + } + + @Override + public void setText(String text) { + this.text = text; + } + + /** + * This builder class can be used to construct a DefaultLangStringTextType bean. + */ + public static class Builder extends LangStringTextTypeBuilder { + + @Override + protected Builder getSelf() { + return this; + } + + @Override + protected DefaultLangStringTextType newBuildingInstance() { + return new DefaultLangStringTextType(); + } + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLevelType.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLevelType.java new file mode 100644 index 000000000..5251649b3 --- /dev/null +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultLevelType.java @@ -0,0 +1,130 @@ +/* + * Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.eclipse.digitaltwin.aas4j.v3.model.impl; + +import org.eclipse.digitaltwin.aas4j.v3.model.LevelType; +import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.LevelTypeBuilder; + +import java.util.Objects; + + +/** + * Default implementation of package org.eclipse.digitaltwin.aas4j.v3.model.LevelType + * + * Value represented by up to four variants of a numeric value in a specific role: MIN, NOM, TYP and + * MAX. True means that the value is available, false means the value is not available. + */ + +@IRI("aas:LevelType") +public class DefaultLevelType implements LevelType { + + @IRI("https://admin-shell.io/aas/3/0/LevelType/max") + protected boolean max; + + @IRI("https://admin-shell.io/aas/3/0/LevelType/min") + protected boolean min; + + @IRI("https://admin-shell.io/aas/3/0/LevelType/nom") + protected boolean nom; + + @IRI("https://admin-shell.io/aas/3/0/LevelType/typ") + protected boolean typ; + + public DefaultLevelType() { + + } + + @Override + public int hashCode() { + return Objects.hash(this.max, + this.min, + this.nom, + this.typ); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } else if (obj == null) { + return false; + } else if (this.getClass() != obj.getClass()) { + return false; + } else { + DefaultLevelType other = (DefaultLevelType) obj; + return Objects.equals(this.max, other.max) && + Objects.equals(this.min, other.min) && + Objects.equals(this.nom, other.nom) && + Objects.equals(this.typ, other.typ); + } + } + + @Override + public boolean getMax() { + return max; + } + + @Override + public void setMax(boolean max) { + this.max = max; + } + + @Override + public boolean getMin() { + return min; + } + + @Override + public void setMin(boolean min) { + this.min = min; + } + + @Override + public boolean getNom() { + return nom; + } + + @Override + public void setNom(boolean nom) { + this.nom = nom; + } + + @Override + public boolean getTyp() { + return typ; + } + + @Override + public void setTyp(boolean typ) { + this.typ = typ; + } + + /** + * This builder class can be used to construct a DefaultLevelType bean. + */ + public static class Builder extends LevelTypeBuilder { + + @Override + protected Builder getSelf() { + return this; + } + + @Override + protected DefaultLevelType newBuildingInstance() { + return new DefaultLevelType(); + } + } +} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultMultiLanguageProperty.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultMultiLanguageProperty.java index 70980c724..56f9cb8f7 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultMultiLanguageProperty.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultMultiLanguageProperty.java @@ -32,63 +32,51 @@ @IRI("aas:MultiLanguageProperty") public class DefaultMultiLanguageProperty implements MultiLanguageProperty { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/value") - protected List value = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/MultiLanguageProperty/value") + protected List value = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/MultiLanguageProperty/valueId") - protected Reference valueId; + @IRI("https://admin-shell.io/aas/3/0/MultiLanguageProperty/valueID") + protected Reference valueID; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultMultiLanguageProperty() { - this.category = "VARIABLE"; - - this.kind = ModelingKind.INSTANCE; - } @Override public int hashCode() { return Objects.hash(this.value, - this.valueId, + this.valueID, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -107,13 +95,11 @@ public boolean equals(Object obj) { } else { DefaultMultiLanguageProperty other = (DefaultMultiLanguageProperty) obj; return Objects.equals(this.value, other.value) && - Objects.equals(this.valueId, other.valueId) && + Objects.equals(this.valueID, other.valueID) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -123,23 +109,23 @@ public boolean equals(Object obj) { } @Override - public List getValue() { + public List getValue() { return value; } @Override - public void setValue(List value) { + public void setValue(List value) { this.value = value; } @Override - public Reference getValueId() { - return valueId; + public Reference getValueID() { + return valueID; } @Override - public void setValueId(Reference valueId) { - this.valueId = valueId; + public void setValueID(Reference valueID) { + this.valueID = valueID; } @Override @@ -153,13 +139,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -172,16 +158,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -193,32 +169,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperation.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperation.java index ce5bc6373..51f9b021d 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperation.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperation.java @@ -32,52 +32,44 @@ @IRI("aas:Operation") public class DefaultOperation implements Operation { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Operation/inoutputVariables") + @IRI("https://admin-shell.io/aas/3/0/Operation/inoutputVariables") protected List inoutputVariables = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Operation/inputVariables") + @IRI("https://admin-shell.io/aas/3/0/Operation/inputVariables") protected List inputVariables = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Operation/outputVariables") + @IRI("https://admin-shell.io/aas/3/0/Operation/outputVariables") protected List outputVariables = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultOperation() { - this.kind = ModelingKind.INSTANCE; - } @Override @@ -86,11 +78,9 @@ public int hashCode() { this.inputVariables, this.outputVariables, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -112,11 +102,9 @@ public boolean equals(Object obj) { Objects.equals(this.inputVariables, other.inputVariables) && Objects.equals(this.outputVariables, other.outputVariables) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -166,13 +154,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -185,16 +173,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -206,32 +184,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperationVariable.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperationVariable.java index fc66fcd7e..6ba755f0a 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperationVariable.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultOperationVariable.java @@ -32,7 +32,7 @@ @IRI("aas:OperationVariable") public class DefaultOperationVariable implements OperationVariable { - @IRI("https://admin-shell.io/aas/3/0/RC02/OperationVariable/value") + @IRI("https://admin-shell.io/aas/3/0/OperationVariable/value") protected SubmodelElement value; public DefaultOperationVariable() {} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultProperty.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultProperty.java index e6cd7d2f0..738f5723f 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultProperty.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultProperty.java @@ -32,67 +32,55 @@ @IRI("aas:Property") public class DefaultProperty implements Property { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Property/value") + @IRI("https://admin-shell.io/aas/3/0/Property/value") protected String value; - @IRI("https://admin-shell.io/aas/3/0/RC02/Property/valueId") - protected Reference valueId; + @IRI("https://admin-shell.io/aas/3/0/Property/valueID") + protected Reference valueID; - @IRI("https://admin-shell.io/aas/3/0/RC02/Property/valueType") - protected DataTypeDefXsd valueType; + @IRI("https://admin-shell.io/aas/3/0/Property/valueType") + protected DataTypeDefXSD valueType; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultProperty() { - this.category = "VARIABLE"; - - this.kind = ModelingKind.INSTANCE; - } @Override public int hashCode() { return Objects.hash(this.value, - this.valueId, + this.valueID, this.valueType, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -111,14 +99,12 @@ public boolean equals(Object obj) { } else { DefaultProperty other = (DefaultProperty) obj; return Objects.equals(this.value, other.value) && - Objects.equals(this.valueId, other.valueId) && + Objects.equals(this.valueID, other.valueID) && Objects.equals(this.valueType, other.valueType) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -138,22 +124,22 @@ public void setValue(String value) { } @Override - public Reference getValueId() { - return valueId; + public Reference getValueID() { + return valueID; } @Override - public void setValueId(Reference valueId) { - this.valueId = valueId; + public void setValueID(Reference valueID) { + this.valueID = valueID; } @Override - public DataTypeDefXsd getValueType() { + public DataTypeDefXSD getValueType() { return valueType; } @Override - public void setValueType(DataTypeDefXsd valueType) { + public void setValueType(DataTypeDefXSD valueType) { this.valueType = valueType; } @@ -168,13 +154,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -187,16 +173,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -208,32 +184,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultQualifier.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultQualifier.java index fd23ad206..fc1d46bb3 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultQualifier.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultQualifier.java @@ -14,7 +14,7 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; -import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXsd; +import org.eclipse.digitaltwin.aas4j.v3.model.DataTypeDefXSD; import org.eclipse.digitaltwin.aas4j.v3.model.Qualifier; import org.eclipse.digitaltwin.aas4j.v3.model.QualifierKind; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; @@ -36,29 +36,28 @@ @IRI("aas:Qualifier") public class DefaultQualifier implements Qualifier { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/kind") + @IRI("https://admin-shell.io/aas/3/0/Qualifier/kind") protected QualifierKind kind; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/type") + @IRI("https://admin-shell.io/aas/3/0/Qualifier/type") protected String type; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/value") + @IRI("https://admin-shell.io/aas/3/0/Qualifier/value") protected String value; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/valueId") - protected Reference valueId; + @IRI("https://admin-shell.io/aas/3/0/Qualifier/valueID") + protected Reference valueID; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifier/valueType") - protected DataTypeDefXsd valueType; + @IRI("https://admin-shell.io/aas/3/0/Qualifier/valueType") + protected DataTypeDefXSD valueType; public DefaultQualifier() { - this.kind = QualifierKind.CONCEPT_QUALIFIER; } @@ -67,9 +66,9 @@ public int hashCode() { return Objects.hash(this.kind, this.type, this.value, - this.valueId, + this.valueID, this.valueType, - this.semanticId, + this.semanticID, this.supplementalSemanticIds); } @@ -86,9 +85,9 @@ public boolean equals(Object obj) { return Objects.equals(this.kind, other.kind) && Objects.equals(this.type, other.type) && Objects.equals(this.value, other.value) && - Objects.equals(this.valueId, other.valueId) && + Objects.equals(this.valueID, other.valueID) && Objects.equals(this.valueType, other.valueType) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds); } } @@ -124,33 +123,33 @@ public void setValue(String value) { } @Override - public Reference getValueId() { - return valueId; + public Reference getValueID() { + return valueID; } @Override - public void setValueId(Reference valueId) { - this.valueId = valueId; + public void setValueID(Reference valueID) { + this.valueID = valueID; } @Override - public DataTypeDefXsd getValueType() { + public DataTypeDefXSD getValueType() { return valueType; } @Override - public void setValueType(DataTypeDefXsd valueType) { + public void setValueType(DataTypeDefXSD valueType) { this.valueType = valueType; } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRange.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRange.java index 6a5166505..18710604c 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRange.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRange.java @@ -32,54 +32,44 @@ @IRI("aas:Range") public class DefaultRange implements Range { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Range/max") + @IRI("https://admin-shell.io/aas/3/0/Range/max") protected String max; - @IRI("https://admin-shell.io/aas/3/0/RC02/Range/min") + @IRI("https://admin-shell.io/aas/3/0/Range/min") protected String min; - @IRI("https://admin-shell.io/aas/3/0/RC02/Range/valueType") - protected DataTypeDefXsd valueType; + @IRI("https://admin-shell.io/aas/3/0/Range/valueType") + protected DataTypeDefXSD valueType; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; public DefaultRange() { - this.category = "VARIABLE"; - - this.kind = ModelingKind.INSTANCE; - } @Override @@ -88,11 +78,9 @@ public int hashCode() { this.min, this.valueType, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -114,11 +102,9 @@ public boolean equals(Object obj) { Objects.equals(this.min, other.min) && Objects.equals(this.valueType, other.valueType) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -148,12 +134,12 @@ public void setMin(String min) { } @Override - public DataTypeDefXsd getValueType() { + public DataTypeDefXSD getValueType() { return valueType; } @Override - public void setValueType(DataTypeDefXsd valueType) { + public void setValueType(DataTypeDefXSD valueType) { this.valueType = valueType; } @@ -168,13 +154,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -187,16 +173,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -208,32 +184,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReference.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReference.java index a1e803256..3817f9236 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReference.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReference.java @@ -34,13 +34,13 @@ @IRI("aas:Reference") public class DefaultReference implements Reference { - @IRI("https://admin-shell.io/aas/3/0/RC02/Reference/keys") + @IRI("https://admin-shell.io/aas/3/0/Reference/keys") protected List keys = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Reference/referredSemanticId") - protected Reference referredSemanticId; + @IRI("https://admin-shell.io/aas/3/0/Reference/referredSemanticID") + protected Reference referredSemanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/Reference/type") + @IRI("https://admin-shell.io/aas/3/0/Reference/type") protected ReferenceTypes type; public DefaultReference() { @@ -50,7 +50,7 @@ public DefaultReference() { @Override public int hashCode() { return Objects.hash(this.keys, - this.referredSemanticId, + this.referredSemanticID, this.type); } @@ -65,7 +65,7 @@ public boolean equals(Object obj) { } else { DefaultReference other = (DefaultReference) obj; return Objects.equals(this.keys, other.keys) && - Objects.equals(this.referredSemanticId, other.referredSemanticId) && + Objects.equals(this.referredSemanticID, other.referredSemanticID) && Objects.equals(this.type, other.type); } } @@ -81,13 +81,13 @@ public void setKeys(List keys) { } @Override - public Reference getReferredSemanticId() { - return referredSemanticId; + public Reference getReferredSemanticID() { + return referredSemanticID; } @Override - public void setReferredSemanticId(Reference referredSemanticId) { - this.referredSemanticId = referredSemanticId; + public void setReferredSemanticID(Reference referredSemanticID) { + this.referredSemanticID = referredSemanticID; } @Override diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReferenceElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReferenceElement.java index 82f8dcccd..3b36d2062 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReferenceElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultReferenceElement.java @@ -33,59 +33,47 @@ @IRI("aas:ReferenceElement") public class DefaultReferenceElement implements ReferenceElement { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; - @IRI("https://admin-shell.io/aas/3/0/RC02/ReferenceElement/value") + @IRI("https://admin-shell.io/aas/3/0/ReferenceElement/value") protected Reference value; public DefaultReferenceElement() { - this.category = "VARIABLE"; - - this.kind = ModelingKind.INSTANCE; - } @Override public int hashCode() { return Objects.hash(this.value, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -105,11 +93,9 @@ public boolean equals(Object obj) { DefaultReferenceElement other = (DefaultReferenceElement) obj; return Objects.equals(this.value, other.value) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -139,13 +125,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -158,16 +144,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -179,32 +155,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRelationshipElement.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRelationshipElement.java index 35c62f913..99bd400e0 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRelationshipElement.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultRelationshipElement.java @@ -33,49 +33,41 @@ @IRI("aas:RelationshipElement") public class DefaultRelationshipElement implements RelationshipElement { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; - @IRI("https://admin-shell.io/aas/3/0/RC02/RelationshipElement/first") + @IRI("https://admin-shell.io/aas/3/0/RelationshipElement/first") protected Reference first; - @IRI("https://admin-shell.io/aas/3/0/RC02/RelationshipElement/second") + @IRI("https://admin-shell.io/aas/3/0/RelationshipElement/second") protected Reference second; public DefaultRelationshipElement() { - this.kind = ModelingKind.INSTANCE; - } @Override @@ -83,11 +75,9 @@ public int hashCode() { return Objects.hash(this.first, this.second, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -108,11 +98,9 @@ public boolean equals(Object obj) { return Objects.equals(this.first, other.first) && Objects.equals(this.second, other.second) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -152,13 +140,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -171,16 +159,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -192,32 +170,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultResource.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultResource.java index 39c5e881f..44b40cb2b 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultResource.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultResource.java @@ -31,10 +31,10 @@ @IRI("aas:Resource") public class DefaultResource implements Resource { - @IRI("https://admin-shell.io/aas/3/0/RC02/Resource/contentType") + @IRI("https://admin-shell.io/aas/3/0/Resource/contentType") protected String contentType; - @IRI("https://admin-shell.io/aas/3/0/RC02/Resource/path") + @IRI("https://admin-shell.io/aas/3/0/Resource/path") protected String path; public DefaultResource() { diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSpecificAssetId.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSpecificAssetID.java similarity index 64% rename from model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSpecificAssetId.java rename to model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSpecificAssetID.java index 761fb5410..5c35ffb9e 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSpecificAssetId.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSpecificAssetID.java @@ -15,9 +15,9 @@ package org.eclipse.digitaltwin.aas4j.v3.model.impl; import org.eclipse.digitaltwin.aas4j.v3.model.Reference; -import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId; +import org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetID; import org.eclipse.digitaltwin.aas4j.v3.model.annotations.IRI; -import org.eclipse.digitaltwin.aas4j.v3.model.builder.SpecificAssetIdBuilder; +import org.eclipse.digitaltwin.aas4j.v3.model.builder.SpecificAssetIDBuilder; import java.util.ArrayList; import java.util.List; @@ -25,39 +25,39 @@ /** - * Default implementation of package org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetId + * Default implementation of package org.eclipse.digitaltwin.aas4j.v3.model.SpecificAssetID * * A specific asset ID describes a generic supplementary identifying attribute of the asset. */ -@IRI("aas:SpecificAssetId") -public class DefaultSpecificAssetId implements SpecificAssetId { +@IRI("aas:SpecificAssetID") +public class DefaultSpecificAssetID implements SpecificAssetID { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/externalSubjectId") - protected Reference externalSubjectId; + @IRI("https://admin-shell.io/aas/3/0/SpecificAssetID/externalSubjectID") + protected Reference externalSubjectID; - @IRI("https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/name") + @IRI("https://admin-shell.io/aas/3/0/SpecificAssetID/name") protected String name; - @IRI("https://admin-shell.io/aas/3/0/RC02/SpecificAssetId/value") + @IRI("https://admin-shell.io/aas/3/0/SpecificAssetID/value") protected String value; - public DefaultSpecificAssetId() { + public DefaultSpecificAssetID() { } @Override public int hashCode() { - return Objects.hash(this.externalSubjectId, + return Objects.hash(this.externalSubjectID, this.name, this.value, - this.semanticId, + this.semanticID, this.supplementalSemanticIds); } @@ -70,23 +70,23 @@ public boolean equals(Object obj) { } else if (this.getClass() != obj.getClass()) { return false; } else { - DefaultSpecificAssetId other = (DefaultSpecificAssetId) obj; - return Objects.equals(this.externalSubjectId, other.externalSubjectId) && + DefaultSpecificAssetID other = (DefaultSpecificAssetID) obj; + return Objects.equals(this.externalSubjectID, other.externalSubjectID) && Objects.equals(this.name, other.name) && Objects.equals(this.value, other.value) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds); } } @Override - public Reference getExternalSubjectId() { - return externalSubjectId; + public Reference getExternalSubjectID() { + return externalSubjectID; } @Override - public void setExternalSubjectId(Reference externalSubjectId) { - this.externalSubjectId = externalSubjectId; + public void setExternalSubjectID(Reference externalSubjectID) { + this.externalSubjectID = externalSubjectID; } @Override @@ -110,13 +110,13 @@ public void setValue(String value) { } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -130,9 +130,9 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) } /** - * This builder class can be used to construct a DefaultSpecificAssetId bean. + * This builder class can be used to construct a DefaultSpecificAssetID bean. */ - public static class Builder extends SpecificAssetIdBuilder { + public static class Builder extends SpecificAssetIDBuilder { @Override protected Builder getSelf() { @@ -140,8 +140,8 @@ protected Builder getSelf() { } @Override - protected DefaultSpecificAssetId newBuildingInstance() { - return new DefaultSpecificAssetId(); + protected DefaultSpecificAssetID newBuildingInstance() { + return new DefaultSpecificAssetID(); } } } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodel.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodel.java index 123da72f4..17f582dc9 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodel.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodel.java @@ -32,52 +32,47 @@ @IRI("aas:Submodel") public class DefaultSubmodel implements Submodel { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasKind/kind") + protected ModellingKind kind; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/administration") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/administration") protected AdministrativeInformation administration; - @IRI("https://admin-shell.io/aas/3/0/RC02/Identifiable/id") + @IRI("https://admin-shell.io/aas/3/0/Identifiable/id") protected String id; - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; - @IRI("https://admin-shell.io/aas/3/0/RC02/Submodel/submodelElements") + @IRI("https://admin-shell.io/aas/3/0/Submodel/submodelElements") protected List submodelElements = new ArrayList<>(); public DefaultSubmodel() { - this.kind = ModelingKind.INSTANCE; - } @Override @@ -87,12 +82,11 @@ public int hashCode() { this.administration, this.id, this.category, - this.checksum, this.description, this.displayName, this.idShort, this.extensions, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, this.kind, this.qualifiers); @@ -113,12 +107,11 @@ public boolean equals(Object obj) { Objects.equals(this.administration, other.administration) && Objects.equals(this.id, other.id) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && Objects.equals(this.extensions, other.extensions) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && Objects.equals(this.kind, other.kind) && Objects.equals(this.qualifiers, other.qualifiers); @@ -176,32 +169,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } @@ -226,13 +209,13 @@ public void setExtensions(List extensions) { } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -246,12 +229,12 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) } @Override - public ModelingKind getKind() { + public ModellingKind getKind() { return kind; } @Override - public void setKind(ModelingKind kind) { + public void setKind(ModellingKind kind) { this.kind = kind; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementCollection.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementCollection.java index 8824952b5..2cb74847c 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementCollection.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementCollection.java @@ -35,57 +35,47 @@ @IRI("aas:SubmodelElementCollection") public class DefaultSubmodelElementCollection implements SubmodelElementCollection { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementCollection/value") + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementCollection/value") protected Collection value = new ArrayList<>(); public DefaultSubmodelElementCollection() { - this.kind = ModelingKind.INSTANCE; - } @Override public int hashCode() { return Objects.hash(this.value, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -105,11 +95,9 @@ public boolean equals(Object obj) { DefaultSubmodelElementCollection other = (DefaultSubmodelElementCollection) obj; return Objects.equals(this.value, other.value) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -139,13 +127,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -158,16 +146,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -179,32 +157,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementList.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementList.java index cdd221433..745f21e17 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementList.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultSubmodelElementList.java @@ -32,74 +32,63 @@ @IRI("aas:SubmodelElementList") public class DefaultSubmodelElementList implements SubmodelElementList { - @IRI("https://admin-shell.io/aas/3/0/RC02/HasDataSpecification/embeddedDataSpecifications") + @IRI("https://admin-shell.io/aas/3/0/HasDataSpecification/embeddedDataSpecifications") protected List embeddedDataSpecifications = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasExtensions/extensions") + @IRI("https://admin-shell.io/aas/3/0/HasExtensions/extensions") protected List extensions = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/HasKind/kind") - protected ModelingKind kind; + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/semanticID") + protected Reference semanticID; - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/semanticId") - protected Reference semanticId; - - @IRI("https://admin-shell.io/aas/3/0/RC02/HasSemantics/supplementalSemanticIds") + @IRI("https://admin-shell.io/aas/3/0/HasSemantics/supplementalSemanticIds") protected List supplementalSemanticIds = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Qualifiable/qualifiers") + @IRI("https://admin-shell.io/aas/3/0/Qualifiable/qualifiers") protected List qualifiers = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/category") + @IRI("https://admin-shell.io/aas/3/0/Referable/category") protected String category; - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/checksum") - protected String checksum; - - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/description") - protected List description = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/description") + protected List description = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/displayName") - protected List displayName = new ArrayList<>(); + @IRI("https://admin-shell.io/aas/3/0/Referable/displayName") + protected List displayName = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/Referable/idShort") + @IRI("https://admin-shell.io/aas/3/0/Referable/idShort") protected String idShort; - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/orderRelevant") + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/orderRelevant") protected boolean orderRelevant; - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/semanticIdListElement") - protected Reference semanticIdListElement; + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/semanticIDListElement") + protected Reference semanticIDListElement; - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/typeValueListElement") - protected AasSubmodelElements typeValueListElement; + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/typeValueListElement") + protected AASSubmodelElements typeValueListElement; - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/value") + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/value") protected List value = new ArrayList<>(); - @IRI("https://admin-shell.io/aas/3/0/RC02/SubmodelElementList/valueTypeListElement") - protected DataTypeDefXsd valueTypeListElement; + @IRI("https://admin-shell.io/aas/3/0/SubmodelElementList/valueTypeListElement") + protected DataTypeDefXSD valueTypeListElement; public DefaultSubmodelElementList() { - this.orderRelevant = Boolean.TRUE; - - this.kind = ModelingKind.INSTANCE; } @Override public int hashCode() { return Objects.hash(this.orderRelevant, - this.semanticIdListElement, + this.semanticIDListElement, this.typeValueListElement, this.value, this.valueTypeListElement, this.embeddedDataSpecifications, - this.semanticId, + this.semanticID, this.supplementalSemanticIds, - this.kind, this.category, - this.checksum, this.description, this.displayName, this.idShort, @@ -118,16 +107,14 @@ public boolean equals(Object obj) { } else { DefaultSubmodelElementList other = (DefaultSubmodelElementList) obj; return Objects.equals(this.orderRelevant, other.orderRelevant) && - Objects.equals(this.semanticIdListElement, other.semanticIdListElement) && + Objects.equals(this.semanticIDListElement, other.semanticIDListElement) && Objects.equals(this.typeValueListElement, other.typeValueListElement) && Objects.equals(this.value, other.value) && Objects.equals(this.valueTypeListElement, other.valueTypeListElement) && Objects.equals(this.embeddedDataSpecifications, other.embeddedDataSpecifications) && - Objects.equals(this.semanticId, other.semanticId) && + Objects.equals(this.semanticID, other.semanticID) && Objects.equals(this.supplementalSemanticIds, other.supplementalSemanticIds) && - Objects.equals(this.kind, other.kind) && Objects.equals(this.category, other.category) && - Objects.equals(this.checksum, other.checksum) && Objects.equals(this.description, other.description) && Objects.equals(this.displayName, other.displayName) && Objects.equals(this.idShort, other.idShort) && @@ -147,22 +134,22 @@ public void setOrderRelevant(boolean orderRelevant) { } @Override - public Reference getSemanticIdListElement() { - return semanticIdListElement; + public Reference getSemanticIDListElement() { + return semanticIDListElement; } @Override - public void setSemanticIdListElement(Reference semanticIdListElement) { - this.semanticIdListElement = semanticIdListElement; + public void setSemanticIDListElement(Reference semanticIDListElement) { + this.semanticIDListElement = semanticIDListElement; } @Override - public AasSubmodelElements getTypeValueListElement() { + public AASSubmodelElements getTypeValueListElement() { return typeValueListElement; } @Override - public void setTypeValueListElement(AasSubmodelElements typeValueListElement) { + public void setTypeValueListElement(AASSubmodelElements typeValueListElement) { this.typeValueListElement = typeValueListElement; } @@ -177,12 +164,12 @@ public void setValue(List value) { } @Override - public DataTypeDefXsd getValueTypeListElement() { + public DataTypeDefXSD getValueTypeListElement() { return valueTypeListElement; } @Override - public void setValueTypeListElement(DataTypeDefXsd valueTypeListElement) { + public void setValueTypeListElement(DataTypeDefXSD valueTypeListElement) { this.valueTypeListElement = valueTypeListElement; } @@ -197,13 +184,13 @@ public void setEmbeddedDataSpecifications(List embedd } @Override - public Reference getSemanticId() { - return semanticId; + public Reference getSemanticID() { + return semanticID; } @Override - public void setSemanticId(Reference semanticId) { - this.semanticId = semanticId; + public void setSemanticID(Reference semanticID) { + this.semanticID = semanticID; } @Override @@ -216,16 +203,6 @@ public void setSupplementalSemanticIds(List supplementalSemanticIds) this.supplementalSemanticIds = supplementalSemanticIds; } - @Override - public ModelingKind getKind() { - return kind; - } - - @Override - public void setKind(ModelingKind kind) { - this.kind = kind; - } - @Override public String getCategory() { return category; @@ -237,32 +214,22 @@ public void setCategory(String category) { } @Override - public String getChecksum() { - return checksum; - } - - @Override - public void setChecksum(String checksum) { - this.checksum = checksum; - } - - @Override - public List getDescription() { + public List getDescription() { return description; } @Override - public void setDescription(List description) { + public void setDescription(List description) { this.description = description; } @Override - public List getDisplayName() { + public List getDisplayName() { return displayName; } @Override - public void setDisplayName(List displayName) { + public void setDisplayName(List displayName) { this.displayName = displayName; } diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueList.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueList.java index a8bd4ad0f..a4c7d4236 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueList.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueList.java @@ -33,7 +33,7 @@ @IRI("aas:ValueList") public class DefaultValueList implements ValueList { - @IRI("https://admin-shell.io/aas/3/0/RC02/ValueList/valueReferencePairs") + @IRI("https://admin-shell.io/aas/3/0/ValueList/valueReferencePairs") protected List valueReferencePairs = new ArrayList<>(); public DefaultValueList() {} diff --git a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueReferencePair.java b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueReferencePair.java index 29e183cec..fbffa2f47 100644 --- a/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueReferencePair.java +++ b/model/src/main/java/org/eclipse/digitaltwin/aas4j/v3/model/impl/DefaultValueReferencePair.java @@ -32,11 +32,11 @@ @IRI("aas:ValueReferencePair") public class DefaultValueReferencePair implements ValueReferencePair { - @IRI("https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/value") + @IRI("https://admin-shell.io/aas/3/0/ValueReferencePair/value") protected String value; - @IRI("https://admin-shell.io/aas/3/0/RC02/ValueReferencePair/valueId") - protected Reference valueId; + @IRI("https://admin-shell.io/aas/3/0/ValueReferencePair/valueID") + protected Reference valueID; public DefaultValueReferencePair() { @@ -45,7 +45,7 @@ public DefaultValueReferencePair() { @Override public int hashCode() { return Objects.hash(this.value, - this.valueId); + this.valueID); } @Override @@ -59,7 +59,7 @@ public boolean equals(Object obj) { } else { DefaultValueReferencePair other = (DefaultValueReferencePair) obj; return Objects.equals(this.value, other.value) && - Objects.equals(this.valueId, other.valueId); + Objects.equals(this.valueID, other.valueID); } } @@ -74,13 +74,13 @@ public void setValue(String value) { } @Override - public Reference getValueId() { - return valueId; + public Reference getValueID() { + return valueID; } @Override - public void setValueId(Reference valueId) { - this.valueId = valueId; + public void setValueID(Reference valueID) { + this.valueID = valueID; } /** diff --git a/pom.xml b/pom.xml index 1f35036e0..3dd42ed59 100644 --- a/pom.xml +++ b/pom.xml @@ -40,9 +40,9 @@ 1 0 0 - -milestone-02 + -milestone-03 ${revision.major}.${revision.minor}.${revision.patch}${revision.suffix} - 1.0.0-milestone-02 + 1.0.0-milestone-03 UTF-8 UTF-8