Code Monkey home page Code Monkey logo

aasx-package-explorer's Introduction

Licenses

Please see LICENSE.txt in the individual projects for project-specific licenses.

The admin-shell-io logo image is taken from www.plattform-i40.de which is licensed under Creative Commons CC BY-ND 3.0 DE.

aasx-package-explorer's People

Contributors

alexanderwollbrink avatar aorzelskigh avatar atextor avatar barnstee avatar birgitboss avatar bischof-keb avatar br-iosb avatar broessl avatar dependabot[bot] avatar festo-i40 avatar g1zzm0 avatar harishpakala avatar heidese-sick avatar juileetikekar avatar krahlro-sick avatar martafullen avatar mhrimaz avatar michaelhoffmeisterfesto avatar michahofft avatar mmarseu avatar mristin avatar muba00 avatar saidta avatar swagnerse avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aasx-package-explorer's Issues

invalid XML for "qualifier" - probably due to ambiguous naming

I opened a .aasx file containing a SubmodelElementCollection with two qualifiers. Then I exported it as .xml to open it with a XML editor.
The validation failed for mentioned "qualifier"-elements!

<aas:qualifier>
  <aas:qualifier>
    <aas:type>cardinality</aas:type>
    <aas:valueType />
    <aas:value>0..1</aas:value>
  </aas:qualifier>
  <aas:qualifier> **//FAILED HERE!**
    <aas:type>cardinality</aas:type>
    <aas:valueType />
    <aas:value>0..1</aas:value>
  </aas:qualifier>
</aas:qualifier>

After analysing the XSD I think it should look like:

<aas:qualifier>
	<aas:qualifier>
		<aas:type>cardinality</aas:type>
		<aas:valueType/>
		<aas:value>0..1</aas:value>
	</aas:qualifier>
</aas:qualifier>
<aas:qualifier>
	<aas:qualifier>
		<aas:type>cardinality</aas:type>
		<aas:valueType/>
		<aas:value>0..1</aas:value>
	</aas:qualifier>
</aas:qualifier>

This is confusing because of the way the XSD is naming the elements - please note the duplicated "qualifier" naming:

...
<group name="qualifiable">
	<sequence>
		<element maxOccurs="unbounded" minOccurs="0" name="qualifier" type="aas:constraint_t"/>
	</sequence>
</group>
...
<complexType name="constraint_t">
	<choice>
		<element maxOccurs="1" minOccurs="0" name="formula" type="aas:formula_t"/>
		<element maxOccurs="1" minOccurs="0" name="qualifier" type="aas:qualifier_t"/>
	</choice>
</complexType>
...

A clearer solution seems to be:

<group name="qualifiable">
	<sequence>
		<element maxOccurs="unbounded" minOccurs="0" name="constraint" type="aas:constraint_t"/>
	</sequence>
</group>

<complexType name="constraint_t">
	<choice>
		<element maxOccurs="1" minOccurs="0" name="formula" type="aas:formula_t"/>
		<element maxOccurs="1" minOccurs="0" name="qualifier" type="aas:qualifier_t"/>
	</choice>
</complexType>

Then the XML would be:

<aas:constraint>
	<aas:qualifier>
		<aas:type>cardinality</aas:type>
		<aas:valueType/>
		<aas:value>0..1</aas:value>
	</aas:qualifier>
</aas:constraint>
<aas:constraint>
	<aas:qualifier>
		<aas:type>cardinality</aas:type>
		<aas:valueType/>
		<aas:value>0..1</aas:value>
	</aas:qualifier>
</aas:constraint>

Add unit from eCl@ss not possible

Hello,

I'm just doing the first tests with AASX package explorer. I tried to add a unitID from eClass Advanced 11.1. For properties it works fine, but even when I check "units" to be searched, the search will not return an IRDI for the requested unit.

Steps to reproduce:

  1. Add new property
  2. Go to unit section
  3. unitID -> create data element!
  4. Add ECLASS IRDI
  5. Check "Units"
  6. Search for content

No matter what you enter, no units are found. I have added
"eClass11_1_UnitsML_EN_DE.xml" to eclass subdirectory, along with classification dictionaries.

Error: Unhandled exception | SAMM CLI generated AASX of BatteryPass cannot be opened in Package Explorer

Describe the bug
SAMM CLI generated AASX of BatteryPass cannot be opened in Package Explorer

To Reproduce
Steps to reproduce the behavior:

  1. Rename BatteryPass.zip to *.aasx
  2. Install https://github.com/admin-shell-io/aasx-package-explorer/releases/download/v2023-09-12.alpha/aasx-package-explorer.2023-09-12.alpha.zip from https://github.com/admin-shell-io/aasx-package-explorer/releases/tag/v2023-09-12.alpha and open it
  3. File->Open -> Choose BatteryPass.aasx

Expected behavior

Actual behavior

  • "Error: Unhandled exception"
    image
    noteworth that the mentioned version 1.0.0.0 is not the actual version of the software
  • the log content below for diagnosis:
    BatteryPass.aasx_error-log.txt

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context

BatteryPass.aasx was created via SAMM CLI from the BatteryPass aspect model by catena-x using:

Thanks for looking into this issue and feel free to get in touch with your neighbor project from the Eclipse Semantic Modeling Framework if you have points to discuss recarding how this aasx was created or any other topics.

IdShort of ConceptDescription for a SubmodelElementList not accepted

  1. When creating a ConceptDescription for a SubmodelElementList an index for the CD is created and it is not allowed to enter a shortId.
    I would not expect this because the SML itself is not indexed but the elements of the list.

  2. When a generate a CD for the elements of the list there is not index where I would expect it.

ad 1)
image

ad 2)
image

Not possible to create and assign a concept description from eClass

Describe the bug
By create an assign a concept description from eCl@ss for a Property, i first don't get any results and on a second try, the Explorer crashed.

To Reproduce
Steps to reproduce the behavior:

  1. Creating an Asset, an AAS with some submodels and some propertys.
  2. Inserting the corresponding XML-eCl@ss Files into a folder "eclass" on the same level as the .exe File.
  3. Select the property.
  4. Click on "Create and assign from ECLASS" in the component description section.
  5. type in the opend interface "width" to reproduce the screencast solutions.
  6. Press Enter / Start!
  7. nothing happens
  8. Press Enter / Start! again
  9. Package Explorer Crashes

Desktop:

  • OS: Windows
  • PackageExplorer Version: 2021-08-17.alpha

Import AutomationML into AASX - no reaction on UI, no error log

Describe the bug
I try to import an .aml file, but import fails - no reaction on the UI

To Reproduce
I tried various starting points:

  • new, but empty package
  • new, but empty AAS
  • AAS with new submodel ...
    in each case, no reaction.
    Also tried to debug AMLImport.cs, but I can't help myself as I do not know how the expected behaviour should be??

Expected behavior
That's my challenge - I don't know how an imported .aml should materialize in the PackageExplorer??

Big thanks for your help and
kind regards,
Ruediger

AAS JSON export does not comply with Schema v2.0.0 or v2.0.1

Hi, thanks for the work and effort put into this project!!

We tried to export a AAS Submodel to JSON file and found the folowing under semanticId:

"semanticId": {
    "keys": [
      {
        "type": "GlobalReference",
        "local": false,
        "value": "0173-1#01-ADN198#009",
        "index": 0,
        "idType": "IRDI"
      }
    ],
    "First": {
      "type": "GlobalReference",
      "local": false,
      "value": "0173-1#01-ADN198#009",
      "index": 0,
      "idType": "IRDI"
    },
    "Last": {
      "type": "GlobalReference",
      "local": false,
      "value": "0173-1#01-ADN198#009",
      "index": 0,
      "idType": "IRDI"
    }
  },

We'd expect:

"semanticId": {
    "keys": [
      {
        "type": "GlobalReference",
        "local": false,
        "value": "0173-1#01-ADN198#009",
        "idType": "IRDI"
      }
    ]
  },

Based on JSON Schema definition (v2.0.1):

    "Reference": {
      "type": "object",
      "properties": {
        "keys": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Key"
          }
        }
      },
      "required": [
        "keys"
      ]
    },

Issue found using the Explorer (aasx-package-explorer.2020-09-16.alpha) in Windows VM on Mac. Imported Sample AASX, selected submodel, clicked on File > Export > Export Submodel to JSON.

CheckFormat.ps1 and FormatCode.ps1 fail when .NET 6 is installed

Describe the bug
The AASX Package Explorer is using dotnet core 3.1, however unless a global.json config file is present, the dotnet CLI will always run commands using the latest installed version of the SDK. With .NET 6 that becomes a problem, because starting with this version, the CLI bundles a more current version of the dotnet-format tool than is used in this project. The bundled version has changed some options, notable --check is now --verify-no-changes. Crucially, the dotnet 6 CLI prefers the bundled version over the installed tool.

To Reproduce
Steps to reproduce the behavior:

  1. Install .NET 6
  2. Run dotnet format --check. It will fail.

Solution
One possible solution to this problem would be to add a global.json, which would instruct the dotnet CLI to run commands in version 3.1.

Another would be to update the dotnet-format version in src/.config/dotnet-tools.json (and the scripts using this command) to a more current version.

Cannot Find Submodel

Describe the bug
After Creating any arbitrary AAS, after changing the editing mode (in AND out), i recieve the error message: "Cannot find some submodel.

To Reproduce
Steps to reproduce the behavior:
I followed the described Steps in the Screencasts to create a submodel. But at any point of the creation process i recieve the Error Message after swithing into the edit Mode or out of it.
This does not happen, if i change the Edit mode in a demo-version.

Unsupported on VS 2022 community version (also happen in VS 2019 community version)

Describe the bug
when opening the project solution, a dialog popup indicates unsupported.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'aasx_package_explorer\src'
  2. Double click on 'AasxPackageExplorer.sln'
  3. See unsupported information as shown below.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.
2023-10-06 13_31_42-Review Project And Solution Changes

Desktop (please complete the following information):

  • OS: Windows 10 Enterprise
  • IDE: Microsoft Visual Studio Community 2022 (64-bit) - Current
    Version 17.7.4
    Microsoft Visual Studio Community 2022
    Version 17.7.4
    VisualStudio.17.Release/17.7.4+34031.279
    Microsoft .NET Framework
    Version 4.8.04084

Installed Version: Community

Visual C++ 2022 00482-90000-00000-AA541
Microsoft Visual C++ 2022

ASP.NET and Web Tools 17.7.273.65229
ASP.NET and Web Tools

Azure App Service Tools v3.0.0 17.7.273.65229
Azure App Service Tools v3.0.0

C# Tools 4.7.0-3.23416.8+43b0b05cc4f492fd5de00f6f6717409091df8daa
C# components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.

Cookiecutter 17.0.23189.3
Provides tools for finding, instantiating and customizing templates in cookiecutter format.

