Lehrstuhl für Informations- und Automatisierungssysteme issueshttps://git.rwth-aachen.de/groups/acplt/-/issues2020-07-22T19:42:04+02:00https://git.rwth-aachen.de/acplt/basys4.2/ccProfilesUA/-/issues/3Instanciate examples based on the full feature profile2020-07-22T19:42:04+02:00Julian Grothoffj.grothoff@plt.rwth-aachen.deInstanciate examples based on the full feature profile* [x] Use UA modelling rules to annotate CCInterfaceTypes in OPC UA with SI facet CMD and OPERATIONS interface specifications.
* [x] Set PROFILE variable based on profile parameter
* [x] Use CreateOptionalChildCallback to instanciate ...* [x] Use UA modelling rules to annotate CCInterfaceTypes in OPC UA with SI facet CMD and OPERATIONS interface specifications.
* [x] Set PROFILE variable based on profile parameter
* [x] Use CreateOptionalChildCallback to instanciate based on modelling rules
* [x] Set profile parameter via comand lineBASYS Profilehttps://git.rwth-aachen.de/acplt/basys4.2/ccProfilesUA/-/issues/2Adapt to new ControlComponentProfile meta model and names2021-02-07T21:19:06+01:00Julian Grothoffj.grothoff@plt.rwth-aachen.deAdapt to new ControlComponentProfile meta model and namesAdapt names to https://wiki.eclipse.org/BaSyx_/_Documentation_/_API_/_ControlComponentProfiles:
* [x] Rename Profiles to FacetsAdapt names to https://wiki.eclipse.org/BaSyx_/_Documentation_/_API_/_ControlComponentProfiles:
* [x] Rename Profiles to FacetsBASYS Profilehttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/71compliance-tool: Remove hard-coded path of XML and JSON schema2020-04-30T11:03:33+02:00Michael Thiescompliance-tool: Remove hard-coded path of XML and JSON schemaSince the tests are not installed in a deployment environment, the hard-coded path in the compliance tool of the XML and JSON Schema in the `test` directory will not be valid.
Instead, we should allow users to download the Schema files ...Since the tests are not installed in a deployment environment, the hard-coded path in the compliance tool of the XML and JSON Schema in the `test` directory will not be valid.
Instead, we should allow users to download the Schema files themselves (from wherever) and tell the tool about their location, e.g. as an additional cli option.Alpha Release 0.1.0https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/70readme: Explain how to use compliance tool2020-05-19T12:33:45+02:00Michael Thiesreadme: Explain how to use compliance tool* We could just refer to the `--help` command
* If there's more to explain, we should probably create a new `README.md` file in `aas/compliance_tool/` and link to it* We could just refer to the `--help` command
* If there's more to explain, we should probably create a new `README.md` file in `aas/compliance_tool/` and link to itAlpha Release 0.1.0https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/67Add XML checks for compliance tool including tests2020-04-30T11:03:33+02:00Torben MinyAdd XML checks for compliance tool including testsAlpha Release 0.1.0Torben MinyTorben Minyhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/97model: Remove `_`-suffix from parameters of `__init__` functions2020-11-25T10:42:57+01:00Leon Mauritz Möllermodel: Remove `_`-suffix from parameters of `__init__` functionsRemove `_`-suffix from parameters like `submodel_` and `security_` in the `__init__` function of all classes of the `model`, as Igor suggested on Zulip.Remove `_`-suffix from parameters like `submodel_` and `security_` in the `__init__` function of all classes of the `model`, as Igor suggested on Zulip.Stable library APIhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/85Improved update()/commit() functionality2020-11-02T09:16:47+01:00Michael ThiesImproved update()/commit() functionalityWe plan a full redesign of the `update()`/`commit()` functionality of AAS objects for synchronization with an external data source.
* Instead of overriding these functions for different data sources, all `Referable` objects will include...We plan a full redesign of the `update()`/`commit()` functionality of AAS objects for synchronization with an external data source.
* Instead of overriding these functions for different data sources, all `Referable` objects will include a `source` attribute with an URI representation of their data source. The URI's schema is used to determine the correct backend/client.
* `update()` and `commit()` should always effect the object itself and all (recursively) included objects
* If the object itself has no data source/backend itself, the next higher object with a data source is used to update the object's data.
* After the update, all included objects that are linked with an own data source are updated recursively in a top-down manner.
* An object is always committed to its own data source and the data sources of all its ancestors in the object hierarchy.
* The included objects are committed recursively. (TODO: Define order of committing.)Stable library APISebastian Heppners.heppner@iat.rwth-aachen.deSebastian Heppners.heppner@iat.rwth-aachen.dehttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/75Change name of `timeout` parameter of update method2020-10-28T17:08:34+01:00Michael ThiesChange name of `timeout` parameter of update methodThe `timeout` is more like a "caching expiration timeout" of the object, not a timeout for the actual update.
Thus, we should rename it to avoid confusion.
Maybe we can introduce an additional (optional) timout parameter for the actual...The `timeout` is more like a "caching expiration timeout" of the object, not a timeout for the actual update.
Thus, we should rename it to avoid confusion.
Maybe we can introduce an additional (optional) timout parameter for the actual update (e.g. the HTTP timeout for the HTTP client and CouchDB client).Stable library APIhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/63adapter: Change JSON and XML parser interface to add objects directly into a ...2020-11-02T16:31:24+01:00Michael Thiesadapter: Change JSON and XML parser interface to add objects directly into a given AbstractObjectStoreThis allows to use a CouchDBObjectStore or other database-backed ObjectStores without collecting the objects in memory first.
The parser functions should return a set of Identifiers of the parsed objects instead.
See `aas.adapter.aasx....This allows to use a CouchDBObjectStore or other database-backed ObjectStores without collecting the objects in memory first.
The parser functions should return a set of Identifiers of the parsed objects instead.
See `aas.adapter.aasx.AASXReader.read_into()` [LINK](https://git.rwth-aachen.de/acplt/pyi40aas/-/blob/6278d03f6bbb5b22e707dc054382844f05794a3e/aas/adapter/aasx.py#L107), which already has a similar interface.
Progress:
- [x] JSON Deserialization
- [x] XML DeserializationStable library APIhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/149ConceptDescription will not be saved2022-01-10T14:58:04+01:00Igor GarmaevConceptDescription will not be savedConceptDescription will not be saved
Steps to reproduce the bug:
- Create Asset
- Create ConceptDescription
- Create Submodel with semantic_id Ref to ConceptDescription
- Create Shell with Ref to Asset and Ref to Submodel
- Save Shell i...ConceptDescription will not be saved
Steps to reproduce the bug:
- Create Asset
- Create ConceptDescription
- Create Submodel with semantic_id Ref to ConceptDescription
- Create Shell with Ref to Asset and Ref to Submodel
- Save Shell in .aasx in xml (AASXWriter.write_aas)
- Open Shell: ConceptDescription does not existhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/144AASX package explorer could not find submodels in example generated by test/a...2021-10-29T17:31:38+02:00Igor GarmaevAASX package explorer could not find submodels in example generated by test/adapter/aasx/test_aasx.pyI've generated an AASX-file with test/adapter/aasx/test_aasx.py und tried to load it to AASX package explorer. AASX package explorer opened the file, but it could not find submodels. [test.aasx](/uploads/927fcd07feb259bb9c6087f68e233162/...I've generated an AASX-file with test/adapter/aasx/test_aasx.py und tried to load it to AASX package explorer. AASX package explorer opened the file, but it could not find submodels. [test.aasx](/uploads/927fcd07feb259bb9c6087f68e233162/test.aasx)Leon Mauritz MöllerTorben MinyIgor GarmaevLeon Mauritz Möller2021-11-03https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/142model.aas: Initializing an AssetAdministrationShell does not add the submodel...2021-10-06T09:47:01+02:00Sebastian Heppners.heppner@iat.rwth-aachen.demodel.aas: Initializing an AssetAdministrationShell does not add the submodel to the proper NamespaceWhen initializing an AssetAdministrationShell (like in the examples):
```
submodel = model.Submodel(
identification=model.Identifier(
id_="https://example.com/resources/sm/testSubmodel",
id_type=model.Identif...When initializing an AssetAdministrationShell (like in the examples):
```
submodel = model.Submodel(
identification=model.Identifier(
id_="https://example.com/resources/sm/testSubmodel",
id_type=model.IdentifierType.IRI
),
id_short="SimulationModels"
)
aas = model.AssetAdministrationShell(
asset=model.AASReference.from_referable(model.Asset(
kind=model.AssetKind.INSTANCE,
identification=model.Identifier(
id_="https://example.com/resources/asset/{}".format(id_short),
id_type=model.IdentifierType.IRI
)
)),
identification=model.Identifier(
id_="https://example.com/resources/aas/{}".format(id_short),
id_type=model.IdentifierType.IRI
),
submodel={model.AASReference.from_referable(submodel)}
)
```
the submodel is not added to the AAS namespace:
```
s = aas.get_referable(id_short="SimulationModels")
>> KeyError: 'Referable with id_short SimulationModels not found in this namespace'
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/140submodels should be local in "create_example_asset_administration_shell'2021-06-21T11:40:52+02:00Ghost Usersubmodels should be local in "create_example_asset_administration_shell'When opening example_aas.create_full_example() output with AASX package explore, the submodels do not appare.
It seems the the submodels should be local(local=True) in create_example_asset_administration_shell
By manually changing it t...When opening example_aas.create_full_example() output with AASX package explore, the submodels do not appare.
It seems the the submodels should be local(local=True) in create_example_asset_administration_shell
By manually changing it to local, the AASX package explore can read the all the trees.
**The original create_full_example output:**
![full_example_original](/uploads/3977a971cbfaf8ee48624923f887dd90/full_example_original.png)
**After making submodels local:**
![full_example_edited](/uploads/6e3b98a3220bc8ae719e62f91438cce5/full_example_edited.png)
```
submodel={model.AASReference((model.Key(type_=model.KeyElements.SUBMODEL,
local=True,
value='http://acplt.org/Submodels/Assets/TestAsset/Identification',
id_type=model.KeyType.IRI),),
model.Submodel),
model.AASReference((model.Key(type_=model.KeyElements.SUBMODEL,
local=True,
value='http://acplt.org/Submodels/Assets/TestAsset/OperationalData',
id_type=model.KeyType.IRI),),
model.Submodel)
},
```https://git.rwth-aachen.de/acplt/rte-tools/rte/-/issues/3Document building with MSVC2021-05-21T10:56:53+02:00Michael ThiesDocument building with MSVChttps://git.rwth-aachen.de/acplt/rte-tools/rte/-/issues/2Document building and debugging with valgrind2021-05-19T08:51:43+02:00Michael ThiesDocument building and debugging with valgrindLars NothdurftLars Nothdurfthttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/138Missing <?xml Tag in docProps/core.xml in an AASX-Package2021-08-13T13:16:50+02:00Ghost UserMissing <?xml Tag in docProps/core.xml in an AASX-PackageBecause of missing XML tag <?xml version='1.0' encoding='UTF-8'?> some libraries (including .NET standard XML serializer) is unable to deserialize the file. Exception: Unknown content type.Because of missing XML tag <?xml version='1.0' encoding='UTF-8'?> some libraries (including .NET standard XML serializer) is unable to deserialize the file. Exception: Unknown content type.https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/137json adapter: Qualifiable in aasJSONSchema.json seems wrong2021-04-13T02:23:59+02:00Ghost Userjson adapter: Qualifiable in aasJSONSchema.json seems wrongIt seems "items" in Qualifialbe/qualifiers should be #/definitions/Qualifier" instead of 'Constraint'
Reason: some example json serialization is not consistent with the json-scheme
```
"submodelElements": [{"idShort": "E...It seems "items" in Qualifialbe/qualifiers should be #/definitions/Qualifier" instead of 'Constraint'
Reason: some example json serialization is not consistent with the json-scheme
```
"submodelElements": [{"idShort": "ExampleProperty",
"modelType": {"name": "Property"},
"semanticId": {"keys": [{"type": "GlobalReference", "idType": "IRI", "value": "http://acplt.org/Properties/SimpleProperty", "local": false}]},
"value": "exampleValue",
"valueType": "string"}]}],
```
```json
"Qualifiable": {
"type": "object",
"properties": {
"qualifiers": {
"type": "array",
"items": {
"$ref": "#/definitions/Constraint"
}
}
}
},
```https://git.rwth-aachen.de/acplt/pyi40aas/-/issues/136Update project structure in README.md2021-04-12T11:47:43+02:00Igor GarmaevUpdate project structure in README.mdAdd submodul `aas.backends` and his description to `Project Structure` part in README.MDAdd submodul `aas.backends` and his description to `Project Structure` part in README.MDhttps://git.rwth-aachen.de/acplt/pyi40aas/-/issues/135Get back Namespace base class in V30RC012021-04-09T17:13:29+02:00Igor GarmaevGet back Namespace base class in V30RC01The `get_referable`/`get_object_by_semantic_id` and `remove_referable`/`remove_object_by_semantic_id` functions are almost the same in classes `UniqueIdShortNamespace` and `UniqueSemanticIdNamespace`. It would be reasonable to add `Name...The `get_referable`/`get_object_by_semantic_id` and `remove_referable`/`remove_object_by_semantic_id` functions are almost the same in classes `UniqueIdShortNamespace` and `UniqueSemanticIdNamespace`. It would be reasonable to add `Namespace` base class with private methods that would generalize the get/remove funcs. These would then be reused in subclasses `UniqueIdShortNamespace` and `UniqueSemanticIdNamespace`Torben MinyTorben Minyhttps://git.rwth-aachen.de/acplt/rte-tools/rte/-/issues/1Build with OV_VALGRIND fails2021-03-18T23:01:03+01:00Michael ThiesBuild with OV_VALGRIND failsWhen enabling OV_VALGRIND, the OV build fails with the following error.
Compiler: gcc (Debian 8.3.0-6) 8.3.0
```txt
rte/core/ov/source/ov_vendortree.c:113:28: error: ‘ov_vendortree_getUseMalloc’ undeclared here (not in a function); did...When enabling OV_VALGRIND, the OV build fails with the following error.
Compiler: gcc (Debian 8.3.0-6) 8.3.0
```txt
rte/core/ov/source/ov_vendortree.c:113:28: error: ‘ov_vendortree_getUseMalloc’ undeclared here (not in a function); did you mean ‘ov_vendortree_getRTAlloc’?
{ "use_malloc", NULL, ov_vendortree_getUseMalloc, ov_vendortree_setUseMalloc },
^~~~~~~~~~~~~~~~~~~~~~~~~~
ov_vendortree_getRTAlloc
rte/core/ov/source/ov_vendortree.c:113:56: error: ‘ov_vendortree_setUseMalloc’ undeclared here (not in a function); did you mean ‘ov_vendortree_getRTAlloc’?
{ "use_malloc", NULL, ov_vendortree_getUseMalloc, ov_vendortree_setUseMalloc },
^~~~~~~~~~~~~~~~~~~~~~~~~~
ov_vendortree_getRTAlloc
```