Option Explicit On Option Strict On Imports System Imports System.Xml '********************************************************************************************** '* Copyright (c) 2001-2023 Liquid Technologies Limited. All rights reserved. '* See www.liquid-technologies.com for product details. '* '* Please see products End User License Agreement for distribution permissions. '* '* WARNING: THIS FILE IS GENERATED '* Changes made outside of ##HAND_CODED_BLOCK_START blocks will be overwritten '* '* Generation : by Liquid XML Data Binder 19.0.14.11049 '* Using Schema: Cardinality.xsd '********************************************************************************************** Namespace CardinalityLib ''' <summary> ''' This class represents the Element MyRootObject ''' </summary> <LiquidTechnologies.Runtime.XmlObjectInfo(LiquidTechnologies.Runtime.XmlObjectBase.XmlElementGroupType.Sequence, _ LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, _ "MyRootObject", "", true, false, false)> _ Public Partial Class MyRootObject Inherits CardinalityLib.XmlCommonBase #Region "Constructors" ''' <summary> ''' Constructor for MyRootObject ''' </summary> ''' <remarks> ''' The class is created with all the mandatory fields populated with the ''' default data. ''' All Collection object are created. ''' However any 1-n relationships (these are represented as collections) are ''' empty. To comply with the schema these must be populated before the xml ''' obtained from ToXml is valid against the schema Cardinality.xsd ''' </remarks> Public Sub New() _elementName = "MyRootObject" Init() End Sub Public Sub New(ByVal elementName As String) _elementName = elementName Init() End Sub #End Region #Region "Initialization methods for the class" ''' <summary> ''' Initializes the class ''' </summary> ''' <remarks> ''' This creates all the mandatory fields (populated with the default data) ''' All Collection object are created. ''' However any 1-n relationships (these are represented as collections) are ''' empty. To comply with the schema these must be populated before the xml ''' obtained from ToXml is valid against the schema Cardinality.xsd. ''' </remarks> Protected Overrides Sub Init() CardinalityLib.Registration.iRegistrationIndicator = 0 ' causes registration to take place _ASimpleStringMandatoryElement = "" _ASimpleDateMandatoryElement = New LiquidTechnologies.Runtime.XmlDateTime(LiquidTechnologies.Runtime.XmlDateTime.DateType.date) _AComplexMandatoryElement = new CardinalityLib.AComplexMandatoryElement("AComplexMandatoryElement") _ASimpleStringOptionalElement = Nothing _ASimpleDateOptionalElement = Nothing _AComplexOptionalElement = Nothing _ASimpleStringCollectionElement = new CardinalityLib.XmlSimpleTypeCollection(Of String)("ASimpleStringCollectionElement", "", LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, 0, -1, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, new LiquidTechnologies.Runtime.PrimitiveRestrictions("", -1, -1, "", "", "", "", -1, -1, -1)) _ASimpleDateCollectionElement = new CardinalityLib.XmlSimpleTypeCollection(Of LiquidTechnologies.Runtime.XmlDateTime)("ASimpleDateCollectionElement", "", LiquidTechnologies.Runtime.Conversions.ConversionType.type_date, 0, -1, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Collapse, new LiquidTechnologies.Runtime.PrimitiveRestrictions("", -1, -1, "", "", "", "", -1, -1, -1)) _AComplexCollectionElement = new CardinalityLib.XmlObjectCollection(Of CardinalityLib.AComplexCollectionElement)("AComplexCollectionElement", "", 0, -1, false) ' ##HAND_CODED_BLOCK_START ID="Additional Inits"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS ' Add Additional initialization code here... ' ##HAND_CODED_BLOCK_END ID="Additional Inits"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS End Sub #End Region #Region "ICloneable Interface" ''' <summary> ''' Allows the class to be copied ''' </summary> ''' <remarks> ''' Performs a 'deep copy' of all the data in the class (and its children) ''' </remarks> Public Overrides Function Clone() As Object Dim newObject As New CardinalityLib.MyRootObject(_elementName) Dim o As Object newObject._ASimpleStringMandatoryElement = _ASimpleStringMandatoryElement newObject._ASimpleDateMandatoryElement = CType(_ASimpleDateMandatoryElement.Clone(), LiquidTechnologies.Runtime.XmlDateTime) newObject._AComplexMandatoryElement = Nothing If Not _AComplexMandatoryElement Is Nothing Then newObject._AComplexMandatoryElement = CType(_AComplexMandatoryElement.Clone(), CardinalityLib.AComplexMandatoryElement) End If newObject._ASimpleStringOptionalElement = _ASimpleStringOptionalElement If _ASimpleDateOptionalElement Is Nothing Then newObject._ASimpleDateOptionalElement = Nothing Else newObject._ASimpleDateOptionalElement = CType(_ASimpleDateOptionalElement.Clone(), LiquidTechnologies.Runtime.XmlDateTime) End If newObject._AComplexOptionalElement = Nothing if Not _AComplexOptionalElement Is Nothing Then newObject._AComplexOptionalElement = CType(_AComplexOptionalElement.Clone(), CardinalityLib.AComplexOptionalElement) End If For Each o in _ASimpleStringCollectionElement newObject._ASimpleStringCollectionElement.Add(CType(o, String)) Next o For Each o in _ASimpleDateCollectionElement newObject._ASimpleDateCollectionElement.Add(CType(CType(o, LiquidTechnologies.Runtime.XmlDateTime).Clone(), LiquidTechnologies.Runtime.XmlDateTime)) Next o For Each o In _AComplexCollectionElement newObject._AComplexCollectionElement.Add(CType(CType(o, CardinalityLib.AComplexCollectionElement).Clone(), CardinalityLib.AComplexCollectionElement)) Next o o = Nothing ' ##HAND_CODED_BLOCK_START ID="Additional clone"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS ' Add Additional clone code here... ' ##HAND_CODED_BLOCK_END ID="Additional clone"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS Return newObject End Function #End Region #Region "Member variables" Protected Overrides Readonly Property TargetNamespace() As String Get Return "" End Get End Property #Region "Attribute - ASimpleStringMandatoryElement" ''' <summary> ''' Represents a mandatory Element in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' It is mandatory and therefore must be populated within the XML. ''' It is defaulted to "". ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqPrimMnd("ASimpleStringMandatoryElement", "", Nothing, LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _ Public Property ASimpleStringMandatoryElement() As String Get Return _ASimpleStringMandatoryElement End Get Set(ByVal value As String) ' Apply whitespace rules appropriately value = LiquidTechnologies.Runtime.WhitespaceUtils.Preserve(value) _ASimpleStringMandatoryElement = value End Set End Property Protected _ASimpleStringMandatoryElement As String #End Region #Region "Attribute - ASimpleDateMandatoryElement" ''' <summary> ''' Represents a mandatory Element in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' It is mandatory and therefore must be populated within the XML. ''' It is defaulted to New LiquidTechnologies.Runtime.XmlDateTime(LiquidTechnologies.Runtime.XmlDateTime.DateType.date). ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqPrimMnd("ASimpleDateMandatoryElement", "", Nothing, LiquidTechnologies.Runtime.Conversions.ConversionType.type_date, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Collapse, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _ Public Property ASimpleDateMandatoryElement() As LiquidTechnologies.Runtime.XmlDateTime Get Return _ASimpleDateMandatoryElement End Get Set(ByVal value As LiquidTechnologies.Runtime.XmlDateTime) _ASimpleDateMandatoryElement.SetDateTime(value, _ASimpleDateMandatoryElement.Type) End Set End Property Protected _ASimpleDateMandatoryElement As LiquidTechnologies.Runtime.XmlDateTime #End Region #Region "Attribute - AComplexMandatoryElement" ''' <summary> ''' Represents a mandatory Element in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' It is mandatory and therefore must be populated within the XML. ''' If this property is set, then the object will be COPIED. If the property is set to Nothing an exception is raised. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqClsMnd("AComplexMandatoryElement", "", LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, GetType(CardinalityLib.AComplexMandatoryElement), true)> _ Public Property AComplexMandatoryElement() As CardinalityLib.AComplexMandatoryElement Get Return _AComplexMandatoryElement End Get Set(ByVal value As CardinalityLib.AComplexMandatoryElement) Throw_IfPropertyIsNull(value, "AComplexMandatoryElement") If Not value Is Nothing Then SetElementName(value, "AComplexMandatoryElement") End If _AComplexMandatoryElement = value End Set End Property Protected _AComplexMandatoryElement As CardinalityLib.AComplexMandatoryElement #End Region #Region "Attribute - ASimpleStringOptionalElement" ''' <summary> ''' Represents an optional Element in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' It is optional, initially it is not valid. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqPrimOpt("ASimpleStringOptionalElement", "", True, Nothing, LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _ Public Property ASimpleStringOptionalElement() As String Get Return _ASimpleStringOptionalElement End Get Set(ByVal value As String) If value Is Nothing Then _ASimpleStringOptionalElement = Nothing Else ' Apply whitespace rules appropriately value = LiquidTechnologies.Runtime.WhitespaceUtils.Preserve(value) _ASimpleStringOptionalElement = value End If End Set End Property Protected _ASimpleStringOptionalElement As String #End Region #Region "Attribute - ASimpleDateOptionalElement" ''' <summary> ''' Represents an optional Element in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' It is optional, initially it is not valid. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqPrimOpt("ASimpleDateOptionalElement", "", True, Nothing, LiquidTechnologies.Runtime.Conversions.ConversionType.type_date, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Collapse, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _ Public Property ASimpleDateOptionalElement() As LiquidTechnologies.Runtime.XmlDateTime Get Return _ASimpleDateOptionalElement End Get Set(ByVal value As LiquidTechnologies.Runtime.XmlDateTime) If value Is Nothing Then _ASimpleDateOptionalElement = Nothing Else If _ASimpleDateOptionalElement Is Nothing Then _ASimpleDateOptionalElement = New LiquidTechnologies.Runtime.XmlDateTime(LiquidTechnologies.Runtime.XmlDateTime.DateType.date) End If _ASimpleDateOptionalElement.SetDateTime(value, _ASimpleDateOptionalElement.Type) End If End Set End Property Protected _ASimpleDateOptionalElement As LiquidTechnologies.Runtime.XmlDateTime #End Region #Region "Attribute - AComplexOptionalElement" ''' <summary> ''' Represents an optional Element in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' It is optional, initially it is Nothing. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqClsOpt("AComplexOptionalElement", "", LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, GetType(CardinalityLib.AComplexOptionalElement))> _ Public Property AComplexOptionalElement() As CardinalityLib.AComplexOptionalElement Get Return _AComplexOptionalElement End Get Set(ByVal value As CardinalityLib.AComplexOptionalElement) If value Is Nothing Then _AComplexOptionalElement = Nothing Else SetElementName(value, "AComplexOptionalElement") _AComplexOptionalElement = value End If End Set End Property Protected _AComplexOptionalElement As CardinalityLib.AComplexOptionalElement #End Region #Region "Attribute - ASimpleStringCollectionElement" ''' <summary> ''' A collection of Strings ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' This collection may contain 0 to Many Strings. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqPrimCol("ASimpleStringCollectionElement", "")> _ Public Readonly Property ASimpleStringCollectionElement() As CardinalityLib.XmlSimpleTypeCollection(Of String) Get Return _ASimpleStringCollectionElement End Get End Property Protected _ASimpleStringCollectionElement As CardinalityLib.XmlSimpleTypeCollection(Of String) #End Region #Region "Attribute - ASimpleDateCollectionElement" ''' <summary> ''' A collection of LiquidTechnologies.Runtime.XmlDateTimes ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' This collection may contain 0 to Many LiquidTechnologies.Runtime.XmlDateTimes. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqPrimCol("ASimpleDateCollectionElement", "")> _ Public Readonly Property ASimpleDateCollectionElement() As CardinalityLib.XmlSimpleTypeCollection(Of LiquidTechnologies.Runtime.XmlDateTime) Get Return _ASimpleDateCollectionElement End Get End Property Protected _ASimpleDateCollectionElement As CardinalityLib.XmlSimpleTypeCollection(Of LiquidTechnologies.Runtime.XmlDateTime) #End Region #Region "Attribute - AComplexCollectionElement" ''' <summary> ''' A collection of AComplexCollectionElements ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' This collection may contain 0 to Many objects. ''' </remarks> <LiquidTechnologies.Runtime.ElementInfoSeqClsCol("AComplexCollectionElement", "", LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element)> _ Public Readonly Property AComplexCollectionElement() As CardinalityLib.XmlObjectCollection(Of CardinalityLib.AComplexCollectionElement) Get Return _AComplexCollectionElement End Get End Property Protected _AComplexCollectionElement As CardinalityLib.XmlObjectCollection(Of CardinalityLib.AComplexCollectionElement) #End Region #Region "Attribute - Namespace" Public Overrides Readonly Property [Namespace]() As String Get Return "" End Get End Property #End Region #Region "Attribute - GetBase" Public Overrides Function GetBase() As LiquidTechnologies.Runtime.XmlObjectBase Return Me End Function #End Region #End Region ' ##HAND_CODED_BLOCK_START ID="Additional Methods"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS ' Add Additional Methods and members here... ' ##HAND_CODED_BLOCK_END ID="Additional Methods"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS End Class End Namespace