Extensibility Message Bus 1.4.34 (main@d5ab18b)
Provides common messaging-based MEF services for loosely coupled Visual Studio extension components communication and integration.

Microsoft JVM Debugger 1.0
Provides support for connecting the Visual Studio debugger to JDWP compatible Java Virtual Machines

Mono Debugging for Visual Studio 17.7.27 (547ea6f)
Support for debugging Mono processes with Visual Studio.

NuGet Package Manager 6.7.0
NuGet Package Manager in Visual Studio. For more information about NuGet, visit https://docs.nuget.org/

Python - Profiling support 17.0.23189.3
Profiling support for Python projects.

Python with Pylance 17.0.23189.3
Provides IntelliSense, projects, templates, debugging, interactive windows, and other support for Python developers.

Razor (ASP.NET Core) 17.7.3.2333001+0ab18affdf2a37647768d0e25f5f021bee6257a1
Provides languages services for ASP.NET Core Razor.

Test Adapter for Boost.Test 1.0
Enables Visual Studio's testing tools with unit tests written for Boost.Test. The use terms and Third Party Notices are available in the extension installation directory.

Test Adapter for Google Test 1.0
Enables Visual Studio's testing tools with unit tests written for Google Test. The use terms and Third Party Notices are available in the extension installation directory.

TypeScript Tools 17.0.20829.2001
TypeScript Tools for Microsoft Visual Studio

Visual Basic Tools 4.7.0-3.23416.8+43b0b05cc4f492fd5de00f6f6717409091df8daa
Visual Basic components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.

Visual F# Tools 17.7.0-beta.23314.10+e612cf93b989503c89e3a5830090062b7ab5e143
Microsoft Visual F# Tools

Visual Studio IntelliCode 2.2
AI-assisted development for Visual Studio.

VisualStudio.DeviceLog 1.0
Information about my package

VisualStudio.Mac 1.0
Mac Extension for Visual Studio

VSPackage Extension 1.0
VSPackage Visual Studio Extension Detailed Info

Xamarin 17.7.0.216 (d17-7@133ddef)
Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.

Xamarin Designer 17.7.3.9 (remotes/origin/d17-7@796d191def)
Visual Studio extension to enable Xamarin Designer tools in Visual Studio.

Xamarin.Android SDK 13.2.1.2 (d17-5/a8a26c7)
Xamarin.Android Reference Assemblies and MSBuild support.
Mono: d9a6e87
Java.Interop: xamarin/java.interop@149d70fe
SQLite: xamarin/sqlite@68c69d8
Xamarin.Android Tools: xamarin/xamarin-android-tools@ca1552d

Smartphone (please complete the following information):

  • N/A

Additional context
copied information about unsupported:
Unsupported
This version of Visual Studio is unable to open the following projects. The project types may not be installed or this version of Visual Studio may not support them.
For more information on enabling these project types or otherwise migrating your assets, please see the details in the "Migration Report" displayed after clicking OK.
- AasxPackageExplorerSetup, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AASXPackageExplorerSetup\AasxPackageExplorerSetup.wixproj"

