You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2021/04/14 13:21:02 UTC

[plc4x] 12/14: plc4go: revert 0e71f17c as we have no safety net to catch name collisions

This is an automated email from the ASF dual-hosted git repository.

sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git

commit 7d37476b1cb91981abc54f1aa6002117433c86f6
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Apr 14 13:36:40 2021 +0200

    plc4go: revert 0e71f17c as we have no safety net to catch name collisions
    
    + Backgroundinfo: BACnetConfirmedServiceRequestWritePropertyParse defines a len which overshadowes the builtin len from golang
---
 .../src/main/resources/templates/go/model-template.go.ftlh          | 3 ---
 .../plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go      | 3 ---
 plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go | 3 ---
 .../plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go         | 3 ---
 plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go       | 3 ---
 plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go   | 6 ------
 plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go  | 3 ---
 plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go        | 3 ---
 .../internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go   | 3 ---
 plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go       | 3 ---
 plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetAddress.go    | 3 ---
 .../model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go  | 6 ------
 .../readwrite/model/BACnetConfirmedServiceRequestReadProperty.go    | 3 ---
 .../readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go    | 3 ---
 .../readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go   | 3 ---
 .../plc4go/bacnetip/readwrite/model/BACnetErrorReadProperty.go      | 6 ------
 .../plc4go/bacnetip/readwrite/model/BACnetServiceAckReadProperty.go | 3 ---
 .../bacnetip/readwrite/model/BACnetTagApplicationBitString.go       | 3 ---
 .../bacnetip/readwrite/model/BACnetTagApplicationEnumerated.go      | 3 ---
 .../bacnetip/readwrite/model/BACnetTagApplicationSignedInteger.go   | 3 ---
 .../bacnetip/readwrite/model/BACnetTagApplicationUnsignedInteger.go | 3 ---
 plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagContext.go | 3 ---
 .../plc4go/bacnetip/readwrite/model/BACnetTagWithContent.go         | 3 ---
 .../bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestIAm.go  | 3 ---
 .../BACnetUnconfirmedServiceRequestUnconfirmedPrivateTransfer.go    | 3 ---
 .../readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go        | 3 ---
 .../readwrite/model/BACnetUnconfirmedServiceRequestWhoIs.go         | 6 ------
 .../internal/plc4go/bacnetip/readwrite/model/BVLCForwardedNPDU.go   | 3 ---
 .../plc4go/bacnetip/readwrite/model/NLMIAmRouterToNetwork.go        | 3 ---
 .../plc4go/bacnetip/readwrite/model/NLMWhoIsRouterToNetwork.go      | 3 ---
 plc4go/internal/plc4go/bacnetip/readwrite/model/NPDU.go             | 6 ------
 .../knxnetip/readwrite/model/ApduDataDeviceDescriptorResponse.go    | 3 ---
 .../plc4go/knxnetip/readwrite/model/ApduDataExtAuthorizeRequest.go  | 3 ---
 .../knxnetip/readwrite/model/ApduDataExtPropertyValueResponse.go    | 3 ---
 .../knxnetip/readwrite/model/ApduDataExtPropertyValueWrite.go       | 3 ---
 .../plc4go/knxnetip/readwrite/model/ApduDataGroupValueResponse.go   | 3 ---
 .../plc4go/knxnetip/readwrite/model/ApduDataGroupValueWrite.go      | 3 ---
 .../plc4go/knxnetip/readwrite/model/ApduDataMemoryResponse.go       | 3 ---
 .../knxnetip/readwrite/model/ComObjectTableRealisationType1.go      | 3 ---
 .../knxnetip/readwrite/model/ComObjectTableRealisationType2.go      | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/DIBDeviceInfo.go    | 6 ------
 .../internal/plc4go/knxnetip/readwrite/model/DIBSuppSvcFamilies.go  | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/IPAddress.go        | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/LBusmonInd.go       | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/LDataCon.go         | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/LDataExtended.go    | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/LDataInd.go         | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/LDataReq.go         | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/LPollData.go        | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/MACAddress.go       | 3 ---
 plc4go/internal/plc4go/knxnetip/readwrite/model/UnknownMessage.go   | 3 ---
 .../modbus/readwrite/model/ModbusPDUGetComEventLogResponse.go       | 3 ---
 .../plc4go/modbus/readwrite/model/ModbusPDUReadCoilsResponse.go     | 3 ---
 .../modbus/readwrite/model/ModbusPDUReadDiscreteInputsResponse.go   | 3 ---
 .../plc4go/modbus/readwrite/model/ModbusPDUReadFifoQueueResponse.go | 3 ---
 .../plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordRequest.go | 3 ---
 .../modbus/readwrite/model/ModbusPDUReadFileRecordResponse.go       | 3 ---
 .../modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go   | 3 ---
 .../modbus/readwrite/model/ModbusPDUReadHoldingRegistersResponse.go | 3 ---
 .../modbus/readwrite/model/ModbusPDUReadInputRegistersResponse.go   | 3 ---
 .../model/ModbusPDUReadWriteMultipleHoldingRegistersRequest.go      | 3 ---
 .../model/ModbusPDUReadWriteMultipleHoldingRegistersResponse.go     | 3 ---
 .../modbus/readwrite/model/ModbusPDUReportServerIdResponse.go       | 3 ---
 .../modbus/readwrite/model/ModbusPDUWriteFileRecordRequest.go       | 3 ---
 .../modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go   | 3 ---
 .../modbus/readwrite/model/ModbusPDUWriteFileRecordResponse.go      | 3 ---
 .../modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go  | 3 ---
 .../modbus/readwrite/model/ModbusPDUWriteMultipleCoilsRequest.go    | 3 ---
 .../model/ModbusPDUWriteMultipleHoldingRegistersRequest.go          | 3 ---
 plc4go/internal/plc4go/s7/readwrite/model/COTPPacket.go             | 3 ---
 .../readwrite/model/COTPParameterDisconnectAdditionalInformation.go | 3 ---
 .../internal/plc4go/s7/readwrite/model/S7ParameterReadVarRequest.go | 3 ---
 plc4go/internal/plc4go/s7/readwrite/model/S7ParameterUserData.go    | 3 ---
 .../plc4go/s7/readwrite/model/S7ParameterWriteVarRequest.go         | 3 ---
 .../internal/plc4go/s7/readwrite/model/S7PayloadReadVarResponse.go  | 3 ---
 plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserData.go      | 3 ---
 .../model/S7PayloadUserDataItemCpuFunctionReadSzlResponse.go        | 3 ---
 .../internal/plc4go/s7/readwrite/model/S7PayloadWriteVarRequest.go  | 3 ---
 .../internal/plc4go/s7/readwrite/model/S7PayloadWriteVarResponse.go | 3 ---
 plc4go/internal/plc4go/s7/readwrite/model/S7VarPayloadDataItem.go   | 3 ---
 plc4go/internal/plc4go/s7/readwrite/model/SzlDataTreeItem.go        | 3 ---
 81 files changed, 261 deletions(-)

