Option Explicit On Option Strict On Imports System Imports System.Xml '********************************************************************************************** '* Copyright (c) 2001-2018 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 16.0.2.8114 '* Using Schema: D:\Development2018\Liquid\Tools\DataBindingSamples\Samples\MusicStore\Schema\MusicStore.xsd '********************************************************************************************** Namespace MusicStoreLib ''' <summary> ''' This class represents the ComplexType AlbumType ''' </summary> <LiquidTechnologies.Runtime.Net45.XmlObjectInfo(LiquidTechnologies.Runtime.Net45.XmlObjectBase.XmlElementGroupType.Sequence, _ LiquidTechnologies.Runtime.Net45.XmlObjectBase.XmlElementType.Element, _ "AlbumType", "", true, false, _ LiquidTechnologies.Runtime.Net45.Conversions.ConversionType.type_none, Nothing, False)> _ Public Partial Class AlbumType Inherits MusicStoreLib.XmlCommonBase #Region "Constructors" ''' <summary> ''' Constructor for AlbumType ''' </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 D:\Development2018\Liquid\Tools\DataBindingSamples\Samples\MusicStore\Schema\MusicStore.xsd ''' </remarks> Public Sub New() _elementName = "AlbumType" 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 D:\Development2018\Liquid\Tools\DataBindingSamples\Samples\MusicStore\Schema\MusicStore.xsd. ''' </remarks> Protected Overrides Sub Init() MusicStoreLib.Registration.iRegistrationIndicator = 0 ' causes registration to take place _Label = "" _RRP = Nothing _ProductCode = "" _AlbumName = "" _ArtistName = "" _Track = new MusicStoreLib.XmlObjectCollection(Of MusicStoreLib.TrackType)("Track", "", 1, -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 MusicStoreLib.AlbumType(_elementName) Dim o As Object newObject._Label = _Label newObject._RRP = _RRP newObject._ProductCode = _ProductCode newObject._AlbumName = _AlbumName newObject._ArtistName = _ArtistName For Each o In _Track newObject._Track.Add(CType(CType(o, MusicStoreLib.TrackType).Clone(), MusicStoreLib.TrackType)) 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 - Label" ''' <summary> ''' Represents a mandatory Attribute in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Attribute in the XML. ''' It is mandatory and therefore must be populated within the XML. ''' It is defaulted to "". ''' </remarks> <LiquidTechnologies.Runtime.Net45.AttributeInfoPrimitive("Label", "", LiquidTechnologies.Runtime.Net45.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.Net45.WhitespaceUtils.WhitespaceRule.Preserve, Nothing, "", -1, -1, "", "", "", "", -1, -1, -1)> _ Public Property Label() As String Get Return _Label End Get Set(ByVal value As String) ' Apply whitespace rules appropriately value = LiquidTechnologies.Runtime.Net45.WhitespaceUtils.Preserve(value) _Label = value End Set End Property Protected _Label As String #End Region #Region "Attribute - RRP" ''' <summary> ''' Represents an optional Attribute in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Attribute in the XML. ''' It is optional, initially it is not valid. ''' </remarks> <LiquidTechnologies.Runtime.Net45.AttributeInfoPrimitive("RRP", "", True, LiquidTechnologies.Runtime.Net45.Conversions.ConversionType.type_r8, Nothing, LiquidTechnologies.Runtime.Net45.WhitespaceUtils.WhitespaceRule.Collapse, Nothing, "", -1, -1, "", "", "", "", -1, -1, -1)> _ Public Property RRP() As Double? Get Return _RRP End Get Set(ByVal value As Double?) If value Is Nothing Then _RRP = Nothing Else _RRP = value End If End Set End Property Protected _RRP As Double? #End Region #Region "Attribute - ProductCode" ''' <summary> ''' Represents a mandatory Attribute in the XML document ''' </summary> ''' <remarks> ''' This property is represented as an Attribute in the XML. ''' It is mandatory and therefore must be populated within the XML. ''' It is defaulted to "". ''' </remarks> <LiquidTechnologies.Runtime.Net45.AttributeInfoPrimitive("ProductCode", "", LiquidTechnologies.Runtime.Net45.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.Net45.WhitespaceUtils.WhitespaceRule.Preserve, Nothing, "", -1, -1, "", "", "", "", 15, -1, -1)> _ Public Property ProductCode() As String Get Return _ProductCode End Get Set(ByVal value As String) ' Apply whitespace rules appropriately value = LiquidTechnologies.Runtime.Net45.WhitespaceUtils.Preserve(value) CheckAttributeRestriction(2, value) _ProductCode = value End Set End Property Protected _ProductCode As String #End Region #Region "Attribute - AlbumName" ''' <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.Net45.ElementInfoSeqPrimMnd("AlbumName", "", Nothing, LiquidTechnologies.Runtime.Net45.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.Net45.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1)> _ Public Property AlbumName() As String Get Return _AlbumName End Get Set(ByVal value As String) ' Apply whitespace rules appropriately value = LiquidTechnologies.Runtime.Net45.WhitespaceUtils.Preserve(value) _AlbumName = value End Set End Property Protected _AlbumName As String #End Region #Region "Attribute - ArtistName" ''' <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.Net45.ElementInfoSeqPrimMnd("ArtistName", "", Nothing, LiquidTechnologies.Runtime.Net45.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.Net45.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1)> _ Public Property ArtistName() As String Get Return _ArtistName End Get Set(ByVal value As String) ' Apply whitespace rules appropriately value = LiquidTechnologies.Runtime.Net45.WhitespaceUtils.Preserve(value) _ArtistName = value End Set End Property Protected _ArtistName As String #End Region #Region "Attribute - Track" ''' <summary> ''' A collection of Tracks ''' </summary> ''' <remarks> ''' This property is represented as an Element in the XML. ''' This collection may contain 1 to Many objects. ''' </remarks> <LiquidTechnologies.Runtime.Net45.ElementInfoSeqClsCol("Track", "", LiquidTechnologies.Runtime.Net45.XmlObjectBase.XmlElementType.Element)> _ Public Readonly Property Track() As MusicStoreLib.XmlObjectCollection(Of MusicStoreLib.TrackType) Get Return _Track End Get End Property Protected _Track As MusicStoreLib.XmlObjectCollection(Of MusicStoreLib.TrackType) #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.Net45.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