No changes required
These projects can be opened in Visual Studio 2015, Visual Studio 2013, Visual Studio 2012, and Visual Studio 2010 SP1 without changing them.
- AasxPackageExplorer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPackageExplorer\AasxPackageExplorer.csproj"
- AasxToolkit, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxToolkit\AasxToolkit.csproj"
- AasxWpfControlLibrary, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxWpfControlLibrary\AasxWpfControlLibrary.csproj"
- AasxRestServerLibrary, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxRestServerLibrary\AasxRestServerLibrary.csproj"
- AasxRestConsoleServer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxRestConsoleServer\AasxRestConsoleServer.csproj"
- AasxIntegrationBase, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxIntegrationBase\AasxIntegrationBase.csproj"
- AasxIntegrationEmptySample, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxIntegrationEmptySample\AasxIntegrationEmptySample.csproj"
- AasxAmlImExport, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxAmlImExport\AasxAmlImExport.csproj"
- AasxMqtt, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxMqtt\AasxMqtt.csproj"
- AasxMqttClient, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxMqttClient\AasxMqttClient.csproj"
- AasxPluginBomStructure, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginBomStructure\AasxPluginBomStructure.csproj"
- AasxPredefinedConcepts, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPredefinedConcepts\AasxPredefinedConcepts.csproj"
- AasxPluginDocumentShelf, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginDocumentShelf\AasxPluginDocumentShelf.csproj"
- AasxIntegrationBaseWpf, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxIntegrationBaseWpf\AasxIntegrationBaseWpf.csproj"
- AasxPluginGenericForms, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginGenericForms\AasxPluginGenericForms.csproj"
- MsaglWpfControl, "C:\Users\hwb20103\Github\aasx-package-explorer\src\MsaglWpfControl\MsaglWpfControl.csproj"
- AasxPluginExportTable, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginExportTable\AasxPluginExportTable.csproj"
- AasxPluginWebBrowser, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginWebBrowser\AasxPluginWebBrowser.csproj"
- AasxPluginTechnicalData, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginTechnicalData\AasxPluginTechnicalData.csproj"
- Solution Items, "Solution Items"
- AasxDictionaryImport, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxDictionaryImport\AasxDictionaryImport.csproj"
- AasxSignature, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxSignature\AasxSignature.csproj"
- AasxOpenidClient, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxOpenidClient\AasxOpenidClient.csproj"
- AasxCsharpLibrary.Tests, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxCsharpLibrary.Tests\AasxCsharpLibrary.Tests.csproj"
- BaseCode, "BaseCode"
- AasxDictionaryImport.Tests, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxDictionaryImport.Tests\AasxDictionaryImport.Tests.csproj"
- FunctionalLibs, "FunctionalLibs"
- Plugins, "Plugins"
- ProgsCommandLine, "ProgsCommandLine"
- ProgsUserInterface, "ProgsUserInterface"
- DataStore, "DataStore"
- WpfMtpControl, "C:\Users\hwb20103\Github\aasx-package-explorer\src\WpfMtpControl\WpfMtpControl.csproj"
- AasxPluginMtpViewer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginMtpViewer\AasxPluginMtpViewer.csproj"
- WpfMtpVisuViewer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\WpfMtpVisuViewer\WpfMtpVisuViewer.csproj"
- FunctionalUiLibs, "FunctionalUiLibs"
- AasxUaNetServer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxUaNetServer\AasxUaNetServer.csproj"
- AasxPluginUaNetServer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginUaNetServer\AasxPluginUaNetServer.csproj"
- AasxPluginUaNetClient, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginUaNetClient\AasxPluginUaNetClient.csproj"
- AasxUaNetConsoleServer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxUaNetConsoleServer\AasxUaNetConsoleServer.csproj"
- UserSpecific, "UserSpecific"
- WpfXamlTool, "C:\Users\hwb20103\Github\aasx-package-explorer\src\WpfXamlTool\WpfXamlTool.csproj"
- AasxPluginImageMap, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginImageMap\AasxPluginImageMap.csproj"
- AasxToolkit.Tests, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxToolkit.Tests\AasxToolkit.Tests.csproj"
- AasxPackageExplorer.GuiTests, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPackageExplorer.GuiTests\AasxPackageExplorer.GuiTests.csproj"
- AasxPluginAdvancedTextEditor, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginAdvancedTextEditor\AasxPluginAdvancedTextEditor.csproj"
- AasxPackageExplorer.Tests, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPackageExplorer.Tests\AasxPackageExplorer.Tests.csproj"
- AasxPluginPlotting, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginPlotting\AasxPluginPlotting.csproj"
- AasxFormatCst, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxFormatCst\AasxFormatCst.csproj"
- AasxPluginSmdExporter, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginSmdExporter\AasxPluginSmdExporter.csproj"
- AasxPackageLogic, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPackageLogic\AasxPackageLogic.csproj"
- AnyUi, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AnyUi\AnyUi.csproj"
- BlazorUI, "C:\Users\hwb20103\Github\aasx-package-explorer\src\BlazorUI\BlazorUI.csproj"
- SSIExtension, "C:\Users\hwb20103\Github\aasx-package-explorer\src\SSIExtension\SSIExtension.csproj"
- AasxPluginKnownSubmodels, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginKnownSubmodels\AasxPluginKnownSubmodels.csproj"
- UIComponents.Flags.Blazor, "C:\Users\hwb20103\Github\aasx-package-explorer\src\UIComponents.Flags.Blazor\UIComponents.Flags.Blazor.csproj"
- AasxIntegrationBaseGdi, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxIntegrationBaseGdi\AasxIntegrationBaseGdi.csproj"
- AasxFileServerRestLibrary, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxFileServerRestLibrary\AasxFileServerRestLibrary.csproj"
- AasxBammRdfImExport, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxBammRdfImExport\AasxBammRdfImExport.csproj"
- jsoncanonicalizer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\jsoncanonicalizer\jsoncanonicalizer.csproj"
- es6numberserializer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\es6numberserializer\es6numberserializer.csproj"
- Setup, "Setup"
- Projektmappenelemente, "Projektmappenelemente"
- AasxSchemaExport, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxSchemaExport\AasxSchemaExport.csproj"
- BlazorExplorer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\BlazorExplorer\BlazorExplorer.csproj"
- AasCore.Aas3_0, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasCore.Aas3_0\AasCore.Aas3_0.csproj"
- AasxCsharpLibrary, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxCsharpLibrary\AasxCsharpLibrary.csproj"
- AasxPluginDigitalNameplate, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginDigitalNameplate\AasxPluginDigitalNameplate.csproj"
- AasxPluginContactInformation, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPluginContactInformation\AasxPluginContactInformation.csproj"
- AasxPackageExplorer, "C:\Users\hwb20103\Github\aasx-package-explorer\src\AasxPackageExplorer.sln"
- , ""

Use of eclass

I have a question... Can´t i import eclass since AASX package explorer?

Bug when multiple AasxPluginGenericForms are created

Describe the bug
I created several submodels which I intend to use as templates, so I exported them as options for GenericForms. Then I created a new .AASX file and imported one of these plugins at a time to build my model. I noticed that the submodel elements were correctly imported but the content, i.e., the submodel elements that are rendered at the right side of the windows (the box with the tabs "Element" and "Content") are the same for all submodels. Besides, the "TBD" icon has the same name for all the submodels.