diff --git a/build-utils/language-go/src/main/resources/templates/go/model-template.go.ftlh b/build-utils/language-go/src/main/resources/templates/go/model-template.go.ftlh
index 693f1f4..da657cb 100644
--- a/build-utils/language-go/src/main/resources/templates/go/model-template.go.ftlh
+++ b/build-utils/language-go/src/main/resources/templates/go/model-template.go.ftlh
@@ -427,9 +427,6 @@ func ${type.name}Parse(io *utils.ReadBuffer<#if type.parserArguments?has_content
 					</#if>
 	}
 				</#if>
-	if len(${arrayField.name}) == 0 {
-		${arrayField.name} = nil
-	}
 				<#break>
 			<#case "checksum">
 				<#assign checksumField = field>
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go
index 32031f0..3bf7be3 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go
@@ -139,9 +139,6 @@ func AdsDeviceNotificationRequestParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		adsStampHeaders[curItem] = _item
 	}
-	if len(adsStampHeaders) == 0 {
-		adsStampHeaders = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsDeviceNotificationRequest{
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go
index 1549ee1..e4c1816 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go
@@ -111,9 +111,6 @@ func AdsNotificationSampleParse(io *utils.ReadBuffer) (*AdsNotificationSample, e
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create the instance
 	return NewAdsNotificationSample(notificationHandle, sampleSize, data), nil
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go
index 1752766..f65ace1 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go
@@ -161,9 +161,6 @@ func AdsReadDeviceInfoResponseParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		device[curItem] = _item
 	}
-	if len(device) == 0 {
-		device = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsReadDeviceInfoResponse{
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go
index 596b86a..97cfdbe 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go
@@ -138,9 +138,6 @@ func AdsReadResponseParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsReadResponse{
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go
index 596839c..8092c20 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go
@@ -169,9 +169,6 @@ func AdsReadWriteRequestParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Array field (data)
 	// Count array
@@ -183,9 +180,6 @@ func AdsReadWriteRequestParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsReadWriteRequest{
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go
index c8d697d..45aa001 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go
@@ -138,9 +138,6 @@ func AdsReadWriteResponseParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsReadWriteResponse{
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go
index f5d20e1..3111b42 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go
@@ -111,9 +111,6 @@ func AdsStampHeaderParse(io *utils.ReadBuffer) (*AdsStampHeader, error) {
 		}
 		adsNotificationSamples[curItem] = _item
 	}
-	if len(adsNotificationSamples) == 0 {
-		adsNotificationSamples = nil
-	}
 
 	// Create the instance
 	return NewAdsStampHeader(timestamp, samples, adsNotificationSamples), nil
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go
index 205f1f4..656a261 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go
@@ -149,9 +149,6 @@ func AdsWriteControlRequestParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsWriteControlRequest{
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go
index be1ae6c..ece8f33 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go
@@ -149,9 +149,6 @@ func AdsWriteRequestParse(io *utils.ReadBuffer) (*AdsData, error) {
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &AdsWriteRequest{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetAddress.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetAddress.go
index 8753729..2edb6bb 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetAddress.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetAddress.go
@@ -93,9 +93,6 @@ func BACnetAddressParse(io *utils.ReadBuffer) (*BACnetAddress, error) {
 		}
 		address[curItem] = _item
 	}
-	if len(address) == 0 {
-		address = nil
-	}
 
 	// Simple Field (port)
 	port, _portErr := io.ReadUint16(16)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
index f3ce319..85690b6 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
@@ -251,9 +251,6 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(io *utils.ReadBu
 		}
 		lifetimeSeconds[curItem] = _item
 	}
-	if len(lifetimeSeconds) == 0 {
-		lifetimeSeconds = nil
-	}
 
 	// Const Field (listOfValuesOpeningTag)
 	listOfValuesOpeningTag, _listOfValuesOpeningTagErr := io.ReadUint8(8)
@@ -276,9 +273,6 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(io *utils.ReadBu
 		}
 		notifications = append(notifications, _item)
 	}
-	if len(notifications) == 0 {
-		notifications = nil
-	}
 
 	// Const Field (listOfValuesClosingTag)
 	listOfValuesClosingTag, _listOfValuesClosingTagErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
index d18ce2f..73118cb 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
@@ -175,9 +175,6 @@ func BACnetConfirmedServiceRequestReadPropertyParse(io *utils.ReadBuffer) (*BACn
 		}
 		propertyIdentifier[curItem] = _item
 	}
-	if len(propertyIdentifier) == 0 {
-		propertyIdentifier = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetConfirmedServiceRequestReadProperty{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
index 02df8cc..cb3c9ea 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
@@ -236,9 +236,6 @@ func BACnetConfirmedServiceRequestSubscribeCOVParse(io *utils.ReadBuffer) (*BACn
 		}
 		lifetimeSeconds[curItem] = _item
 	}
-	if len(lifetimeSeconds) == 0 {
-		lifetimeSeconds = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetConfirmedServiceRequestSubscribeCOV{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
index 0df06df..96722c7 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
@@ -197,9 +197,6 @@ func BACnetConfirmedServiceRequestWritePropertyParse(io *utils.ReadBuffer, len u
 		}
 		propertyIdentifier[curItem] = _item
 	}
-	if len(propertyIdentifier) == 0 {
-		propertyIdentifier = nil
-	}
 
 	// Const Field (openingTag)
 	openingTag, _openingTagErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetErrorReadProperty.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetErrorReadProperty.go
index 679157d..d00cbf0 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetErrorReadProperty.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetErrorReadProperty.go
@@ -156,9 +156,6 @@ func BACnetErrorReadPropertyParse(io *utils.ReadBuffer) (*BACnetError, error) {
 		}
 		errorClass[curItem] = _item
 	}
-	if len(errorClass) == 0 {
-		errorClass = nil
-	}
 
 	// Const Field (errorCodeHeader)
 	errorCodeHeader, _errorCodeHeaderErr := io.ReadUint8(5)
@@ -185,9 +182,6 @@ func BACnetErrorReadPropertyParse(io *utils.ReadBuffer) (*BACnetError, error) {
 		}
 		errorCode[curItem] = _item
 	}
-	if len(errorCode) == 0 {
-		errorCode = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetErrorReadProperty{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetServiceAckReadProperty.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetServiceAckReadProperty.go
index eb07fcd..26e6afe 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetServiceAckReadProperty.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetServiceAckReadProperty.go
@@ -188,9 +188,6 @@ func BACnetServiceAckReadPropertyParse(io *utils.ReadBuffer) (*BACnetServiceAck,
 		}
 		propertyIdentifier[curItem] = _item
 	}
-	if len(propertyIdentifier) == 0 {
-		propertyIdentifier = nil
-	}
 
 	// Const Field (openingTag)
 	openingTag, _openingTagErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationBitString.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationBitString.go
index 2632bed..1c88f8c 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationBitString.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationBitString.go
@@ -130,9 +130,6 @@ func BACnetTagApplicationBitStringParse(io *utils.ReadBuffer, lengthValueType ui
 		}
 		data = append(data, _item)
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetTagApplicationBitString{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationEnumerated.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationEnumerated.go
index 576342e..f0d388d 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationEnumerated.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationEnumerated.go
@@ -119,9 +119,6 @@ func BACnetTagApplicationEnumeratedParse(io *utils.ReadBuffer, lengthValueType u
 		}
 		data = append(data, _item)
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetTagApplicationEnumerated{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationSignedInteger.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationSignedInteger.go
index c44a612..8433c28 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationSignedInteger.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationSignedInteger.go
@@ -119,9 +119,6 @@ func BACnetTagApplicationSignedIntegerParse(io *utils.ReadBuffer, lengthValueTyp
 		}
 		data = append(data, _item)
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetTagApplicationSignedInteger{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationUnsignedInteger.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationUnsignedInteger.go
index d1e362e..e2abf68 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationUnsignedInteger.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagApplicationUnsignedInteger.go
@@ -119,9 +119,6 @@ func BACnetTagApplicationUnsignedIntegerParse(io *utils.ReadBuffer, lengthValueT
 		}
 		data = append(data, _item)
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetTagApplicationUnsignedInteger{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagContext.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagContext.go
index f703317..cb50d41 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagContext.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagContext.go
@@ -119,9 +119,6 @@ func BACnetTagContextParse(io *utils.ReadBuffer, typeOrTagNumber uint8, extTagNu
 		}
 		data = append(data, _item)
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetTagContext{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagWithContent.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagWithContent.go
index f1943ce..c6768f1 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagWithContent.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetTagWithContent.go
@@ -169,9 +169,6 @@ func BACnetTagWithContentParse(io *utils.ReadBuffer) (*BACnetTagWithContent, err
 		}
 		propertyIdentifier = append(propertyIdentifier, _item)
 	}
-	if len(propertyIdentifier) == 0 {
-		propertyIdentifier = nil
-	}
 
 	// Const Field (openTag)
 	openTag, _openTagErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestIAm.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestIAm.go
index af87bc9..ad4ae32 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestIAm.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestIAm.go
@@ -193,9 +193,6 @@ func BACnetUnconfirmedServiceRequestIAmParse(io *utils.ReadBuffer) (*BACnetUncon
 		}
 		maximumApduLengthAccepted[curItem] = _item
 	}
-	if len(maximumApduLengthAccepted) == 0 {
-		maximumApduLengthAccepted = nil
-	}
 
 	// Const Field (segmentationSupportedHeader)
 	segmentationSupportedHeader, _segmentationSupportedHeaderErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestUnconfirmedPrivateTransfer.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestUnconfirmedPrivateTransfer.go
index a40a35d..622ba72 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestUnconfirmedPrivateTransfer.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestUnconfirmedPrivateTransfer.go
@@ -183,9 +183,6 @@ func BACnetUnconfirmedServiceRequestUnconfirmedPrivateTransferParse(io *utils.Re
 		}
 		values = append(values, _item)
 	}
-	if len(values) == 0 {
-		values = nil
-	}
 
 	// Const Field (listOfValuesClosingTag)
 	listOfValuesClosingTag, _listOfValuesClosingTagErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go
index 6bbb66d..6a9ec06 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go
@@ -200,9 +200,6 @@ func BACnetUnconfirmedServiceRequestWhoHasParse(io *utils.ReadBuffer) (*BACnetUn
 		}
 		objectName = append(objectName, _item)
 	}
-	if len(objectName) == 0 {
-		objectName = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetUnconfirmedServiceRequestWhoHas{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoIs.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoIs.go
index 3d888ad..68a8ee2 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoIs.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoIs.go
@@ -156,9 +156,6 @@ func BACnetUnconfirmedServiceRequestWhoIsParse(io *utils.ReadBuffer) (*BACnetUnc
 		}
 		deviceInstanceRangeLowLimit[curItem] = _item
 	}
-	if len(deviceInstanceRangeLowLimit) == 0 {
-		deviceInstanceRangeLowLimit = nil
-	}
 
 	// Const Field (deviceInstanceRangeHighLimitHeader)
 	deviceInstanceRangeHighLimitHeader, _deviceInstanceRangeHighLimitHeaderErr := io.ReadUint8(5)
@@ -185,9 +182,6 @@ func BACnetUnconfirmedServiceRequestWhoIsParse(io *utils.ReadBuffer) (*BACnetUnc
 		}
 		deviceInstanceRangeHighLimit[curItem] = _item
 	}
-	if len(deviceInstanceRangeHighLimit) == 0 {
-		deviceInstanceRangeHighLimit = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &BACnetUnconfirmedServiceRequestWhoIs{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BVLCForwardedNPDU.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BVLCForwardedNPDU.go
index 14501f8..267d93d 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BVLCForwardedNPDU.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BVLCForwardedNPDU.go
@@ -121,9 +121,6 @@ func BVLCForwardedNPDUParse(io *utils.ReadBuffer, bvlcLength uint16) (*BVLC, err
 		}
 		ip[curItem] = _item
 	}
-	if len(ip) == 0 {
-		ip = nil
-	}
 
 	// Simple Field (port)
 	port, _portErr := io.ReadUint16(16)
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMIAmRouterToNetwork.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMIAmRouterToNetwork.go
index 5333a86..a4af18f 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMIAmRouterToNetwork.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMIAmRouterToNetwork.go
@@ -114,9 +114,6 @@ func NLMIAmRouterToNetworkParse(io *utils.ReadBuffer, apduLength uint16, message
 		}
 		destinationNetworkAddress = append(destinationNetworkAddress, _item)
 	}
-	if len(destinationNetworkAddress) == 0 {
-		destinationNetworkAddress = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &NLMIAmRouterToNetwork{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMWhoIsRouterToNetwork.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMWhoIsRouterToNetwork.go
index ba14ca4..ddd3862 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMWhoIsRouterToNetwork.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/NLMWhoIsRouterToNetwork.go
@@ -114,9 +114,6 @@ func NLMWhoIsRouterToNetworkParse(io *utils.ReadBuffer, apduLength uint16, messa
 		}
 		destinationNetworkAddress = append(destinationNetworkAddress, _item)
 	}
-	if len(destinationNetworkAddress) == 0 {
-		destinationNetworkAddress = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &NLMWhoIsRouterToNetwork{
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/NPDU.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/NPDU.go
index 83471f0..b5658a2 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/NPDU.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/NPDU.go
@@ -253,9 +253,6 @@ func NPDUParse(io *utils.ReadBuffer, npduLength uint16) (*NPDU, error) {
 		}
 		destinationAddress[curItem] = _item
 	}
-	if len(destinationAddress) == 0 {
-		destinationAddress = nil
-	}
 
 	// Optional Field (sourceNetworkAddress) (Can be skipped, if a given expression evaluates to false)
 	var sourceNetworkAddress *uint16 = nil
@@ -287,9 +284,6 @@ func NPDUParse(io *utils.ReadBuffer, npduLength uint16) (*NPDU, error) {
 		}
 		sourceAddress[curItem] = _item
 	}
-	if len(sourceAddress) == 0 {
-		sourceAddress = nil
-	}
 
 	// Optional Field (hopCount) (Can be skipped, if a given expression evaluates to false)
 	var hopCount *uint8 = nil
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataDeviceDescriptorResponse.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataDeviceDescriptorResponse.go
index c5e1ee1..912fe0c 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataDeviceDescriptorResponse.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataDeviceDescriptorResponse.go
@@ -124,9 +124,6 @@ func ApduDataDeviceDescriptorResponseParse(io *utils.ReadBuffer, dataLength uint
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataDeviceDescriptorResponse{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtAuthorizeRequest.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtAuthorizeRequest.go
index 392ea5e..aab3284 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtAuthorizeRequest.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtAuthorizeRequest.go
@@ -122,9 +122,6 @@ func ApduDataExtAuthorizeRequestParse(io *utils.ReadBuffer) (*ApduDataExt, error
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataExtAuthorizeRequest{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueResponse.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueResponse.go
index f3cd9a7..cc921a4 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueResponse.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueResponse.go
@@ -155,9 +155,6 @@ func ApduDataExtPropertyValueResponseParse(io *utils.ReadBuffer, length uint8) (
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataExtPropertyValueResponse{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueWrite.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueWrite.go
index 66d9531..87e01e1 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueWrite.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataExtPropertyValueWrite.go
@@ -155,9 +155,6 @@ func ApduDataExtPropertyValueWriteParse(io *utils.ReadBuffer, length uint8) (*Ap
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataExtPropertyValueWrite{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueResponse.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueResponse.go
index 7938503..0b7aded 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueResponse.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueResponse.go
@@ -124,9 +124,6 @@ func ApduDataGroupValueResponseParse(io *utils.ReadBuffer, dataLength uint8) (*A
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataGroupValueResponse{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueWrite.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueWrite.go
index 1135249..9048312 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueWrite.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataGroupValueWrite.go
@@ -124,9 +124,6 @@ func ApduDataGroupValueWriteParse(io *utils.ReadBuffer, dataLength uint8) (*Apdu
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataGroupValueWrite{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataMemoryResponse.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataMemoryResponse.go
index be7d32c..e7483f5 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataMemoryResponse.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ApduDataMemoryResponse.go
@@ -132,9 +132,6 @@ func ApduDataMemoryResponseParse(io *utils.ReadBuffer) (*ApduData, error) {
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ApduDataMemoryResponse{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType1.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType1.go
index de4e299..025404f 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType1.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType1.go
@@ -135,9 +135,6 @@ func ComObjectTableRealisationType1Parse(io *utils.ReadBuffer) (*ComObjectTable,
 		}
 		comObjectDescriptors[curItem] = _item
 	}
-	if len(comObjectDescriptors) == 0 {
-		comObjectDescriptors = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ComObjectTableRealisationType1{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType2.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType2.go
index 5db480f..fed5886 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType2.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/ComObjectTableRealisationType2.go
@@ -135,9 +135,6 @@ func ComObjectTableRealisationType2Parse(io *utils.ReadBuffer) (*ComObjectTable,
 		}
 		comObjectDescriptors[curItem] = _item
 	}
-	if len(comObjectDescriptors) == 0 {
-		comObjectDescriptors = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ComObjectTableRealisationType2{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBDeviceInfo.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBDeviceInfo.go
index 4a65741..a1a48ef 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBDeviceInfo.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBDeviceInfo.go
@@ -165,9 +165,6 @@ func DIBDeviceInfoParse(io *utils.ReadBuffer) (*DIBDeviceInfo, error) {
 		}
 		knxNetIpDeviceSerialNumber[curItem] = _item
 	}
-	if len(knxNetIpDeviceSerialNumber) == 0 {
-		knxNetIpDeviceSerialNumber = nil
-	}
 
 	// Simple Field (knxNetIpDeviceMulticastAddress)
 	knxNetIpDeviceMulticastAddress, _knxNetIpDeviceMulticastAddressErr := IPAddressParse(io)
@@ -191,9 +188,6 @@ func DIBDeviceInfoParse(io *utils.ReadBuffer) (*DIBDeviceInfo, error) {
 		}
 		deviceFriendlyName[curItem] = _item
 	}
-	if len(deviceFriendlyName) == 0 {
-		deviceFriendlyName = nil
-	}
 
 	// Create the instance
 	return NewDIBDeviceInfo(descriptionType, knxMedium, deviceStatus, knxAddress, projectInstallationIdentifier, knxNetIpDeviceSerialNumber, knxNetIpDeviceMulticastAddress, knxNetIpDeviceMacAddress, deviceFriendlyName), nil
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBSuppSvcFamilies.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBSuppSvcFamilies.go
index d8e6180..5073a51 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBSuppSvcFamilies.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/DIBSuppSvcFamilies.go
@@ -113,9 +113,6 @@ func DIBSuppSvcFamiliesParse(io *utils.ReadBuffer) (*DIBSuppSvcFamilies, error)
 		}
 		serviceIds = append(serviceIds, _item)
 	}
-	if len(serviceIds) == 0 {
-		serviceIds = nil
-	}
 
 	// Create the instance
 	return NewDIBSuppSvcFamilies(descriptionType, serviceIds), nil
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/IPAddress.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/IPAddress.go
index 25aa17c..0c7a0e0 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/IPAddress.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/IPAddress.go
@@ -91,9 +91,6 @@ func IPAddressParse(io *utils.ReadBuffer) (*IPAddress, error) {
 		}
 		addr[curItem] = _item
 	}
-	if len(addr) == 0 {
-		addr = nil
-	}
 
 	// Create the instance
 	return NewIPAddress(addr), nil
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/LBusmonInd.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/LBusmonInd.go
index 93f608a..0c921c1 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/LBusmonInd.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/LBusmonInd.go
@@ -139,9 +139,6 @@ func LBusmonIndParse(io *utils.ReadBuffer) (*CEMI, error) {
 		}
 		additionalInformation = append(additionalInformation, _item)
 	}
-	if len(additionalInformation) == 0 {
-		additionalInformation = nil
-	}
 
 	// Simple Field (dataFrame)
 	dataFrame, _dataFrameErr := LDataFrameParse(io)
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataCon.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataCon.go
index 0e15259..7539132 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataCon.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataCon.go
@@ -131,9 +131,6 @@ func LDataConParse(io *utils.ReadBuffer) (*CEMI, error) {
 		}
 		additionalInformation = append(additionalInformation, _item)
 	}
-	if len(additionalInformation) == 0 {
-		additionalInformation = nil
-	}
 
 	// Simple Field (dataFrame)
 	dataFrame, _dataFrameErr := LDataFrameParse(io)
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataExtended.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataExtended.go
index 92debce..69d95a3 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataExtended.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataExtended.go
@@ -174,9 +174,6 @@ func LDataExtendedParse(io *utils.ReadBuffer) (*LDataFrame, error) {
 		}
 		destinationAddress[curItem] = _item
 	}
-	if len(destinationAddress) == 0 {
-		destinationAddress = nil
-	}
 
 	// Implicit Field (dataLength) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
 	dataLength, _dataLengthErr := io.ReadUint8(8)
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataInd.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataInd.go
index 2c45b76..def4be1 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataInd.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataInd.go
@@ -131,9 +131,6 @@ func LDataIndParse(io *utils.ReadBuffer) (*CEMI, error) {
 		}
 		additionalInformation = append(additionalInformation, _item)
 	}
-	if len(additionalInformation) == 0 {
-		additionalInformation = nil
-	}
 
 	// Simple Field (dataFrame)
 	dataFrame, _dataFrameErr := LDataFrameParse(io)
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataReq.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataReq.go
index 06eadc5..c9c7b50 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataReq.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/LDataReq.go
@@ -131,9 +131,6 @@ func LDataReqParse(io *utils.ReadBuffer) (*CEMI, error) {
 		}
 		additionalInformation = append(additionalInformation, _item)
 	}
-	if len(additionalInformation) == 0 {
-		additionalInformation = nil
-	}
 
 	// Simple Field (dataFrame)
 	dataFrame, _dataFrameErr := LDataFrameParse(io)
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/LPollData.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/LPollData.go
index 8714dce..ddf05d0 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/LPollData.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/LPollData.go
@@ -142,9 +142,6 @@ func LPollDataParse(io *utils.ReadBuffer) (*LDataFrame, error) {
 		}
 		targetAddress[curItem] = _item
 	}
-	if len(targetAddress) == 0 {
-		targetAddress = nil
-	}
 
 	// Reserved Field (Compartmentalized so the "reserved" variable can't leak)
 	{
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/MACAddress.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/MACAddress.go
index 430e049..ee3fb3f 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/MACAddress.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/MACAddress.go
@@ -91,9 +91,6 @@ func MACAddressParse(io *utils.ReadBuffer) (*MACAddress, error) {
 		}
 		addr[curItem] = _item
 	}
-	if len(addr) == 0 {
-		addr = nil
-	}
 
 	// Create the instance
 	return NewMACAddress(addr), nil
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/UnknownMessage.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/UnknownMessage.go
index e3ddeb0..002413b 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/UnknownMessage.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/UnknownMessage.go
@@ -113,9 +113,6 @@ func UnknownMessageParse(io *utils.ReadBuffer, totalLength uint16) (*KnxNetIpMes
 		}
 		unknownData[curItem] = _item
 	}
-	if len(unknownData) == 0 {
-		unknownData = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &UnknownMessage{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUGetComEventLogResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUGetComEventLogResponse.go
index 22182ad..aab73df 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUGetComEventLogResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUGetComEventLogResponse.go
@@ -164,9 +164,6 @@ func ModbusPDUGetComEventLogResponseParse(io *utils.ReadBuffer) (*ModbusPDU, err
 		}
 		events[curItem] = _item
 	}
-	if len(events) == 0 {
-		events = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUGetComEventLogResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadCoilsResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadCoilsResponse.go
index 1d54f45..7b84bab 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadCoilsResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadCoilsResponse.go
@@ -131,9 +131,6 @@ func ModbusPDUReadCoilsResponseParse(io *utils.ReadBuffer) (*ModbusPDU, error) {
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadCoilsResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadDiscreteInputsResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadDiscreteInputsResponse.go
index a7e0aed..a8d242f 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadDiscreteInputsResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadDiscreteInputsResponse.go
@@ -131,9 +131,6 @@ func ModbusPDUReadDiscreteInputsResponseParse(io *utils.ReadBuffer) (*ModbusPDU,
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadDiscreteInputsResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFifoQueueResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFifoQueueResponse.go
index 62fd67a..9e54b79 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFifoQueueResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFifoQueueResponse.go
@@ -139,9 +139,6 @@ func ModbusPDUReadFifoQueueResponseParse(io *utils.ReadBuffer) (*ModbusPDU, erro
 		}
 		fifoValue[curItem] = _item
 	}
-	if len(fifoValue) == 0 {
-		fifoValue = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadFifoQueueResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordRequest.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordRequest.go
index acc952a..1c803fd 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordRequest.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordRequest.go
@@ -133,9 +133,6 @@ func ModbusPDUReadFileRecordRequestParse(io *utils.ReadBuffer) (*ModbusPDU, erro
 		}
 		items = append(items, _item)
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadFileRecordRequest{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponse.go
index efede78..9af06cd 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponse.go
@@ -133,9 +133,6 @@ func ModbusPDUReadFileRecordResponseParse(io *utils.ReadBuffer) (*ModbusPDU, err
 		}
 		items = append(items, _item)
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadFileRecordResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go
index 7398332..1db3aad 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go
@@ -113,9 +113,6 @@ func ModbusPDUReadFileRecordResponseItemParse(io *utils.ReadBuffer) (*ModbusPDUR
 		}
 		data = append(data, _item)
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create the instance
 	return NewModbusPDUReadFileRecordResponseItem(referenceType, data), nil
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadHoldingRegistersResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadHoldingRegistersResponse.go
index 12e9b3d..1cf291e 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadHoldingRegistersResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadHoldingRegistersResponse.go
@@ -131,9 +131,6 @@ func ModbusPDUReadHoldingRegistersResponseParse(io *utils.ReadBuffer) (*ModbusPD
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadHoldingRegistersResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadInputRegistersResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadInputRegistersResponse.go
index e8468ca..5105ce5 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadInputRegistersResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadInputRegistersResponse.go
@@ -131,9 +131,6 @@ func ModbusPDUReadInputRegistersResponseParse(io *utils.ReadBuffer) (*ModbusPDU,
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadInputRegistersResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersRequest.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersRequest.go
index aec6d2b..3f02406 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersRequest.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersRequest.go
@@ -175,9 +175,6 @@ func ModbusPDUReadWriteMultipleHoldingRegistersRequestParse(io *utils.ReadBuffer
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadWriteMultipleHoldingRegistersRequest{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersResponse.go
index ecb059f..b379eda 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReadWriteMultipleHoldingRegistersResponse.go
@@ -131,9 +131,6 @@ func ModbusPDUReadWriteMultipleHoldingRegistersResponseParse(io *utils.ReadBuffe
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReadWriteMultipleHoldingRegistersResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReportServerIdResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReportServerIdResponse.go
index 4552f01..24de097 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReportServerIdResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUReportServerIdResponse.go
@@ -131,9 +131,6 @@ func ModbusPDUReportServerIdResponseParse(io *utils.ReadBuffer) (*ModbusPDU, err
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUReportServerIdResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequest.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequest.go
index f7abb71..b3a1abc 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequest.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequest.go
@@ -133,9 +133,6 @@ func ModbusPDUWriteFileRecordRequestParse(io *utils.ReadBuffer) (*ModbusPDU, err
 		}
 		items = append(items, _item)
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUWriteFileRecordRequest{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go
index ae01cf5..d528a77 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go
@@ -133,9 +133,6 @@ func ModbusPDUWriteFileRecordRequestItemParse(io *utils.ReadBuffer) (*ModbusPDUW
 		}
 		recordData = append(recordData, _item)
 	}
-	if len(recordData) == 0 {
-		recordData = nil
-	}
 
 	// Create the instance
 	return NewModbusPDUWriteFileRecordRequestItem(referenceType, fileNumber, recordNumber, recordData), nil
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponse.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponse.go
index 485bba9..48e777b 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponse.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponse.go
@@ -133,9 +133,6 @@ func ModbusPDUWriteFileRecordResponseParse(io *utils.ReadBuffer) (*ModbusPDU, er
 		}
 		items = append(items, _item)
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUWriteFileRecordResponse{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go
index db7248f..8938d5a 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go
@@ -133,9 +133,6 @@ func ModbusPDUWriteFileRecordResponseItemParse(io *utils.ReadBuffer) (*ModbusPDU
 		}
 		recordData = append(recordData, _item)
 	}
-	if len(recordData) == 0 {
-		recordData = nil
-	}
 
 	// Create the instance
 	return NewModbusPDUWriteFileRecordResponseItem(referenceType, fileNumber, recordNumber, recordData), nil
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleCoilsRequest.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleCoilsRequest.go
index 9945e19..ecd37ec 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleCoilsRequest.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleCoilsRequest.go
@@ -153,9 +153,6 @@ func ModbusPDUWriteMultipleCoilsRequestParse(io *utils.ReadBuffer) (*ModbusPDU,
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUWriteMultipleCoilsRequest{
diff --git a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleHoldingRegistersRequest.go b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleHoldingRegistersRequest.go
index 9618fbe..8dd6861 100644
--- a/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleHoldingRegistersRequest.go
+++ b/plc4go/internal/plc4go/modbus/readwrite/model/ModbusPDUWriteMultipleHoldingRegistersRequest.go
@@ -153,9 +153,6 @@ func ModbusPDUWriteMultipleHoldingRegistersRequestParse(io *utils.ReadBuffer) (*
 		}
 		value[curItem] = _item
 	}
-	if len(value) == 0 {
-		value = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &ModbusPDUWriteMultipleHoldingRegistersRequest{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/COTPPacket.go b/plc4go/internal/plc4go/s7/readwrite/model/COTPPacket.go
index 0bbe1a7..580c897 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/COTPPacket.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/COTPPacket.go
@@ -164,9 +164,6 @@ func COTPPacketParse(io *utils.ReadBuffer, cotpLen uint16) (*COTPPacket, error)
 		parameters = append(parameters, _item)
 		curPos = io.GetPos() - startPos
 	}
-	if len(parameters) == 0 {
-		parameters = nil
-	}
 
 	// Optional Field (payload) (Can be skipped, if a given expression evaluates to false)
 	curPos = io.GetPos() - startPos
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/COTPParameterDisconnectAdditionalInformation.go b/plc4go/internal/plc4go/s7/readwrite/model/COTPParameterDisconnectAdditionalInformation.go
index 4cb3d1e..cba5e4e 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/COTPParameterDisconnectAdditionalInformation.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/COTPParameterDisconnectAdditionalInformation.go
@@ -111,9 +111,6 @@ func COTPParameterDisconnectAdditionalInformationParse(io *utils.ReadBuffer, res
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &COTPParameterDisconnectAdditionalInformation{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterReadVarRequest.go b/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterReadVarRequest.go
index 5592b8d..2f5c867 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterReadVarRequest.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterReadVarRequest.go
@@ -127,9 +127,6 @@ func S7ParameterReadVarRequestParse(io *utils.ReadBuffer) (*S7Parameter, error)
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7ParameterReadVarRequest{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterUserData.go b/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterUserData.go
index 45321c9..e238834 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterUserData.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterUserData.go
@@ -127,9 +127,6 @@ func S7ParameterUserDataParse(io *utils.ReadBuffer) (*S7Parameter, error) {
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7ParameterUserData{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterWriteVarRequest.go b/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterWriteVarRequest.go
index 434bbff..c81d94a 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterWriteVarRequest.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7ParameterWriteVarRequest.go
@@ -127,9 +127,6 @@ func S7ParameterWriteVarRequestParse(io *utils.ReadBuffer) (*S7Parameter, error)
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7ParameterWriteVarRequest{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadReadVarResponse.go b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadReadVarResponse.go
index 981e0eb..46dcd6f 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadReadVarResponse.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadReadVarResponse.go
@@ -118,9 +118,6 @@ func S7PayloadReadVarResponseParse(io *utils.ReadBuffer, parameter *S7Parameter)
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7PayloadReadVarResponse{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserData.go b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserData.go
index 8d152ef..8f2b806 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserData.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserData.go
@@ -117,9 +117,6 @@ func S7PayloadUserDataParse(io *utils.ReadBuffer, parameter *S7Parameter) (*S7Pa
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7PayloadUserData{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionReadSzlResponse.go b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionReadSzlResponse.go
index cb2d082..7be99be 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionReadSzlResponse.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionReadSzlResponse.go
@@ -143,9 +143,6 @@ func S7PayloadUserDataItemCpuFunctionReadSzlResponseParse(io *utils.ReadBuffer)
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7PayloadUserDataItemCpuFunctionReadSzlResponse{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarRequest.go b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarRequest.go
index 6d720b8..4a08af9 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarRequest.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarRequest.go
@@ -118,9 +118,6 @@ func S7PayloadWriteVarRequestParse(io *utils.ReadBuffer, parameter *S7Parameter)
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7PayloadWriteVarRequest{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarResponse.go b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarResponse.go
index 0352e6e..332299b 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarResponse.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadWriteVarResponse.go
@@ -117,9 +117,6 @@ func S7PayloadWriteVarResponseParse(io *utils.ReadBuffer, parameter *S7Parameter
 		}
 		items[curItem] = _item
 	}
-	if len(items) == 0 {
-		items = nil
-	}
 
 	// Create a partially initialized instance
 	_child := &S7PayloadWriteVarResponse{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7VarPayloadDataItem.go b/plc4go/internal/plc4go/s7/readwrite/model/S7VarPayloadDataItem.go
index f57553a..d4ffde4 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7VarPayloadDataItem.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7VarPayloadDataItem.go
@@ -128,9 +128,6 @@ func S7VarPayloadDataItemParse(io *utils.ReadBuffer, lastItem bool) (*S7VarPaylo
 		}
 		data[curItem] = _item
 	}
-	if len(data) == 0 {
-		data = nil
-	}
 
 	// Padding Field (padding)
 	{
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/SzlDataTreeItem.go b/plc4go/internal/plc4go/s7/readwrite/model/SzlDataTreeItem.go
index 603c1de..9072ee2 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/SzlDataTreeItem.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/SzlDataTreeItem.go
@@ -113,9 +113,6 @@ func SzlDataTreeItemParse(io *utils.ReadBuffer) (*SzlDataTreeItem, error) {
 		}
 		mlfb[curItem] = _item
 	}
-	if len(mlfb) == 0 {
-		mlfb = nil
-	}
 
 	// Simple Field (moduleTypeId)
 	moduleTypeId, _moduleTypeIdErr := io.ReadUint16(16)