Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test recovered models against Model Compiler 2.1.1-Bravo #97

Closed
1 task done
mpostol opened this issue Apr 13, 2022 · 5 comments
Closed
1 task done

Test recovered models against Model Compiler 2.1.1-Bravo #97

mpostol opened this issue Apr 13, 2022 · 5 comments
Assignees
Labels
Feature request Suggest an idea for this project

Comments

@mpostol
Copy link
Owner

mpostol commented Apr 13, 2022

Describe the problem

All recovered models must be tested against compliance with the Model Compiler.

Check out the current version of the Model Compiler 2.1.1-Bravo.

Describe the solution you'd like

To test you must prepare scripts calling the Model Compiler and executed them for all recovered models.
The preliminary script template shall be as follows

set COMPILER=OOI.ModelCompilerUI
"%1\%COMPILER%" -d2 "<ModelName>.xml" -cg "<ModelName>[.csv]" -o "<ModelName>" -console

Test the template using the selected model and review it if needed. All problems must be reported.

Partially it contributes to mertyusaatag#14.
Partially it contributes to mpostol/OPC-UA-OOI#653.

  • IEC61850
@mpostol mpostol added the Feature request Suggest an idea for this project label Apr 13, 2022
@mpostol mpostol self-assigned this Apr 13, 2022
@mpostol mpostol added this to the Erasmus Internship 22 milestone Apr 13, 2022
@mpostol
Copy link
Owner Author

mpostol commented Apr 13, 2022

For

-d2 "Opc.Ua.IEC61850-7-3.Model.xml" -cg "IEC61850-7-3.csv" -o "IEC61850-7-3" -console

we are getting an error related to XML, but ``Opc.Ua.IEC61850-7-3.Model.xml` was generated using the XML Serializer from .NET.

The string '20/11/2020' is not a valid AllXsd value.
at System.Xml.Schema.XsdDateTime..ctor(String text, XsdDateTimeFlags kinds) 
at System.Xml.XmlConvert.ToDateTime(String s, XmlDateTimeSerializationMode dateTimeOption) 
at OOI.ModelCompiler.ModelCompilerValidator.Validate2(IList`1 designFilePaths, String identifierFilePath, Boolean generateIds) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelDesignerValidator.cs:line 1135 
at OOI.ModelCompiler.ModelGenerator2.ValidateAndUpdateIds(IModelGeneratorValidate model) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelGenerator2.cs:line 108 
at OOI.ModelCompilerUI.ModelCompilerAPI.Execute(IModelGeneratorGenerate generateParameters, IModelGeneratorValidate validateParameters) in C:\VS.git\github.mpostol\UA-ModelCompiler\ModelCompilerUI\ModelCompilerAPI.cs:line 24 
at OOI.ModelCompilerUI.ModelCompilerAPIInternal.Execute(IModelGeneratorGenerate generateParameters, IModelGeneratorValidate validateParameters) in C:\VS.git\github.mpostol\UA-ModelCompiler\ModelCompilerUI\ModelCompilerAPIInternal.cs:line 211 
at OOI.ModelCompilerUI.EntryPoint.ProcessCommandLine(String commandLine, Boolean noGui, IGUIHandling guiHandling) in C:\VS.git\github.mpostol\UA-ModelCompiler\ModelCompilerUI\EntryPoint.cs:line 98
``

@mpostol
Copy link
Owner Author

mpostol commented Apr 13, 2022

Incompatible PublicationDate format detected:

  • OPC-UA-OOI\SemanticData\UAModelDesignExport\XML\UA Model Design.xsd
  • UA-ModelCompiler\Opc.Ua.ModelCompiler\UA Model Design.xsd
        <xs:attribute name="PublicationDate" type="xs:string" use="optional" />
  • OPC-UA-OOI\SemanticData\UANodeSetValidation\XML\UANodeSet.xsd
    <xs:attribute name="PublicationDate" type="xs:dateTime" />
  • UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelDesignerValidator.cs
