VERSION 1.0 CLASS BEGIN MultiUse = -1 'True Persistable = 0 'NotPersistable DataBindingBehavior = 0 'vbNone DataSourceBehavior = 0 'vbNone MTSTransactionMode = 0 'NotAnMTSObject END Attribute VB_Name = "AlbumType" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = True Attribute VB_PredeclaredId = False Attribute VB_Exposed = True Option Explicit '********************************************************************************************** '* 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 '********************************************************************************************** Private m_ElementName As String Private mvarLabel As String Private mvarIsValidRRP As Boolean Private mvarRRP As Double Private mvarProductCode As String Private mvarAlbumName As String Private mvarArtistName As String Private WithEvents mvarTrack As MusicStoreLib.TrackTypeCol ' ##HAND_CODED_BLOCK_START ID="Additional Variable Declarations"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS ' Add Additional Variable Declarations... ' ##HAND_CODED_BLOCK_END ID="Additional Variable Declarations"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS Implements LtXmlComLib20.XmlObjectBase Implements LtXmlComLib20.XmlGeneratedClass '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''''''''''' Properties ''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Public Property Get ElementName() As String ElementName = m_elementName End Property ' Summary: ' Represents a mandatory Attribute in the XML document ' ' 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 . Public Property Get Label As String Label = mvarLabel End Property Public Property Let Label(ByVal value As String) ' Apply whitespace rules appropriately value = LtXmlComLib20.WhitespaceUtils.PreserveWhitespace(value) mvarLabel = value End Property ' Summary: ' Represents an optional Attribute in the XML document ' ' Remarks: ' ' This property is represented as an Attribute in the XML. ' It is optional, initially it is not valid. Public Property Get RRP As Double if mvarIsValidRRP = false then Err.Raise ERR_INVALID_STATE, "AlbumType.RRP", "The Property RRP is not valid. Set RRPValid = true" end if RRP = mvarRRP End Property Public Property Let RRP(ByVal value As Double) mvarIsValidRRP = true mvarRRP = value End Property ' Summary: ' Indicates if RRP contains a valid value. ' Remarks: ' true if the value for RRP is valid, false if not. ' If this is set to true then the property is considered valid, and assigned its ' default value (0). ' If its set to false then its made invalid, and subsequent calls to get RRP ' will raise an exception. Public Property Get IsValidRRP As Boolean IsValidRRP = mvarIsValidRRP End Property Public Property Let IsValidRRP(ByVal value As Boolean) if value <> mvarIsValidRRP then mvarRRP = LtXmlComLib20.Conversions.r8FromString("0", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Collapse) mvarIsValidRRP = value End if End Property ' Summary: ' Represents a mandatory Attribute in the XML document ' ' 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 . Public Property Get ProductCode As String ProductCode = mvarProductCode End Property Public Property Let ProductCode(ByVal value As String) ' Apply whitespace rules appropriately value = LtXmlComLib20.WhitespaceUtils.PreserveWhitespace(value) g_ClsDataAlbumType.CheckAttributeRestriction 3, value mvarProductCode = value End Property ' Summary: ' Represents a mandatory Element in the XML document ' ' 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 . Public Property Get AlbumName As String AlbumName = mvarAlbumName End Property Public Property Let AlbumName(ByVal value As String) ' Apply whitespace rules appropriately value = LtXmlComLib20.WhitespaceUtils.PreserveWhitespace(value) mvarAlbumName = value End Property ' Summary: ' Represents a mandatory Element in the XML document ' ' 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 . Public Property Get ArtistName As String ArtistName = mvarArtistName End Property Public Property Let ArtistName(ByVal value As String) ' Apply whitespace rules appropriately value = LtXmlComLib20.WhitespaceUtils.PreserveWhitespace(value) mvarArtistName = value End Property ' Summary: ' A collection of Tracks ' ' Remarks: ' ' This property is represented as an Element in the XML. ' This collection may contain 1 to Many objects. Public Property Get Track As MusicStoreLib.TrackTypeCol Set Track = mvarTrack End Property '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''''''' Standard Methods ''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Public Sub ToXmlFile(ByVal FileName As String, Optional includeDocHeader As Boolean = True, Optional formatting As LtXmlComLib20.XmlFormatting = LtXmlComLib20.XmlFormatting_Indented, Optional encoding As LtXmlComLib20.XmlEncoding = LtXmlComLib20.XmlEncoding_UTF8, Optional EOL As LtXmlComLib20.EOLType = LtXmlComLib20.EOLType.EOLType_CRLF, Optional context As LtXmlComLib20.XmlSerializationContext = Nothing) RegisterProduct LtXmlComLib20.XmlObjectBaseHelper.ToXmlFile Me, FileName, includeDocHeader, formatting, encoding, EOL, context End Sub Public Function ToXml(Optional includeDocHeader As Boolean = True, Optional formatting As LtXmlComLib20.XmlFormatting = LtXmlComLib20.XmlFormatting_Indented, Optional EOL As LtXmlComLib20.EOLType = LtXmlComLib20.EOLType.EOLType_LF, Optional context As LtXmlComLib20.XmlSerializationContext = Nothing) As String RegisterProduct ToXml = LtXmlComLib20.XmlObjectBaseHelper.ToXml(Me, includeDocHeader, formatting, EOL, context) End Function Public Function ToXmlStream(Optional includeDocHeader As Boolean = True, Optional formatting As LtXmlComLib20.XmlFormatting = LtXmlComLib20.XmlFormatting_Indented, Optional encoding As LtXmlComLib20.XmlEncoding = LtXmlComLib20.XmlEncoding_UTF8, Optional EOL As LtXmlComLib20.EOLType = LtXmlComLib20.EOLType.EOLType_LF, Optional context As LtXmlComLib20.XmlSerializationContext = Nothing) As Variant RegisterProduct ToXmlStream = LtXmlComLib20.XmlObjectBaseHelper.ToXmlStream(Me, includeDocHeader, formatting, encoding, EOL, context) End Function Public Sub FromXml(ByVal xmlIn As String, Optional context As LtXmlComLib20.XmlSerializationContext = Nothing) RegisterProduct LtXmlComLib20.XmlObjectBaseHelper.FromXml Me, xmlIn, context End Sub Public Sub FromXmlFile(ByVal FileName As String, Optional context As LtXmlComLib20.XmlSerializationContext = Nothing) RegisterProduct LtXmlComLib20.XmlObjectBaseHelper.FromXmlFile Me, FileName, context End Sub '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''' Private Methods '''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Summary: ' Constructor for AlbumType ' 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 Private Sub Class_Initialize() m_elementName = "AlbumType" XmlGeneratedClass_Init End Sub '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''' Implementation of XmlObjectBase ''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Private Sub XmlObjectBase_PrivateSetElementName(ByVal vNewValue As String) m_ElementName = vNewValue End Sub Private Property Get XmlObjectBase_ElementName() As String XmlObjectBase_ElementName = m_ElementName End Property Private Property Get XmlObjectBase_TargetNamespace() As String XmlObjectBase_TargetNamespace = "" End Property Private Function XmlObjectBase_IsSuitableSubstitution(ByVal InterfaceName As String) As Boolean XmlObjectBase_IsSuitableSubstitution = false if InterfaceName = "AlbumType" _ then XmlObjectBase_IsSuitableSubstitution = true End Function Private Property Get XmlObjectBase_Namespace() As String XmlObjectBase_Namespace = "" End Property Private Function XmlObjectBase_FromXmlInt(ByVal XMLParent As MSXML2.IXMLDOMElement, ByVal XMLChild As MSXML2.IXMLDOMElement, ByVal context As LtXmlComLib20.XmlSerializationContext, ByVal isOptionalChoice As Boolean) As MSXML2.IXMLDOMElement Set XmlObjectBase_FromXmlInt = XmlGeneratedClassHelper.FromXml(Me, XMLParent, XMLChild, context, isOptionalChoice) End Function Private Sub XmlObjectBase_ToXmlInt(ByVal xmlOut As LtXmlComLib20.XmlTextWriter, ByVal bRegisterNamespaces As Boolean, ByVal NamespaceUri As String, ByVal context As LtXmlComLib20.XmlSerializationContext, ByVal isOptionalChoice As Boolean) XmlGeneratedClassHelper.ToXml Me, xmlOut, bRegisterNamespaces, NamespaceUri, context, isOptionalChoice End Sub Private Sub XmlObjectBase_AttributesToXmlInt(ByVal xmlOut As LtXmlComLib20.XmlTextWriter, ByVal context As LtXmlComLib20.XmlSerializationContext) XmlGeneratedClassHelper.AttributesToXml Me, xmlOut, context End Sub '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''' Implementation of XmlGeneratedClass ''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Summary: ' Initializes the class ' Remarks: ' The 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. Private Sub XmlGeneratedClass_Init() mvarLabel = LtXmlComLib20.Conversions.stringFromString("", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve) mvarRRP = LtXmlComLib20.Conversions.r8FromString("0", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Collapse) mvarIsValidRRP = False mvarProductCode = LtXmlComLib20.Conversions.stringFromString("", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve) mvarAlbumName = LtXmlComLib20.Conversions.stringFromString("", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve) mvarArtistName = LtXmlComLib20.Conversions.stringFromString("", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve) Set mvarTrack = CF.CreateClassCollection(ClsName_TrackTypeCol, "Track", "", 1, -1) ' Force Init ClassInfo Dim classInfo As LtXmlComLib20.ClassInfo Set classInfo = XmlGeneratedClass_ClassInfo ' ##HAND_CODED_BLOCK_START ID="Additional Inits"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS ' Add Additional Init Settings... ' ##HAND_CODED_BLOCK_END ID="Additional Inits"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS End Sub Private Property Get XmlGeneratedClass_ClassInfo() As LtXmlComLib20.ClassInfo If g_ClsDataAlbumType Is Nothing Then Set g_ClsDataAlbumType = New LtXmlComLib20.ClassInfo g_ClsDataAlbumType.GroupType = LtXmlComLib20.XmlGroupType.Sequence g_ClsDataAlbumType.ElementType = LtXmlComLib20.XmlElementType.Element g_ClsDataAlbumType.ElementName = "AlbumType" g_ClsDataAlbumType.ElementNamespaceURI = "" g_ClsDataAlbumType.FromXmlFailIfAttributeUnknown = true g_ClsDataAlbumType.IsClassDerived = false g_ClsDataAlbumType.PrimitiveDataType = LtXmlComLib20.XmlDataType.type_none g_ClsDataAlbumType.PrimitiveFormatOverride = "" g_ClsDataAlbumType.OutputPrimitiveClassAsTextProperty = False Set g_ClsDataAlbumType.ClassFactory = General.CF g_ClsDataAlbumType.AddElmSeqPrimMnd "AlbumName", "", "AlbumName", XmlDataType.type_string, "", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve, "", -1, -1, "", "", "", "", -1 g_ClsDataAlbumType.AddElmSeqPrimMnd "ArtistName", "", "ArtistName", XmlDataType.type_string, "", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve, "", -1, -1, "", "", "", "", -1 g_ClsDataAlbumType.AddElmSeqClsCol "Track", "", "Track", LtXmlComLib20.XmlElementType.Element g_ClsDataAlbumType.AddAttrPrimitive "Label", "", "Label", "", false, XmlDataType.type_string, "", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve, "", -1, -1, "", "", "", "", -1, vbNullString g_ClsDataAlbumType.AddAttrPrimitive "RRP", "", "RRP", "IsValidRRP", true, XmlDataType.type_r8, "", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Collapse, "", -1, -1, "", "", "", "", -1, vbNullString g_ClsDataAlbumType.AddAttrPrimitive "ProductCode", "", "ProductCode", "", false, XmlDataType.type_string, "", LtXmlComLib20.WhitespaceRule.WhitespaceRule_Preserve, "", -1, -1, "", "", "", "", 15, vbNullString End If Set XmlGeneratedClass_ClassInfo = g_ClsDataAlbumType End Property ' ##HAND_CODED_BLOCK_START ID="Additional Methods/Properties"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS ' Add Additional Methods/Properties Here... ' ##HAND_CODED_BLOCK_END ID="Additional Methods/Properties"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS