From 8812710c6f12990eb87f62bc0344f48ac451a9db Mon Sep 17 00:00:00 2001 From: Nico Braunisch Date: Thu, 24 Aug 2023 14:37:40 +0200 Subject: [PATCH] Remove YAML files in aas-specs and move them to aas-specs-api --- README.md | 5 - schemas/yaml/README.md | 7 - schemas/yaml/aas-openapi.yaml | 804 ---------------------------------- schemas/yaml/aas.yaml | 800 --------------------------------- 4 files changed, 1616 deletions(-) delete mode 100644 schemas/yaml/README.md delete mode 100644 schemas/yaml/aas-openapi.yaml delete mode 100644 schemas/yaml/aas.yaml diff --git a/README.md b/README.md index c1c769312..9145ab1b8 100644 --- a/README.md +++ b/README.md @@ -37,11 +37,6 @@ The XML schema, mapping rules and examples are available at [schemas/xml/](schem ### XMI The XMI file for the UML metamodel is available at [schemas/xmi/](schemas/xmi/). - -### YAML - -The YAML files for the API definitions are available at [schemas/yaml/](schemas/yaml/). - ## Releases diff --git a/schemas/yaml/README.md b/schemas/yaml/README.md deleted file mode 100644 index 02bc8d9ce..000000000 --- a/schemas/yaml/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# YAML -The following repository presents a [YAML](https://yaml.org/spec/1.2.2/) representation of the Asset Administration Shell. The file [aas.yaml](aas.yaml) contains a one-to-one translation of the [AAS JSON Schema](../json/aas.json). - -For the API definition specified in [Details of the Asset Administration Shell - Part 2 - Application Programming Interfaces (Version 3.0)](https://industrialdigitaltwin.org/en/wp-content/uploads/sites/2/2023/04/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.pdf), the elements of the AAS metamodel must be (de)serialized according to the [AAS OpenAPI Domain](aas-openapi.yaml). Note that this file is slightly different to [aas.yaml](aas.yaml) due to restrictions of the SwaggerHub platform (see also - [SwaggerHub AAS Metamodel](https://app.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0), mainly the different references (`#/definitions/...` vs. `#/components/schemas/...`) and the limited recursion support. The latter limitation leads to the introduction of the abstract class `ReferenceParent`, which should not be used in any application and only exists to prevent a rendering bug. - -Note that this directory only contains the AAS metamodel classes. Additional classes introduced by the Part 2 specification can be found e.g. at [SwaggerHub](https://app.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0). These classes are not part of the metamodel and are therefore explicitely not released in this repository. diff --git a/schemas/yaml/aas-openapi.yaml b/schemas/yaml/aas-openapi.yaml deleted file mode 100644 index 3e2aef803..000000000 --- a/schemas/yaml/aas-openapi.yaml +++ /dev/null @@ -1,804 +0,0 @@ -# OpenAPI version identifier - required for OpenAPI 3.0 domains -openapi: 3.0.3 -info: - title: DotAAS Part 1 | Metamodel | Schemas - description: The schemas implementing Details of the Asset Administration Shell Part 1 - contact: - name: Constantin Ziesche, Andreas Orzelski, Florian Krebs, Bastian Rössl, Manuel Sauer, Jens Vialkowitsch, Michael Hoffmeister, Torben Miny, Sebastian Bader, Marko Ristin, Nico Braunisch - version: V3.0RC02 - termsOfService: https://github.com/admin-shell-io/aas-specs -components: - schemas: - AasSubmodelElements: - type: string - enum: - - AnnotatedRelationshipElement - - BasicEventElement - - Blob - - Capability - - DataElement - - Entity - - EventElement - - File - - MultiLanguageProperty - - Operation - - Property - - Range - - ReferenceElement - - RelationshipElement - - SubmodelElement - - SubmodelElementCollection - - SubmodelElementList - AdministrativeInformation: - allOf: - - $ref: '#/components/schemas/HasDataSpecification' - - properties: - version: - type: string - minLength: 1 - revision: - type: string - minLength: 1 - AnnotatedRelationshipElement: - allOf: - - $ref: '#/components/schemas/RelationshipElement' - - properties: - annotations: - type: array - items: - $ref: '#/components/schemas/DataElement' - minItems: 1 - AssetAdministrationShell: - allOf: - - $ref: '#/components/schemas/Identifiable' - - $ref: '#/components/schemas/HasDataSpecification' - - properties: - derivedFrom: - $ref: '#/components/schemas/Reference' - assetInformation: - $ref: '#/components/schemas/AssetInformation' - submodels: - type: array - items: - $ref: '#/components/schemas/Reference' - minItems: 1 - required: - - assetInformation - AssetInformation: - type: object - properties: - assetKind: - $ref: '#/components/schemas/AssetKind' - globalAssetId: - $ref: '#/components/schemas/Reference' - specificAssetIds: - type: array - items: - $ref: '#/components/schemas/SpecificAssetId' - minItems: 1 - defaultThumbnail: - $ref: '#/components/schemas/Resource' - required: - - assetKind - AssetKind: - type: string - enum: - - Instance - - Type - BasicEventElement: - allOf: - - $ref: '#/components/schemas/EventElement' - - properties: - observed: - $ref: '#/components/schemas/Reference' - direction: - $ref: '#/components/schemas/Direction' - state: - $ref: '#/components/schemas/StateOfEvent' - messageTopic: - type: string - minLength: 1 - messageBroker: - $ref: '#/components/schemas/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$ - 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$ - 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$ - required: - - observed - - direction - - state - Blob: - allOf: - - $ref: '#/components/schemas/DataElement' - - properties: - value: - type: string - format: byte - 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]))*\"))*$" - required: - - contentType - Capability: - $ref: '#/components/schemas/SubmodelElement' - ConceptDescription: - allOf: - - $ref: '#/components/schemas/Identifiable' - - $ref: '#/components/schemas/HasDataSpecification' - - properties: - isCaseOf: - type: array - items: - $ref: '#/components/schemas/Reference' - minItems: 1 - DataElement: - $ref: '#/components/schemas/SubmodelElement' - DataSpecificationContent: - type: object - properties: - modelType: - $ref: '#/components/schemas/ModelType' - required: - - modelType - DataSpecificationIEC61360: - allOf: - - $ref: '#/components/schemas/DataSpecificationContent' - - properties: - preferredName: - type: array - items: - $ref: '#/components/schemas/LangString' - minItems: 1 - shortName: - type: array - items: - $ref: '#/components/schemas/LangString' - minItems: 1 - unit: - type: string - minLength: 1 - unitId: - $ref: '#/components/schemas/Reference' - sourceOfDefinition: - type: string - minLength: 1 - symbol: - type: string - minLength: 1 - dataType: - $ref: '#/components/schemas/DataTypeIEC61360' - definition: - type: array - items: - $ref: '#/components/schemas/LangString' - minItems: 1 - valueFormat: - type: string - minLength: 1 - valueList: - $ref: '#/components/schemas/ValueList' - value: - type: string - levelType: - $ref: '#/components/schemas/LevelType' - required: - - preferredName - DataSpecificationPhysicalUnit: - allOf: - - $ref: '#/components/schemas/DataSpecificationContent' - - properties: - unitName: - type: string - minLength: 1 - unitSymbol: - type: string - minLength: 1 - definition: - type: array - items: - $ref: '#/components/schemas/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 - required: - - unitName - - unitSymbol - - definition - DataTypeDefXsd: - type: string - enum: - - xs:NonNegativeInteger - - xs:anyURI - - xs:base64Binary - - xs:boolean - - xs:byte - - xs:date - - xs:dateTime - - xs:dateTimeStamp - - xs:dayTimeDuration - - xs:decimal - - xs:double - - xs:duration - - xs:float - - xs:gDay - - xs:gMonth - - xs:gMonthDay - - xs:gYear - - xs:gYearMonth - - xs:hexBinary - - xs:int - - xs:integer - - xs:long - - xs:negativeInteger - - xs:nonPositiveInteger - - xs:positiveInteger - - xs:short - - xs:string - - xs:time - - xs:unsignedByte - - xs:unsignedInt - - xs:unsignedLong - - xs:unsignedShort - - xs:yearMonthDuration - DataTypeIEC61360: - type: string - enum: - - BLOB - - BOOLEAN - - DATE - - FILE - - HTML - - INTEGER_COUNT - - INTEGER_CURRENCY - - INTEGER_MEASURE - - IRDI - - IRI - - RATIONAL - - RATIONAL_MEASURE - - REAL_COUNT - - REAL_CURRENCY - - REAL_MEASURE - - STRING - - STRING_TRANSLATABLE - - TIME - - TIMESTAMP - Direction: - type: string - enum: - - INPUT - - OUTPUT - EmbeddedDataSpecification: - type: object - properties: - dataSpecification: - $ref: '#/components/schemas/Reference' - dataSpecificationContent: - $ref: '#/components/schemas/DataSpecificationContent' - required: - - dataSpecification - - dataSpecificationContent - Entity: - allOf: - - $ref: '#/components/schemas/SubmodelElement' - - properties: - statements: - type: array - items: - $ref: '#/components/schemas/SubmodelElement' - minItems: 1 - entityType: - $ref: '#/components/schemas/EntityType' - globalAssetId: - $ref: '#/components/schemas/Reference' - specificAssetId: - $ref: '#/components/schemas/SpecificAssetId' - required: - - entityType - EntityType: - type: string - enum: - - CoManagedEntity - - SelfManagedEntity - Environment: - type: object - properties: - assetAdministrationShells: - type: array - items: - $ref: '#/components/schemas/AssetAdministrationShell' - minItems: 1 - submodels: - type: array - items: - $ref: '#/components/schemas/Submodel' - minItems: 1 - conceptDescriptions: - type: array - items: - $ref: '#/components/schemas/ConceptDescription' - minItems: 1 - EventElement: - $ref: '#/components/schemas/SubmodelElement' - EventPayload: - type: object - properties: - source: - $ref: '#/components/schemas/Reference' - sourceSemanticId: - $ref: '#/components/schemas/Reference' - observableReference: - $ref: '#/components/schemas/Reference' - observableSemanticId: - $ref: '#/components/schemas/Reference' - topic: - type: string - minLength: 1 - subjectId: - $ref: '#/components/schemas/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$ - payload: - type: string - minLength: 1 - required: - - source - - observableReference - - timeStamp - Extension: - allOf: - - $ref: '#/components/schemas/HasSemantics' - - properties: - name: - type: string - minLength: 1 - valueType: - $ref: '#/components/schemas/DataTypeDefXsd' - value: - type: string - refersTo: - $ref: '#/components/schemas/Reference' - required: - - name - File: - allOf: - - $ref: '#/components/schemas/DataElement' - - 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]|[!$&'()*+,;=]|[:@]))*)*)?)$ - 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]))*\"))*$" - required: - - contentType - HasDataSpecification: - type: object - properties: - embeddedDataSpecifications: - type: array - items: - $ref: '#/components/schemas/EmbeddedDataSpecification' - minItems: 1 - HasExtensions: - type: object - properties: - extensions: - type: array - items: - $ref: '#/components/schemas/Extension' - minItems: 1 - HasKind: - type: object - properties: - kind: - $ref: '#/components/schemas/ModelingKind' - HasSemantics: - type: object - properties: - semanticId: - $ref: '#/components/schemas/Reference' - supplementalSemanticIds: - type: array - items: - $ref: '#/components/schemas/Reference' - minItems: 1 - Identifiable: - allOf: - - $ref: '#/components/schemas/Referable' - - properties: - administration: - $ref: '#/components/schemas/AdministrativeInformation' - id: - type: string - minLength: 1 - required: - - id - Key: - type: object - properties: - type: - $ref: '#/components/schemas/KeyTypes' - value: - type: string - minLength: 1 - required: - - type - - value - KeyTypes: - type: string - enum: - - AnnotatedRelationshipElement - - AssetAdministrationShell - - BasicEventElement - - Blob - - Capability - - ConceptDescription - - DataElement - - Entity - - EventElement - - File - - FragmentReference - - GlobalReference - - Identifiable - - MultiLanguageProperty - - Operation - - Property - - Range - - Referable - - ReferenceElement - - RelationshipElement - - Submodel - - SubmodelElement - - SubmodelElementCollection - - SubmodelElementList - LangString: - 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 - required: - - language - - text - LevelType: - type: string - enum: - - Max - - Min - - Nom - - Typ - ModelType: - type: string - enum: - - AnnotatedRelationshipElement - - AssetAdministrationShell - - BasicEventElement - - Blob - - Capability - - ConceptDescription - - DataSpecificationIEC61360 - - DataSpecificationPhysicalUnit - - Entity - - File - - MultiLanguageProperty - - Operation - - Property - - Range - - ReferenceElement - - RelationshipElement - - Submodel - - SubmodelElementCollection - - SubmodelElementList - ModelingKind: - type: string - enum: - - Instance - - Template - MultiLanguageProperty: - allOf: - - $ref: '#/components/schemas/DataElement' - - properties: - value: - type: array - items: - $ref: '#/components/schemas/LangString' - minItems: 1 - valueId: - $ref: '#/components/schemas/Reference' - Operation: - allOf: - - $ref: '#/components/schemas/SubmodelElement' - - properties: - inputVariables: - type: array - items: - $ref: '#/components/schemas/OperationVariable' - minItems: 1 - outputVariables: - type: array - items: - $ref: '#/components/schemas/OperationVariable' - minItems: 1 - inoutputVariables: - type: array - items: - $ref: '#/components/schemas/OperationVariable' - minItems: 1 - OperationVariable: - type: object - properties: - value: - $ref: '#/components/schemas/SubmodelElement' - required: - - value - Property: - allOf: - - $ref: '#/components/schemas/DataElement' - - properties: - valueType: - $ref: '#/components/schemas/DataTypeDefXsd' - value: - type: string - valueId: - $ref: '#/components/schemas/Reference' - required: - - valueType - Qualifiable: - type: object - properties: - qualifiers: - type: array - items: - $ref: '#/components/schemas/Qualifier' - minItems: 1 - modelType: - $ref: '#/components/schemas/ModelType' - required: - - modelType - Qualifier: - allOf: - - $ref: '#/components/schemas/HasSemantics' - - properties: - kind: - $ref: '#/components/schemas/QualifierKind' - type: - type: string - minLength: 1 - valueType: - $ref: '#/components/schemas/DataTypeDefXsd' - value: - type: string - valueId: - $ref: '#/components/schemas/Reference' - required: - - type - - valueType - QualifierKind: - type: string - enum: - - ConceptQualifier - - TemplateQualifier - - ValueQualifier - Range: - allOf: - - $ref: '#/components/schemas/DataElement' - - properties: - valueType: - $ref: '#/components/schemas/DataTypeDefXsd' - min: - type: string - max: - type: string - required: - - valueType - Referable: - allOf: - - $ref: '#/components/schemas/HasExtensions' - - properties: - category: - type: string - minLength: 1 - idShort: - type: string - maxLength: 128 - pattern: ^[a-zA-Z][a-zA-Z0-9_]+$ - displayName: - type: array - items: - $ref: '#/components/schemas/LangString' - minItems: 1 - description: - type: array - items: - $ref: '#/components/schemas/LangString' - minItems: 1 - checksum: - type: string - minLength: 1 - modelType: - $ref: '#/components/schemas/ModelType' - required: - - modelType - ReferenceParent: - # This class is introduced because of the recursion issue of SwaggerUi (see https://github.com/swagger-api/swagger-ui/issues/3325) - properties: - type: - "$ref": "#/components/schemas/ReferenceTypes" - keys: - type: array - items: - "$ref": "#/components/schemas/Key" - minItems: 1 - required: - - type - - keys - Reference: - allOf: - - "$ref": "#/components/schemas/ReferenceParent" - - properties: - referredSemanticId: - "$ref": "#/components/schemas/ReferenceParent" - ReferenceElement: - allOf: - - $ref: '#/components/schemas/DataElement' - - properties: - value: - $ref: '#/components/schemas/Reference' - ReferenceTypes: - type: string - enum: - - GlobalReference - - ModelReference - RelationshipElement: - allOf: - - $ref: '#/components/schemas/SubmodelElement' - - properties: - first: - $ref: '#/components/schemas/Reference' - second: - $ref: '#/components/schemas/Reference' - required: - - first - - second - 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]|[!$&'()*+,;=]|[:@]))*)*)?)$ - 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]))*\"))*$" - required: - - path - SpecificAssetId: - allOf: - - $ref: '#/components/schemas/HasSemantics' - - properties: - name: - type: string - minLength: 1 - value: - type: string - minLength: 1 - externalSubjectId: - $ref: '#/components/schemas/Reference' - required: - - name - - value - - externalSubjectId - StateOfEvent: - type: string - enum: - - 'OFF' - - 'ON' - Submodel: - allOf: - - $ref: '#/components/schemas/Identifiable' - - $ref: '#/components/schemas/HasKind' - - $ref: '#/components/schemas/HasSemantics' - - $ref: '#/components/schemas/Qualifiable' - - $ref: '#/components/schemas/HasDataSpecification' - - properties: - submodelElements: - type: array - items: - $ref: '#/components/schemas/SubmodelElement' - minItems: 1 - SubmodelElement: - allOf: - - $ref: '#/components/schemas/Referable' - - $ref: '#/components/schemas/HasKind' - - $ref: '#/components/schemas/HasSemantics' - - $ref: '#/components/schemas/Qualifiable' - - $ref: '#/components/schemas/HasDataSpecification' - SubmodelElementCollection: - allOf: - - $ref: '#/components/schemas/SubmodelElement' - - properties: - value: - type: array - items: - $ref: '#/components/schemas/SubmodelElement' - minItems: 1 - SubmodelElementList: - allOf: - - $ref: '#/components/schemas/SubmodelElement' - - properties: - orderRelevant: - type: boolean - value: - type: array - items: - $ref: '#/components/schemas/SubmodelElement' - minItems: 1 - semanticIdListElement: - $ref: '#/components/schemas/Reference' - typeValueListElement: - $ref: '#/components/schemas/AasSubmodelElements' - valueTypeListElement: - $ref: '#/components/schemas/DataTypeDefXsd' - required: - - typeValueListElement - ValueList: - type: object - properties: - valueReferencePairs: - type: array - items: - $ref: '#/components/schemas/ValueReferencePair' - minItems: 1 - required: - - valueReferencePairs - ValueReferencePair: - type: object - properties: - value: - type: string - valueId: - $ref: '#/components/schemas/Reference' - required: - - value - - valueId \ No newline at end of file diff --git a/schemas/yaml/aas.yaml b/schemas/yaml/aas.yaml deleted file mode 100644 index 503c2d838..000000000 --- a/schemas/yaml/aas.yaml +++ /dev/null @@ -1,800 +0,0 @@ -$schema: https://json-schema.org/draft/2019-09/schema -title: AssetAdministrationShellEnvironment -$id: http://www.admin-shell.io/schema/json/V3.0RC01 -type: object -allOf: - - $ref: '#/definitions/Environment' -definitions: - AasSubmodelElements: - type: string - enum: - - AnnotatedRelationshipElement - - BasicEventElement - - Blob - - Capability - - DataElement - - Entity - - EventElement - - File - - MultiLanguageProperty - - Operation - - Property - - Range - - ReferenceElement - - RelationshipElement - - SubmodelElement - - SubmodelElementCollection - - SubmodelElementList - AdministrativeInformation: - allOf: - - $ref: '#/definitions/HasDataSpecification' - - properties: - version: - type: string - minLength: 1 - revision: - type: string - minLength: 1 - AnnotatedRelationshipElement: - allOf: - - $ref: '#/definitions/RelationshipElement' - - properties: - annotations: - type: array - items: - $ref: '#/definitions/DataElement' - minItems: 1 - AssetAdministrationShell: - allOf: - - $ref: '#/definitions/Identifiable' - - $ref: '#/definitions/HasDataSpecification' - - properties: - derivedFrom: - $ref: '#/definitions/Reference' - assetInformation: - $ref: '#/definitions/AssetInformation' - submodels: - type: array - items: - $ref: '#/definitions/Reference' - minItems: 1 - required: - - assetInformation - AssetInformation: - type: object - properties: - assetKind: - $ref: '#/definitions/AssetKind' - globalAssetId: - $ref: '#/definitions/Reference' - specificAssetIds: - type: array - items: - $ref: '#/definitions/SpecificAssetId' - minItems: 1 - defaultThumbnail: - $ref: '#/definitions/Resource' - required: - - assetKind - AssetKind: - type: string - enum: - - Instance - - Type - BasicEventElement: - allOf: - - $ref: '#/definitions/EventElement' - - properties: - observed: - $ref: '#/definitions/Reference' - direction: - $ref: '#/definitions/Direction' - state: - $ref: '#/definitions/StateOfEvent' - messageTopic: - type: string - minLength: 1 - 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$ - 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$ - 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$ - required: - - observed - - direction - - state - Blob: - allOf: - - $ref: '#/definitions/DataElement' - - properties: - value: - type: string - format: byte - 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]))*\"))*$" - required: - - contentType - Capability: - $ref: '#/definitions/SubmodelElement' - ConceptDescription: - allOf: - - $ref: '#/definitions/Identifiable' - - $ref: '#/definitions/HasDataSpecification' - - properties: - isCaseOf: - type: array - items: - $ref: '#/definitions/Reference' - minItems: 1 - DataElement: - $ref: '#/definitions/SubmodelElement' - DataSpecificationContent: - type: object - properties: - modelType: - $ref: '#/definitions/ModelType' - required: - - modelType - DataSpecificationIEC61360: - allOf: - - $ref: '#/definitions/DataSpecificationContent' - - properties: - preferredName: - type: array - items: - $ref: '#/definitions/LangString' - minItems: 1 - shortName: - type: array - items: - $ref: '#/definitions/LangString' - minItems: 1 - unit: - type: string - minLength: 1 - unitId: - $ref: '#/definitions/Reference' - sourceOfDefinition: - type: string - minLength: 1 - symbol: - type: string - minLength: 1 - dataType: - $ref: '#/definitions/DataTypeIEC61360' - definition: - type: array - items: - $ref: '#/definitions/LangString' - minItems: 1 - valueFormat: - type: string - minLength: 1 - valueList: - $ref: '#/definitions/ValueList' - value: - type: string - 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 - required: - - unitName - - unitSymbol - - definition - DataTypeDefXsd: - type: string - enum: - - xs:NonNegativeInteger - - xs:anyURI - - xs:base64Binary - - xs:boolean - - xs:byte - - xs:date - - xs:dateTime - - xs:dateTimeStamp - - xs:dayTimeDuration - - xs:decimal - - xs:double - - xs:duration - - xs:float - - xs:gDay - - xs:gMonth - - xs:gMonthDay - - xs:gYear - - xs:gYearMonth - - xs:hexBinary - - xs:int - - xs:integer - - xs:long - - xs:negativeInteger - - xs:nonPositiveInteger - - xs:positiveInteger - - xs:short - - xs:string - - xs:time - - xs:unsignedByte - - xs:unsignedInt - - xs:unsignedLong - - xs:unsignedShort - - xs:yearMonthDuration - DataTypeIEC61360: - type: string - enum: - - BLOB - - BOOLEAN - - DATE - - FILE - - HTML - - INTEGER_COUNT - - INTEGER_CURRENCY - - INTEGER_MEASURE - - IRDI - - IRI - - RATIONAL - - RATIONAL_MEASURE - - REAL_COUNT - - REAL_CURRENCY - - REAL_MEASURE - - STRING - - STRING_TRANSLATABLE - - TIME - - TIMESTAMP - Direction: - type: string - enum: - - INPUT - - OUTPUT - EmbeddedDataSpecification: - type: object - properties: - dataSpecification: - $ref: '#/definitions/Reference' - dataSpecificationContent: - $ref: '#/definitions/DataSpecificationContent' - required: - - dataSpecification - - dataSpecificationContent - Entity: - allOf: - - $ref: '#/definitions/SubmodelElement' - - properties: - statements: - type: array - items: - $ref: '#/definitions/SubmodelElement' - minItems: 1 - entityType: - $ref: '#/definitions/EntityType' - globalAssetId: - $ref: '#/definitions/Reference' - specificAssetId: - $ref: '#/definitions/SpecificAssetId' - required: - - entityType - EntityType: - type: string - enum: - - CoManagedEntity - - SelfManagedEntity - Environment: - type: object - properties: - assetAdministrationShells: - type: array - items: - $ref: '#/definitions/AssetAdministrationShell' - minItems: 1 - submodels: - type: array - items: - $ref: '#/definitions/Submodel' - minItems: 1 - conceptDescriptions: - type: array - items: - $ref: '#/definitions/ConceptDescription' - minItems: 1 - EventElement: - $ref: '#/definitions/SubmodelElement' - EventPayload: - type: object - properties: - source: - $ref: '#/definitions/Reference' - sourceSemanticId: - $ref: '#/definitions/Reference' - observableReference: - $ref: '#/definitions/Reference' - observableSemanticId: - $ref: '#/definitions/Reference' - topic: - type: string - minLength: 1 - 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$ - payload: - type: string - minLength: 1 - required: - - source - - observableReference - - timeStamp - Extension: - allOf: - - $ref: '#/definitions/HasSemantics' - - properties: - name: - type: string - minLength: 1 - valueType: - $ref: '#/definitions/DataTypeDefXsd' - value: - type: string - refersTo: - $ref: '#/definitions/Reference' - required: - - name - File: - allOf: - - $ref: '#/definitions/DataElement' - - 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]|[!$&'()*+,;=]|[:@]))*)*)?)$ - 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]))*\"))*$" - required: - - contentType - HasDataSpecification: - type: object - properties: - embeddedDataSpecifications: - type: array - items: - $ref: '#/definitions/EmbeddedDataSpecification' - minItems: 1 - HasExtensions: - type: object - properties: - extensions: - type: array - items: - $ref: '#/definitions/Extension' - minItems: 1 - HasKind: - type: object - properties: - kind: - $ref: '#/definitions/ModelingKind' - HasSemantics: - type: object - properties: - semanticId: - $ref: '#/definitions/Reference' - supplementalSemanticIds: - type: array - items: - $ref: '#/definitions/Reference' - minItems: 1 - Identifiable: - allOf: - - $ref: '#/definitions/Referable' - - properties: - administration: - $ref: '#/definitions/AdministrativeInformation' - id: - type: string - minLength: 1 - required: - - id - Key: - type: object - properties: - type: - $ref: '#/definitions/KeyTypes' - value: - type: string - minLength: 1 - required: - - type - - value - KeyTypes: - type: string - enum: - - AnnotatedRelationshipElement - - AssetAdministrationShell - - BasicEventElement - - Blob - - Capability - - ConceptDescription - - DataElement - - Entity - - EventElement - - File - - FragmentReference - - GlobalReference - - Identifiable - - MultiLanguageProperty - - Operation - - Property - - Range - - Referable - - ReferenceElement - - RelationshipElement - - Submodel - - SubmodelElement - - SubmodelElementCollection - - SubmodelElementList - LangString: - 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 - required: - - language - - text - LevelType: - type: string - enum: - - Max - - Min - - Nom - - Typ - ModelType: - type: string - enum: - - AnnotatedRelationshipElement - - AssetAdministrationShell - - BasicEventElement - - Blob - - Capability - - ConceptDescription - - DataSpecificationIEC61360 - - DataSpecificationPhysicalUnit - - Entity - - File - - MultiLanguageProperty - - Operation - - Property - - Range - - ReferenceElement - - RelationshipElement - - Submodel - - SubmodelElementCollection - - SubmodelElementList - ModelingKind: - type: string - enum: - - Instance - - Template - MultiLanguageProperty: - allOf: - - $ref: '#/definitions/DataElement' - - properties: - value: - type: array - items: - $ref: '#/definitions/LangString' - minItems: 1 - valueId: - $ref: '#/definitions/Reference' - Operation: - allOf: - - $ref: '#/definitions/SubmodelElement' - - properties: - inputVariables: - type: array - items: - $ref: '#/definitions/OperationVariable' - minItems: 1 - outputVariables: - type: array - items: - $ref: '#/definitions/OperationVariable' - minItems: 1 - inoutputVariables: - type: array - items: - $ref: '#/definitions/OperationVariable' - minItems: 1 - OperationVariable: - type: object - properties: - value: - $ref: '#/definitions/SubmodelElement' - required: - - value - Property: - allOf: - - $ref: '#/definitions/DataElement' - - properties: - valueType: - $ref: '#/definitions/DataTypeDefXsd' - value: - type: string - valueId: - $ref: '#/definitions/Reference' - required: - - valueType - Qualifiable: - type: object - properties: - qualifiers: - type: array - items: - $ref: '#/definitions/Qualifier' - minItems: 1 - modelType: - $ref: '#/definitions/ModelType' - required: - - modelType - Qualifier: - allOf: - - $ref: '#/definitions/HasSemantics' - - properties: - kind: - $ref: '#/definitions/QualifierKind' - type: - type: string - minLength: 1 - valueType: - $ref: '#/definitions/DataTypeDefXsd' - value: - type: string - valueId: - $ref: '#/definitions/Reference' - required: - - type - - valueType - QualifierKind: - type: string - enum: - - ConceptQualifier - - TemplateQualifier - - ValueQualifier - Range: - allOf: - - $ref: '#/definitions/DataElement' - - properties: - valueType: - $ref: '#/definitions/DataTypeDefXsd' - min: - type: string - max: - type: string - required: - - valueType - Referable: - allOf: - - $ref: '#/definitions/HasExtensions' - - properties: - category: - type: string - minLength: 1 - idShort: - type: string - maxLength: 128 - pattern: ^[a-zA-Z][a-zA-Z0-9_]+$ - displayName: - type: array - items: - $ref: '#/definitions/LangString' - minItems: 1 - description: - type: array - items: - $ref: '#/definitions/LangString' - minItems: 1 - checksum: - type: string - minLength: 1 - modelType: - $ref: '#/definitions/ModelType' - required: - - modelType - ReferenceParent: - # This class is introduced because of the recursion issue of SwaggerUi (see https://github.com/swagger-api/swagger-ui/issues/3325) - properties: - type: - "$ref": "#/definitions/ReferenceTypes" - keys: - type: array - items: - "$ref": "#/definitions/Key" - minItems: 1 - required: - - type - - keys - Reference: - allOf: - - "$ref": "#/definitions/ReferenceParent" - - properties: - referredSemanticId: - "$ref": "#/definitions/ReferenceParent" - ReferenceElement: - allOf: - - $ref: '#/definitions/DataElement' - - properties: - value: - $ref: '#/definitions/Reference' - ReferenceTypes: - type: string - enum: - - GlobalReference - - ModelReference - RelationshipElement: - allOf: - - $ref: '#/definitions/SubmodelElement' - - properties: - first: - $ref: '#/definitions/Reference' - second: - $ref: '#/definitions/Reference' - required: - - first - - second - 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]|[!$&'()*+,;=]|[:@]))*)*)?)$ - 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]))*\"))*$" - required: - - path - SpecificAssetId: - allOf: - - $ref: '#/definitions/HasSemantics' - - properties: - name: - type: string - minLength: 1 - value: - type: string - minLength: 1 - externalSubjectId: - $ref: '#/definitions/Reference' - required: - - name - - value - - externalSubjectId - StateOfEvent: - type: string - enum: - - 'OFF' - - 'ON' - Submodel: - allOf: - - $ref: '#/definitions/Identifiable' - - $ref: '#/definitions/HasKind' - - $ref: '#/definitions/HasSemantics' - - $ref: '#/definitions/Qualifiable' - - $ref: '#/definitions/HasDataSpecification' - - properties: - submodelElements: - type: array - items: - $ref: '#/definitions/SubmodelElement' - minItems: 1 - SubmodelElement: - allOf: - - $ref: '#/definitions/Referable' - - $ref: '#/definitions/HasKind' - - $ref: '#/definitions/HasSemantics' - - $ref: '#/definitions/Qualifiable' - - $ref: '#/definitions/HasDataSpecification' - SubmodelElementCollection: - allOf: - - $ref: '#/definitions/SubmodelElement' - - properties: - value: - type: array - items: - $ref: '#/definitions/SubmodelElement' - minItems: 1 - SubmodelElementList: - allOf: - - $ref: '#/definitions/SubmodelElement' - - properties: - orderRelevant: - type: boolean - value: - type: array - items: - $ref: '#/definitions/SubmodelElement' - minItems: 1 - semanticIdListElement: - $ref: '#/definitions/Reference' - typeValueListElement: - $ref: '#/definitions/AasSubmodelElements' - valueTypeListElement: - $ref: '#/definitions/DataTypeDefXsd' - required: - - typeValueListElement - ValueList: - type: object - properties: - valueReferencePairs: - type: array - items: - $ref: '#/definitions/ValueReferencePair' - minItems: 1 - required: - - valueReferencePairs - ValueReferencePair: - type: object - properties: - value: - type: string - valueId: - $ref: '#/definitions/Reference' - required: - - value - - valueId \ No newline at end of file