Skip to content
This repository was archived by the owner on Feb 15, 2024. It is now read-only.

Commit 920bf52

Browse files
committed
updated readme
1 parent f656464 commit 920bf52

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

dataformat-uanodeset/README.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,18 @@
44

55
The OPC UA Companion Specification as published by [opcfoundation.org](https://opcfoundation.org/developer-tools/specifications-opc-ua-information-models/opc-ua-for-i4-asset-administration-shell/) currently targets AAS Version 2. Since the core model is build on Version 3, an **unofficial pre-release version I4AAS V3** is used.
66

7-
You can find the pre-release UA NodeSet as xml under /nodeset/i4aas as well as all changes documented in a CSV file.
7+
You can find the pre-release UA NodeSet as XML file under /nodeset/i4aas as well as all changes documented in a CSV file.
88

9-
## generated JAXB classes
9+
## Generated JAXB Classes
1010

11-
The UA NodeSet de/serializer is based on JAXB annotated classes, generated by from 3 XSD files (/nodeset/xsd), which you can also extract from the pom.xml. The execution with id *generate-uatypes-classes* is deactivated since minor manual changes were necessary so that the XML namespaces are set correctly. To prevent overrides, these generated, then adjusted classes for *generate-uatypes-classes* are copy-pasted from /target/generated/src/main/java to /src/main/java If you need to update these classes, consider to change the execution phase to *generate-sources*.
11+
The UA NodeSet de/serializer is based on JAXB annotated classes, generated from 3 XSD files (/nodeset/xsd), which you can also extract from the pom.xml. The execution with id *generate-uatypes-classes* is deactivated since minor manual changes were necessary so that the XML namespaces are set correctly. To prevent overrides, these generated, then adjusted classes for *generate-uatypes-classes* are copy-pasted from /target/generated/src/main/java to /src/main/java If you need to update these classes, consider to change the execution phase to *generate-sources*.
12+
13+
![generated classes](nodeset/FilesGenerated.png)
14+
15+
## Implementation Overview
16+
17+
The basic idea is to use the JAXB classes as intermediate for serialization and deserialization. Since these classes are generated from schema, the generated output is always as good as the JAXB marshaller handles these classes.
18+
19+
The core logic about the mapping rules according to I4AAS is implemented in the mapping (serialization) or parser (deserialization) packages.
20+
21+
![overview](nodeset/MappingParser.png)

0 commit comments

Comments
 (0)