modelInfo.PublicationDate = XmlConvert.ToDateTime(ns.PublicationDate, XmlDateTimeSerializationMode.Utc)
  • IEC61850\ModelDesign\Opc.Ua.IEC61850-7-3.Model.xml
PublicationDate="20/11/2020"

@mpostol
Copy link
Owner Author

mpostol commented Apr 13, 2022

  • Must be fixed in asp - add validation and workaround to fix in case the date is not valid
  • Workaround 20/11/2020 => 2020-11-20T00:00:00Z

@mpostol
Copy link
Owner Author

mpostol commented Apr 13, 2022

Compiler error:

The node has a parameter without a name: MultiplierKind.

at OOI.ModelCompiler.ModelCompilerValidator.ImportParameters(NodeDesign node, Parameter[]& parameters, String parameterType) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelDesignerValidator.cs:line 3077 
at OOI.ModelCompiler.ModelCompilerValidator.ImportType(TypeDesign type) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelDesignerValidator.cs:line 2711 
at OOI.ModelCompiler.ModelCompilerValidator.Import(NodeDesign node, NodeDesign parent) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelDesignerValidator.cs:line 2316 
at OOI.ModelCompiler.ModelCompilerValidator.Validate2(IList`1 designFilePaths, String identifierFilePath, Boolean generateIds) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelDesignerValidator.cs:line 1173 
at OOI.ModelCompiler.ModelGenerator2.ValidateAndUpdateIds(IModelGeneratorValidate model) in C:\VS.git\github.mpostol\UA-ModelCompiler\Opc.Ua.ModelCompiler\ModelGenerator2.cs:line 108 
at OOI.ModelCompilerUI.ModelCompilerAPI.Execute(IModelGeneratorGenerate generateParameters, IModelGeneratorValidate validateParameters) in C:\VS.git\github.mpostol\UA-ModelCompiler\ModelCompilerUI\ModelCompilerAPI.cs:line 24 
at OOI.ModelCompilerUI.ModelCompilerAPIInternal.Execute(IModelGeneratorGenerate generateParameters, IModelGeneratorValidate validateParameters) in C:\VS.git\github.mpostol\UA-ModelCompiler\ModelCompilerUI\ModelCompilerAPIInternal.cs:line 211 
at OOI.ModelCompilerUI.EntryPoint.ProcessCommandLine(String commandLine, Boolean noGui, IGUIHandling guiHandling) in C:\VS.git\github.mpostol\UA-ModelCompiler\ModelCompilerUI\EntryPoint.cs:line 98

@mpostol mpostol changed the title Test recovered models against Model Compiler 2.1.1-Bravo #14 Test recovered models against Model Compiler 2.1.1-Bravo Apr 14, 2022
mpostol referenced this issue Apr 14, 2022
- IEC61850 models generated using asp Version 6.5.5.39885
mpostol added a commit that referenced this issue Apr 14, 2022
- IEC61850/ModelDesign/GoNodeSet.cmd - added script to call OOI.ModelCompilerUI
mpostol added a commit that referenced this issue Apr 15, 2022
- Recovered models of IEC61850 compiled  using UA-Compiler Version 2.1.1.30977
mpostol added a commit that referenced this issue Apr 15, 2022
- IEC61850 removed timestamps from warning files (UA-Compiler Version 2.1.1.30977) - unimportant changes
mpostol added a commit that referenced this issue Apr 16, 2022
- IEC61850 testing using UA-Compiler Version 2.1.1.23759 - unimportant changes
mpostol added a commit that referenced this issue Apr 16, 2022
- IEC61850 regenerated using released version: ModelDesign Compiler (mdc.exe) Version 2.1.2.33534
mpostol added a commit that referenced this issue Apr 19, 2022
- IEC61850 regenerated using  ModelDesign Compiler (mdc.exe) Version: 3.0.0.41853
@mpostol
Copy link
Owner Author

mpostol commented Apr 20, 2022

The model is to be tested using the new version of the ModelDesign Compiler (mdc.exe) Version: 3.0.0.41853

@mpostol mpostol closed this as completed Apr 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature request Suggest an idea for this project
Projects
None yet
Development

No branches or pull requests

1 participant