Lehrstuhl für Informations- und Automatisierungssysteme issueshttps://git.rwth-aachen.de/groups/acplt/-/issues2020-05-18T14:30:32+02:00https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/55examples: Create example explaining how to subclass AAS model classes (esp. P...2020-05-18T14:30:32+02:00Michael Thiesexamples: Create example explaining how to subclass AAS model classes (esp. Property) for dynamic data/custom backendshttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/54XSD-Schema: Missing "minOccurs="0"" of element `<assetRef>` in `<entity_t>`2020-05-28T12:00:23+02:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: Missing "minOccurs="0"" of element `<assetRef>` in `<entity_t>`The `asset` attribute of class `Entity` is optional:
![Entity](/uploads/da9b38386dd04765625949898bf88942/Entity.png)
Therefore, the element `<assetRef>` in `<entity_t>` misses a "minOccurs" set.
Current schema:
```
<complexType name="e...The `asset` attribute of class `Entity` is optional:
![Entity](/uploads/da9b38386dd04765625949898bf88942/Entity.png)
Therefore, the element `<assetRef>` in `<entity_t>` misses a "minOccurs" set.
Current schema:
```
<complexType name="entity_t">
<complexContent>
<extension base="aas:submodelElementAbstract_t">
<sequence>
<element name="assetRef" type="aas:reference_t"/>
<element name="entityType">
<simpleType>
<restriction base="aas:entityType_t">
<enumeration value="CoManagedEntity"/>
<enumeration value="SelfManagedEntity"/>
</restriction>
</simpleType>
</element>
<element name="statements" type="aas:submodelElement_t"/>
</sequence>
</extension>
</complexContent>
</complexType>
```
Proposed Fix:
```
<complexType name="entity_t">
<complexContent>
<extension base="aas:submodelElementAbstract_t">
<sequence>
<element minOccurs="0" name="assetRef" type="aas:reference_t"/>
<element name="entityType">
<simpleType>
<restriction base="aas:entityType_t">
<enumeration value="CoManagedEntity"/>
<enumeration value="SelfManagedEntity"/>
</restriction>
</simpleType>
</element>
<element name="statements" type="aas:submodelElement_t"/>
</sequence>
</extension>
</complexContent>
</complexType>
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/53XSD-Schema: Missing minOccurs="0" of element `<value>` in `<referenceElement_t>`2020-05-28T12:01:09+02:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: Missing minOccurs="0" of element `<value>` in `<referenceElement_t>`The attribute `value` of class `referenceElement` is optional:
![ReferenceElement](/uploads/04e7c477b61aa6ae098330a878f4dc0c/ReferenceElement.png)
Therefore, the xsd-schema needs a `minOccurs="0"` there.
Current version:
```
<complexTy...The attribute `value` of class `referenceElement` is optional:
![ReferenceElement](/uploads/04e7c477b61aa6ae098330a878f4dc0c/ReferenceElement.png)
Therefore, the xsd-schema needs a `minOccurs="0"` there.
Current version:
```
<complexType name="referenceElement_t">
<complexContent>
<extension base="aas:submodelElementAbstract_t">
<sequence>
<element name="value" type="aas:reference_t"/>
</sequence>
</extension>
</complexContent>
</complexType>
```
Suggested fix:
```
<complexType name="referenceElement_t">
<complexContent>
<extension base="aas:submodelElementAbstract_t">
<sequence>
<element minOccurs="0" name="value" type="aas:reference_t"/>
</sequence>
</extension>
</complexContent>
</complexType>
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/52XSD-Schema: missing minOccurs="0" of element `containedElements` in type `vie...2020-02-25T08:06:23+01:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: missing minOccurs="0" of element `containedElements` in type `view_t`Class `view` has parameter `containedElements`:
![View](/uploads/0514057d047dd557cbf2dbceb92b0fec/View.png)
of cardinality 0..*
The XSD-Schema therefore needs a `minOccurs="0"`in element `<containedElements>`.
Current version:
```
<c...Class `view` has parameter `containedElements`:
![View](/uploads/0514057d047dd557cbf2dbceb92b0fec/View.png)
of cardinality 0..*
The XSD-Schema therefore needs a `minOccurs="0"`in element `<containedElements>`.
Current version:
```
<complexType name="view_t">
<sequence>
<group ref="aas:referable"/>
<group ref="aas:hasSemantics"/>
<group ref="aas:hasDataSpecification"/>
<element name="containedElements" type="aas:containedElements_t" ></element>
</sequence>
</complexType>
```
Proposed Fix:
```
<complexType name="view_t">
<sequence>
<group ref="aas:referable"/>
<group ref="aas:hasSemantics"/>
<group ref="aas:hasDataSpecification"/>
<element maxOccurs="unbounded" minOccurs="0" name="containedElements" type="aas:containedElements_t"/>
</sequence>
</complexType>
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/51XSD-Schema: missing minOccurs="0" of element "conceptDescriptionRefs" in type...2020-02-25T14:19:35+01:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: missing minOccurs="0" of element "conceptDescriptionRefs" in type "conceptDictionary_t"Class `ConceptDictionary` has parameter `conceptDescription`: ![conceptDictionary](/uploads/a32d03ee11104052db45680c98650ea4/conceptDictionary.png) of cardinality 0..*.
The XSD-schema therefore needs a `minOccurs="0"`in element `<concep...Class `ConceptDictionary` has parameter `conceptDescription`: ![conceptDictionary](/uploads/a32d03ee11104052db45680c98650ea4/conceptDictionary.png) of cardinality 0..*.
The XSD-schema therefore needs a `minOccurs="0"`in element `<conceptDescriptionRefs>`.
Current Version:
```
<complexType name="conceptDictionary_t">
<sequence>
<group ref="aas:referable" />
<element name="conceptDescriptionRefs" type="aas:conceptDescriptionRefs_t"></element>
</sequence>
</complexType>
```
Suggested Fix:
```
<complexType name="conceptDictionary_t">
<sequence>
<group ref="aas:referable" />
<element maxOccurs="unbounded" minOccurs="0" name="conceptDescriptionRefs" type="aas:conceptDescriptionRefs_t"/>
</sequence>
</complexType>
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/50XSD-Schema: Wrong type `aas:submodelElement_t` for element `statements` in XS...2020-05-28T12:02:08+02:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: Wrong type `aas:submodelElement_t` for element `statements` in XSD-schema type `entity_t`Class `Entity` has optional parameter `statement` with cardinality `0..*`:
![Entity](/uploads/942403a3603a3d87a7fd63b612c744a3/Entity.png)
The XSD-Schema has an element `statements` of type `aas:submodelElement_t`, whereas, it should ra...Class `Entity` has optional parameter `statement` with cardinality `0..*`:
![Entity](/uploads/942403a3603a3d87a7fd63b612c744a3/Entity.png)
The XSD-Schema has an element `statements` of type `aas:submodelElement_t`, whereas, it should rather be of type `aas:submodelElements_t`, to make it possible to have more than one statement parameter in an entity. Current version:
```
<element name="statements" type="aas:submodelElement_t"/>
```
Proposed Fix:
```
<element name="statements" type="aas:submodelElements_t"/>
```
Since the `aas:submodelElements_t` would be exactly what we want:
```
<complexType name="submodelElements_t">
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="submodelElement" type="aas:submodelElement_t"/>
</sequence>
</complexType>
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/49XSD-Schema: wrong type `string` of element `capability` in `submodelElement_t`2020-05-28T12:02:49+02:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: wrong type `string` of element `capability` in `submodelElement_t`Class `Capability` inherits from `SubmodelElement`:
![capability](/uploads/86eaaff32163ae97648d9084dbb43dd7/capability.png)
Therefore, in the XSD-Schema, it should be of type `aas:submodelElementAbstract_t`, rather than of type `string`...Class `Capability` inherits from `SubmodelElement`:
![capability](/uploads/86eaaff32163ae97648d9084dbb43dd7/capability.png)
Therefore, in the XSD-Schema, it should be of type `aas:submodelElementAbstract_t`, rather than of type `string`.
Current version:
```
<element name="capability" type="string"/>
```
Proposed Fix:
```
<element name="capability" type="aas:submodelElementAbstract_t"/>
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/48XSD-Schema: missing type "annotatedRelationshipElement_t"2020-05-28T12:03:01+02:00Sebastian Heppners.heppner@iat.rwth-aachen.deXSD-Schema: missing type "annotatedRelationshipElement_t"In type `submodelElement_t`, the `annotatedRelationshipElement` is of type `aas:relationshipElement_t`,
```
<element name="annotatedRelationshipElement" type="aas:relationshipElement_t"/>
```
which does not have the capability of stor...In type `submodelElement_t`, the `annotatedRelationshipElement` is of type `aas:relationshipElement_t`,
```
<element name="annotatedRelationshipElement" type="aas:relationshipElement_t"/>
```
which does not have the capability of storing the information of the parameter:
```
submodel.AnnotatedRelationshipElement.annotation: Optional[Set[base.AASReference[DataElement]]]
```
The type `aas:annotatedRelationshipElement_t` does not exist in the XSD-schema, so it is not just missing in `submodelElement_t`, but in general.https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/47DotAAS: Qualifiable naming unclear/unintuitive2020-05-28T12:03:56+02:00Sebastian Heppners.heppner@iat.rwth-aachen.deDotAAS: Qualifiable naming unclear/unintuitiveAn object that is instance of class Qualifiable has a rather weird naming convention, at least to me.
`Qualifiable.qualifier` is of type `Set[constraints]`, which in term constraints are either `base.Formula` or `base.Qualifier`.
In t...An object that is instance of class Qualifiable has a rather weird naming convention, at least to me.
`Qualifiable.qualifier` is of type `Set[constraints]`, which in term constraints are either `base.Formula` or `base.Qualifier`.
In the XSD-schema, a `qualifiable` therefore has the subelement 'qualifier', which makes sense, but as a logical consequence, this
```
<element maxOccurs="1" minOccurs="0" name="qualifier" type="aas:constraints_t"/>
```
now has children with name "qualifiers"
```
<element maxOccurs="unbounded" minOccurs="0" name="qualifiers" type="aas:constraint_t"/>
```
which in turn now can either have children as "formula" or "qualifier".
```
<element maxOccurs="1" minOccurs="0" name="formula" type="aas:formula_t"/>
<element maxOccurs="1" minOccurs="0" name="qualifier" type="aas:qualifier_t"/>
```
Am I wrong to find this rather messy and unintuitive?
I would suggest to change the name of `base.Qualifiable` and its parameter `Qualifiable.qualifier` to something that isn't so easily confused with `base.Qualifier`, since they're obviously two very different things.https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/46Test: assertRaises should not only check ErrorType but also the message to be...2020-02-03T15:56:23+01:00Torben MinyTest: assertRaises should not only check ErrorType but also the message to be sure the right exepction is raisedhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/45NamespaceSet: It should be allowed to insert an Referable with the same id_sh...2020-02-03T15:15:11+01:00Torben MinyNamespaceSet: It should be allowed to insert an Referable with the same id_short in another NamespaceSet of the same objectAt the moment it is not possible to add a concept dictionary and a view with the same id_short to the asset administration shellAt the moment it is not possible to add a concept dictionary and a view with the same id_short to the asset administration shellhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/44README: Add sections about features/project structure, getting started, and d...2020-03-25T15:27:12+01:00Michael ThiesREADME: Add sections about features/project structure, getting started, and development/contributing* [ ] Section "Features" or "Project Structure", explaining what functionality is implemented and in which Python package it lives
* [ ] Section "Getting started", giving a short introduction on how to install PyI40AAS (from Git or PyPI)...* [ ] Section "Features" or "Project Structure", explaining what functionality is implemented and in which Python package it lives
* [ ] Section "Getting started", giving a short introduction on how to install PyI40AAS (from Git or PyPI) and pointing to the tutorials and examples
* [ ] Section "Development", explaining how to set up a development environment and running tests (incl. )
* [ ] Section "Contributing", explaining our coding guidelines (how to run mypy and pycodestyle), workflows (GitLab PRs) and pointing to issueshttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/43json package docstring: missing description of deserialization.py2020-02-28T15:06:05+01:00Torben Minyjson package docstring: missing description of deserialization.pyhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/42Tests: Add tests for data.examples2020-01-30T09:56:53+01:00Torben MinyTests: Add tests for data.exampleshttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/41Make imports relative if possible2020-01-30T13:46:51+01:00Torben MinyMake imports relative if possiblehttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/40DataChecker: Add Test for correct storing of the `expecation`message and the ...2020-02-03T15:56:23+01:00Torben MinyDataChecker: Add Test for correct storing of the `expecation`message and the additional `kwargs` parameters.Torben MinyTorben Minyhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/39base.Referable.parent is of type: Optional[Namespace]. XSD-schema expects par...2020-01-16T16:45:48+01:00Sebastian Heppners.heppner@iat.rwth-aachen.debase.Referable.parent is of type: Optional[Namespace]. XSD-schema expects parent to be of type="aas:reference_t"How to serialize this parameter in compliance with the schema?How to serialize this parameter in compliance with the schema?https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/38adapter: Create AASX file read- and write functionality2020-03-25T13:09:34+01:00Michael Thiesadapter: Create AASX file read- and write functionalityhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/37model.base.HasDataSpecification has parameter data_specification of type Set[...2020-01-07T13:27:10+01:00Sebastian Heppners.heppner@iat.rwth-aachen.demodel.base.HasDataSpecification has parameter data_specification of type Set[Reference]. XML-Serialization expects this to be just a Reference.https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/36model.submodel.SubmodelElementCollection: class seems to miss parameters "all...2019-12-28T17:13:21+01:00Sebastian Heppners.heppner@iat.rwth-aachen.demodel.submodel.SubmodelElementCollection: class seems to miss parameters "allow_duplicate"Or is this something the serialization should be able to read from the specific object instance?Or is this something the serialization should be able to read from the specific object instance?