To Reproduce

  1. Create two submodels with different idShort. Populate them with different submodel elements.
  2. Export each of these submodels as options for GenericConcetps (File -> Export -> Export Submodel as options for GenericForms
  3. Paste the generated files at ...\AasxPackageExplorer\plugins\AasxPluginGenericForms
  4. Open the AASX Package Explorer and create a new AASX file. Add a new AAS and save it
  5. Select the AAS that you just created, click on Workspace -> Plugins -> New Submodel
  6. Find the submodel plugins that you created and double-click one of them. Save the file and do the same for the other submodel plugin
  7. Open the two submodels that were created and verify that there is a "TBD" element just below the SM icon. Their names should be stg like "TBD/NameOfTheSubmodel" followed by "ready". At this point you should be able to see that the name of the "TBD" element does not match the submodel idShort for one of your submodels.
  8. For the submodel whose name of "TBD Element" and the idShort of the Submodel do not match, click on the TBD icon. See that the submodel elements that are rendered at the right side of the window do not correspond to the submodel elements of the submodel you selected.

Expected behavior
When I click on the TBD icon of a Submodel created by a plugin, I expected that the submodel elements that are displayed at the right side window of AASX Pacakge Explorer are the same of the submodel that I selected and not the ones of another submodel which also has a plugin for it.

Screenshots
image
image

Desktop (please complete the following information):

  • OS: Windows 10
  • aasx-package-explorer.2021-08-17.alpha

Additional context

AASX Package Explorer can't load AASX containing an XML without conceptDescriptions tag.

Describe the bug
Loading an AASX file that contains an XML without the conceptDescriptions tag in the enviroment tag leads to the error attached
log.txt.
Including an empty conceptDescriptions tag is not spec conforming (cf. https://github.com/admin-shell-io/aas-specs/tree/master/schemas/xml#optional-properties)

To Reproduce
Import attached aasx file (rename .zip to .aasx).
aasx.zip

Expected behavior
The AASX should load in AASX package Explorer

Dictionary import does not work

With the current AASX Package Explorer version, it is not possible to open the dictionary import dialog.

Steps to reproduce:

  1. Select File --> Import --> Import Submodel from Dictionary.
  2. Error message:

    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. at bei AasxPackageExplorer.MainWindow.CommandBinding_ImportSubmodel() in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxPackageExplorer\MainWindow.CommandBindings.cs:Zeile 1975..

Expected behavior
The dictionary import dialog is opened.

Environment:

  • OS: Windows 10
  • AASX Package Explorer: 2021-01-16.alpha

Additional context
I was able to track the issue down using git bisect. 9ce14cb is the first offending commit. The issue does not occur if the user creates or opens an AAS and selects it before executing the menu action.

Not able to find appropriate ConceptDescriptions. Aborting

After adding the Nameplate submodel and Identification submodel via Plugins menu to my AAS, I wanted to add the related ConceptDescriptions via Fix missing CDs button. However, I have got the following error.

message: [AasxPluginGenericForms] Not able to find appropriate ConceptDescriptions in the GeneralForm option records. Aborting.

Only report offending files in CheckBiteSized.ps1

If there is a file with an overlong line, I have to find the few FAIL lines within several hundred OK lines in the output of CheckBiteSized.ps1. It would be more convenient if the script would only show the offending files per default. If necessary, a --verbose flag could be added that lists all files.

export to Opc-ua Nodeset2.xml

Describe the bug
Hello dear team of the AASX,
I am using your application to create an AAS.
However, I noticed that when I export to an XML file via OPC-UA Nodeset2.xml, the node ids are generated in INT values. Is it possible to export the node IDs in string values by changing a config file?
Example (python client get node function):
client.get_node("ns=3; s=AASROOT.ExampleMotor.TechnicalData.MaxRotationSpeed.Value")
unfortunately it is not possible to find the generated XML file that converted the string into an Int.
Example (python client get node function):
client.get_node("ns=3; i=100") found.

Export via "Export AAS as I4AAS-nodeset" fails

"Export AAS as I4AAS-nodeset" fails with error message "Mapping Types could not found".

-- Original message

Hallo Herr Hoffmeister,
ich habe nochmal eine Frage zum Package Explorer und hoffe Sie können mir weiterhelfen.

Um die Durchgängigkeit der AAS-Lösung zu demonstrieren, baue ich zur Zeit einen internen Show-Case mit einer unser Steuerung mit OPC UA auf und würde hierzu gerne die Funktion des Node-Set Exports im Package Explorer nutzen. Ich verwende die Version v2021-08-18. Leider gibt mir der Package Explorer jedes Mal bei „Export AAS as I4AAS-nodeset“ die Fehlermeldung „Mapping Types could not found“ aus.

Wie kann ich das Problem beheben?

Mit freundlichen Grüßen aus [..]
[..]

--- Investigation

grafik

This code block fails (see image below).

  • i4AASCS.xml is searched at the wrong place (in the parent of the parent of the EXE directory)
  • i4AASCS.xml is not automatically copied to the EXE directory
  • i4AASCS.xml should IMHO (by now, since stabilized) be included as a resource

Improved handling of unit of measure (UOM) in Technical data submodel viewer.

We need a general feature where the value and UOM are separated internally but displayed together in the TD-viewer.

The data value and the UOM should be separated data-properties. In a video cast you are placing the unit of measure inside the data value field. This way of doing it, adds additional parsing when we need to extract the data values with appropriate UOM.

-Jon

Cannot obtain JSON Schema for submodel instance validation

Describe the bug
It is not possible to export from a submodel template to a JSON Schema.
Even though a JSON Schema file is created, it only defines constant values and can thus not be used to validate submodel instances

To Reproduce
Steps to reproduce the behavior:

  1. In AASX Package Explorer v2023-02-03, open published ContactInformation submodel template from https://github.com/admin-shell-io/submodel-templates/blob/main/published/Contact%20Information/1/IDTA%2002002-1-0_Template_ContactInformation.aasx
  2. Export JSON Schema
    image
  3. The exported file is a valid JSON Schema, but not for instances of the submodel
    image

Expected behavior
Either there exists a JSON Schema or XML schema for published submodel templates somwhere, or I can at least export one myself from the submodel template, for validating model instances.

New MimeType for Blob and File SME

We want to add an iCalender file (regarding to RFC 5545) to our AAS. For this we need the mimeType "text/calendar". Can you add it?

Thank you very much.

Missing query parameters for /shells/{aasIdentifier}/submodels

Describe the bug
Branch masterV3 provides a resource /shells/{aasIdentifier}/submodels which should include the same query parameters as for /submodels.

/shells/{aasIdentifier}/submodels:

image

/submodels:

image

At the moment it is not possible to request a specific submodel of a AAS by semanticID or idShort.

Not able to see 'Asset' option under Environment

Discussed in #672

Originally posted by rushikesh0410 December 10, 2023
Hi Community,
I am relatively new to aasx package explorer and have just installed latest release of AASX package explorer.

However, I am not able to see the Asset option under Environment.

Right now, only options I see under Environment are, AdministrationShell, All Submodels and ConceptDescription

I would be very thankful if someone could help me out in this regard.

Thanking you,
best regards,
Rushikesh

Invalid sub-ordinate options for AnnotatedRelationshipElement attributes

Describe the bug
According to the metamodel AnnotatedRelationshipElement should only have DataElement.

To Reproduce
Steps to reproduce the behavior:

  1. Create an AnnotatedRelationshipElement

  2. From editing of sub-ordinate entities click on annotation add other...
    image

  3. Following options would appear
    image

  4. Only subtypes of DataElement should be possible
    image

Expected behavior
MultiLanguageProperty, Property, Range, File, Blob, and ReferenceElement are allowed. It seems the add other... option shows invalid options.

Additional context
AASX Package Explorer version: v2023-09-12

The ConceptDescription information filled in the AASX is missing when exported in JSON format

Describe the bug
I added multiple pieces of information (value, unit, description in three languages) to the “ConceptDescription” category in AAS. However, whether exporting to a JSON file or querying via URL, the returned data does not include the information within the red-marked area.

Expected behavior
Where can I add information such as units or symbols? Looking forward to a reply, thanks!:)

Screenshots
ce9ab114b93b537dd5a70b9033d6961

add new AAS button missing

2020-12-19_18h03_27

When I open the AASX Explorer and switch to edit mode I still do not get the possibility to edit an AAS from scratch. In the moment there is the Work Around to add an existing one and then edit it.

AASX Package Explorer V3 2023-09-12.alpha: Cannot save to AASX when "Operation" is added

When adding the Submodel Element "Operation" to a Submodel or a Submodel Element Collection I cannot save to AASX.

Error: when saving AASX: PackageCentral: while saving local file: C:\Temp\myplc.aasx buffered to: C:\Users\me\AppData\Local\Temp\tmp94AE.aasx with new filename at \PackageContainerLocalFile.cs:line 202 gave: While indirect-saving aasx to source local file: C:\Temp\myplc.aasx buffered to: C:\Users\me\AppData\Local\Temp\tmp94AE.aasx at \AdminShellPackageEnv.cs:line 1053 gave: The process cannot access the file 'C:\Users\me\AppData\Local\Temp\tmp94AE.aasx' because it is being used by another process. PackageCentral: while saving local file: C:\Temp\myplc.aasx buffered to: C:\Users\me\AppData\Local\Temp\tmp94AE.aasx with new filename at \PackageContainerLocalFile.cs:line 202 gave: While indirect-saving aasx to source local file: C:\Temp\myplc.aasx buffered to: C:\Users\me\AppData\Local\Temp\tmp94AE.aasx at \AdminShellPackageEnv.cs:line 1053 gave: The process cannot access the file 'C:\Users\me\AppData\Local\Temp\tmp94AE.aasx' because it is being used by another process. at    at AasxPackageLogic.PackageCentral.PackageCentralItem.SaveAsAsync(String saveAsNewFileName, SerializationFormat prefFmt, PackCntRuntimeOptions runtimeOptions, Boolean doNotRememberLocation) in C:\git\github\admin-shell-io\aasx-package-explorer\src\AasxPackageLogic\PackageCentral\PackageCentral.cs:line 174
   at AasxPackageLogic.MainWindowAnyUiDialogs.CommandBinding_GeneralDispatchAnyUiDialogs(String cmd, AasxMenuItemBase menuItem, AasxMenuActionTicket ticket) in C:\git\github\admin-shell-io\aasx-package-explorer\src\AasxPackageLogic\MainWindowAnyUiDialogs.cs:line 168.

AASX files with operations as submodel elements don't load properly

AASX files that contain operations can't be loaded properly.
While older versions of the Package Explorer load the file (e.g. v2023-02-03), the operation variables are not properly shown. Even though the data is there, the elements show <no value!>.
The latest versions of the Package Explorer (e.g. v2023-09-12) crash when trying to load such a file.

The error is the following:

Error: while receiving file drop to window: PackageCentral: while performing load from C:\Users\cns5fe\Downloads\test.aasx at \PackageCentral.cs:line 83 gave: One or more errors occurred. (While opening aasx C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx from source local file: C:\Users\cns5fe\Downloads\test.aasx buffered to: C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 456 gave: While reading the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 446 gave: While reading spec from the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \ExtendISubmodelElement.cs:line 454 gave: Object reference not set to an instance of an object.) PackageCentral: while performing load from C:\Users\cns5fe\Downloads\test.aasx at \PackageCentral.cs:line 83 gave: One or more errors occurred. (While opening aasx C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx from source local file: C:\Users\cns5fe\Downloads\test.aasx buffered to: C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 456 gave: While reading the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 446 gave: While reading spec from the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \ExtendISubmodelElement.cs:line 454 gave: Object reference not set to an instance of an object.)
InnerException: One or more errors occurred. (While opening aasx C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx from source local file: C:\Users\cns5fe\Downloads\test.aasx buffered to: C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 456 gave: While reading the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 446 gave: While reading spec from the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \ExtendISubmodelElement.cs:line 454 gave: Object reference not set to an instance of an object.)
InnerException: While opening aasx C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx from source local file: C:\Users\cns5fe\Downloads\test.aasx buffered to: C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 456 gave: While reading the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 446 gave: While reading spec from the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \ExtendISubmodelElement.cs:line 454 gave: Object reference not set to an instance of an object. at    at AasxPackageLogic.PackageCentral.PackageCentralItem.Load(PackageCentral packageCentral, String location, String fullItemLocation, Boolean overrideLoadResident, PackageContainerOptionsBase containerOptions, PackCntRuntimeOptions runtimeOptions) in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxPackageLogic\PackageCentral\PackageCentral.cs:line 102
   at AasxPackageExplorer.MainWindow.UiLoadPackageWithNew(PackageCentralItem packItem, AdminShellPackageEnv takeOverEnv, String loadLocalFilename, String info, Boolean onlyAuxiliary, Boolean doNotNavigateAfterLoaded, PackageContainerBase takeOverContainer, String storeFnToLRU, Boolean indexItems) in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxPackageExplorer\MainWindow.xaml.cs:line 376
   at AasxPackageExplorer.MainWindow.Window_Drop(Object sender, DragEventArgs e) in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxPackageExplorer\MainWindow.xaml.cs:line 3361.Inner message: One or more errors occurred. (While opening aasx C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx from source local file: C:\Users\cns5fe\Downloads\test.aasx buffered to: C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 456 gave: While reading the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 446 gave: While reading spec from the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \ExtendISubmodelElement.cs:line 454 gave: Object reference not set to an instance of an object.)
Inner message: While opening aasx C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx from source local file: C:\Users\cns5fe\Downloads\test.aasx buffered to: C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 456 gave: While reading the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \AdminShellPackageEnv.cs:line 446 gave: While reading spec from the AASX C:\Users\cns5fe\AppData\Local\Temp\tmpE921.aasx at \ExtendISubmodelElement.cs:line 454 gave: Object reference not set to an instance of an object.

To Reproduce
See the attached synthetic example: test.zip
(renamed from .AASX to .ZIP to allow uploading)

Support for metamodel v3.0

Are there plans to support v3.0 of the metamodel anytime soon? Or will the implementation be postponed until a final version is released?

I'm asking because I'm working on a project where we'd like to get working on supporting v3.0 given the current release candidate but we're using the AASX Package Explorer as a reference implementation whenever any parts of the metamodel are unclear.

Package Explorer crashes on startup caused by FileNotFoundException

Describe the bug
Application starts, shows Welcome Screen and then terminates without any message.

To Reproduce
Steps to reproduce the behavior:

  1. Download AASX Package Explorer 2020-12-03.alpha (bigger file)
  2. Right-click on zip-file -> Properties -> Unblock content from web
  3. Extract folder
  4. Start AasxPackageExplorer.exe

Expected behavior
Clear startup of the Application.

Desktop (please complete the following information):

  • OS: Windows 10 Version 1809 (OS Build 17763.1577)

Additional context
I looked into the Windows Event Viewer and found the error:

Log Name: Application
Source: .NET Runtime
Date: 12/6/2020 12:12:38 PM
Event ID: 1026
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: test-machine
Description:
Application: AasxPackageExplorer.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileNotFoundException
at CefSharp.Wpf.ChromiumWebBrowser.NoInliningConstructor()
at CefSharp.Wpf.ChromiumWebBrowser..ctor()
at AasxIntegrationBase.AasxPlugin.ActivateAction(System.String, System.Object[])

Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at AasxPackageExplorer.Plugins+PluginInstance.BasicInvokeMethod(System.String, System.Object[])
at AasxPackageExplorer.BrowserContainer.Start(System.String, Boolean, Boolean)
at AasxPackageExplorer.MainWindow.Window_Loaded(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.BroadcastEventHelper.BroadcastEvent(System.Windows.DependencyObject, System.Windows.RoutedEvent)
at System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(System.Object)
at MS.Internal.LoadedOrUnloadedOperation.DoWork()
at System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(System.Object)
at System.Windows.Media.MediaContext.RenderMessageHandler(System.Object)
at System.Windows.Interop.HwndTarget.OnResize()
at System.Windows.Interop.HwndTarget.HandleMessage(MS.Internal.Interop.WindowMessage, IntPtr, IntPtr)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)

I thought it could have to do with options-debug.MIHO.json so I removed it. Error persists.

Any Ideas how to investigate further?

[BUG] SML orderRelevant cannot be set to false

Describe the bug
The default for SubmodelElementList/orderRelevant is True.
It is not possible to set orderRelevant to False in the explorer.
Generated xml is ok, if field is not set or set (in both cases it would be true)

To Reproduce
Steps to reproduce the behavior:

  1. Create SML within a Submodel
  2. try to set orderRelevant to false
  3. check for generated xml

Screenshots
image

Incorrect Chinese language code for LangStrings

Describe the bug
The AASX Package Explorer predefines a few two-letter language codes for some common languages. Among those is cn, which I assume is meant to signify Chinese. That's not an existing language code (ISO 639-1 alpha-2), however, its a country code (ISO 3166). The Chinese language goes by zh.

I'll attempt to provide a PR, if it doesn't take me too much effort to find the error in code.

To Reproduce
Steps to reproduce the behavior:

  1. Go to any LangString (e.g., description on any element)
  2. Use the language code dropdown

Expected behavior
zh should be in the list.

Screenshots

image

Inserting AASX files from AASX Package Explorer into the AASX server

Describe the bug
I started the demo of AASX Server (the one with the AAS of an example Servo DC motor), then I connected the AASX Package Explorer to this HTTP/REST repository and I could see the example of AAS that it contains. When I try to insert a new AAS into the server it doesn't work. AASX Package Explorer displays the server's AAS list as if it was added, but it is not actually loaded into the repository. Also, when I try to open this AAS that I just added, the AASX Package Explorer application closes.

To Reproduce
Steps to reproduce the behavior:

  1. Run AASX server in localhost (windows: startForDemo.bat)
  2. Open AASX Package Explorer and connect to the server (file -> AASX File Repository -> connect HTTP/REST repository)
  3. In the repository tab (down left region), click “Add multiple AASX files”. Alternatively, open another AASX file and click “Add current AAS”.
  4. Verify that the AASX is listed as if it was part of the repository.
  5. Click twice to open the AASX file you just added to the repository. The AASX Package Explorer closes. If you check aasxs folder of the repository, the AASX file you added is not there.

Expected behavior
I expected to really add the AASX file to the repository and be able to open it from AASX Package Explorer.

Screenshots
image
image
image

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser: not applicable
  • Version: not applicable

Additional context
Add any other context about the problem here.

Error while checking model contents. Aborting

Hi,

Is there a problem with "Check, validate and fix" option? Whe i press the button, this messasge appears: "error while checking model contents. Aborting"

To Reproduce
Steps to reproduce the behavior:

  1. Create an AAS
  2. Create a submodel
  3. Save
  4. Go to File option, then "check, validate and fix" option
  5. See error

This message appears in log: "Error: Checking model contents: Object reference not set to an instance of an object. Object reference not set to an instance of an object. at at Extensions.ExtendSubmodel.Validate(Submodel submodel, AasValidationRecordList results) in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxCsharpLibrary\Extensions\ExtendSubmodel.cs:line 116
at Extensions.ExtendIReferable.Validate(IReferable referable, AasValidationRecordList results) in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxCsharpLibrary\Extensions\ExtendIReferable.cs:line 173
at Extensions.ExtendEnvironment.ValidateAll(Environment environment) in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxCsharpLibrary\Extensions\ExtendEnvironment.cs:line 45
at AasxPackageExplorer.MainWindow.CommandBinding_CheckAndFix() in D:\a\aasx-package-explorer\aasx-package-explorer\src\AasxPackageExplorer\MainWindow.CommandBindings.cs:line 411."

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
image
image

Thanks

AASX Package Explorer can't load *.aasx file where Part URI start without a forward slash

(1) AASX Package Explorer v2023-09-12.alpha fails to load an *.aasx file with a Target-Attribure of a Relationship-Element in a *.rels file that does not start with a forward slash. If a path doesn't start with a leading slash, amongst others, the Error Message Part URI must start with a forward slash. is displayed.
-> The aasx specification SPOT Part5 AASX Package File Format references ISO/IEC 29500-2 ECMA Office Open XML file formats -> Part 2.
Here, paths with no leading slash are explicitly allowed (see 6.4.3.3 No leading slash).
(2) Further more the AASX Package Explorer seems to expect paths, given in target attribute, always to be relative to the root directory (aasx/) which leads to unexpected behaviour as one would expect a relative path to be relative to the current directory.
(see 6.5.3.4 Relationship element of ISO/IEC 29500-2)

To Reproduce

  1. download the file bugDemoAASX.zip
  2. Adjust the file-ending to .aasx
  3. try opening the file in the AASX Package Explorer

Expected behavior
AASX Package Explorer can load the file

Actual behavior
AASX Package Explorer fails to load the file

Additional context
The file is structured like this:

bugDemoAASX.aasx
├── _rels
│   └── .rels
├── aasx
│   ├── _rels
│   │   └── aasx-origin.rels
│   ├── xml
│   │   └── content.xml
│   └── aasx-origin
├── docProps
│   └── core.xml
└── [Content_Types].xml

The File bugDemoAASX.aasx/_rels/.rels file contains a Relationship Target aasx/aasx-origin
The File bugDemoAASX.aasx/aasx/_rels/aasx-origin.rels contains a Relationship Target xml/content.xml

Both Target paths can be resolved with a prefix forward slash /. The Target path of the aasx-origin.rels file additionally has to be prefixed with /aasx to be accepted by the AASX Package Explorer.

Studying the ISO/IEC 29500-2 spec, we understand that internal relative paths should be relative to the the parent directory of the _rels folder.

A resolved version of the BugDemo.aasx file, that works with the current Version of the AASX Package Explorer ( v2023-09-12.alpha) would be resolvedBugDemoAASX.zip (file endig has to be adjusted to .aasx)
In our eyes, according to the spec, the provided bugDemoAASX.zip file should work as well.

This is related to eclipse-aas4j/aas4j#158

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.