In This Topic
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: MusicStore.xsd
'**********************************************************************************************
Namespace MusicStoreLib
''' <summary>
''' This class represents the ComplexType AlbumType
''' </summary>
<LiquidTechnologies.Runtime.XmlObjectInfo(LiquidTechnologies.Runtime.XmlObjectBase.XmlElementGroupType.Sequence, _
LiquidTechnologies.Runtime.XmlObjectBase.XmlElementType.Element, _
"AlbumType", "", true, false, 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 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 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.AttributeInfoPrimitive("Label", "", LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _
Public Property Label() As String
Get
Return _Label
End Get
Set(ByVal value As String)
' Apply whitespace rules appropriately
value = LiquidTechnologies.Runtime.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.AttributeInfoPrimitive("RRP", "", True, LiquidTechnologies.Runtime.Conversions.ConversionType.type_r8, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Collapse, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _
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.AttributeInfoPrimitive("ProductCode", "", LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", 15, -1, -1, Nothing)> _
Public Property ProductCode() As String
Get
Return _ProductCode
End Get
Set(ByVal value As String)
' Apply whitespace rules appropriately
value = LiquidTechnologies.Runtime.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.ElementInfoSeqPrimMnd("AlbumName", "", Nothing, LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _
Public Property AlbumName() As String
Get
Return _AlbumName
End Get
Set(ByVal value As String)
' Apply whitespace rules appropriately
value = LiquidTechnologies.Runtime.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.ElementInfoSeqPrimMnd("ArtistName", "", Nothing, LiquidTechnologies.Runtime.Conversions.ConversionType.type_string, Nothing, LiquidTechnologies.Runtime.WhitespaceUtils.WhitespaceRule.Preserve, "", -1, -1, "", "", "", "", -1, -1, -1, Nothing)> _
Public Property ArtistName() As String
Get
Return _ArtistName
End Get
Set(ByVal value As String)
' Apply whitespace rules appropriately
value = LiquidTechnologies.Runtime.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.ElementInfoSeqClsCol("Track", "", LiquidTechnologies.Runtime.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.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