Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / schema / XmlSchemaParticle.cs / 1305376 / XmlSchemaParticle.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Schema { using System.Xml.Serialization; ////// /// public abstract class XmlSchemaParticle : XmlSchemaAnnotated { [Flags] enum Occurs { None, Min, Max }; decimal minOccurs = decimal.One; decimal maxOccurs = decimal.One; Occurs flags = Occurs.None; ///[To be supplied.] ////// /// [XmlAttribute("minOccurs")] public string MinOccursString { get { return (flags & Occurs.Min) == 0 ? null : XmlConvert.ToString(minOccurs); } set { if (value == null) { minOccurs = decimal.One; flags &= ~Occurs.Min; } else { minOccurs = XmlConvert.ToInteger(value); if (minOccurs < decimal.Zero) { throw new XmlSchemaException(Res.Sch_MinOccursInvalidXsd, string.Empty); } flags |= Occurs.Min; } } } ///[To be supplied.] ////// /// [XmlAttribute("maxOccurs")] public string MaxOccursString { get { return (flags & Occurs.Max) == 0 ? null : (maxOccurs == decimal.MaxValue) ? "unbounded" : XmlConvert.ToString(maxOccurs); } set { if (value == null) { maxOccurs = decimal.One; flags &= ~Occurs.Max; } else { if (value == "unbounded") { maxOccurs = decimal.MaxValue; } else { maxOccurs = XmlConvert.ToInteger(value); if (maxOccurs < decimal.Zero) { throw new XmlSchemaException(Res.Sch_MaxOccursInvalidXsd, string.Empty); } else if (maxOccurs == decimal.Zero && (flags & Occurs.Min) == 0) { minOccurs = decimal.Zero; } } flags |= Occurs.Max; } } } ///[To be supplied.] ////// /// [XmlIgnore] public decimal MinOccurs { get { return minOccurs; } set { if (value < decimal.Zero || value != decimal.Truncate(value)) { throw new XmlSchemaException(Res.Sch_MinOccursInvalidXsd, string.Empty); } minOccurs = value; flags |= Occurs.Min; } } ///[To be supplied.] ////// /// [XmlIgnore] public decimal MaxOccurs { get { return maxOccurs; } set { if (value < decimal.Zero || value != decimal.Truncate(value)) { throw new XmlSchemaException(Res.Sch_MaxOccursInvalidXsd, string.Empty); } maxOccurs = value; if (maxOccurs == decimal.Zero && (flags & Occurs.Min) == 0) { minOccurs = decimal.Zero; } flags |= Occurs.Max; } } internal virtual bool IsEmpty { get { return maxOccurs == decimal.Zero; } } internal bool IsMultipleOccurrence { get { return maxOccurs > decimal.One; } } internal virtual string NameString { get { return string.Empty; } } internal XmlQualifiedName GetQualifiedName() { XmlSchemaElement elem = this as XmlSchemaElement; if (elem != null) { return elem.QualifiedName; } else { XmlSchemaAny any = this as XmlSchemaAny; if (any != null) { string ns = any.Namespace; if (ns != null) { ns = ns.Trim(); } else { ns = string.Empty; } return new XmlQualifiedName("*", ns.Length == 0 ? "##any" : ns); } } return XmlQualifiedName.Empty; //If ever called on other particles } class EmptyParticle : XmlSchemaParticle { internal override bool IsEmpty { get { return true; } } } internal static readonly XmlSchemaParticle Empty = new EmptyParticle(); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //[To be supplied.] ///// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Schema { using System.Xml.Serialization; ////// /// public abstract class XmlSchemaParticle : XmlSchemaAnnotated { [Flags] enum Occurs { None, Min, Max }; decimal minOccurs = decimal.One; decimal maxOccurs = decimal.One; Occurs flags = Occurs.None; ///[To be supplied.] ////// /// [XmlAttribute("minOccurs")] public string MinOccursString { get { return (flags & Occurs.Min) == 0 ? null : XmlConvert.ToString(minOccurs); } set { if (value == null) { minOccurs = decimal.One; flags &= ~Occurs.Min; } else { minOccurs = XmlConvert.ToInteger(value); if (minOccurs < decimal.Zero) { throw new XmlSchemaException(Res.Sch_MinOccursInvalidXsd, string.Empty); } flags |= Occurs.Min; } } } ///[To be supplied.] ////// /// [XmlAttribute("maxOccurs")] public string MaxOccursString { get { return (flags & Occurs.Max) == 0 ? null : (maxOccurs == decimal.MaxValue) ? "unbounded" : XmlConvert.ToString(maxOccurs); } set { if (value == null) { maxOccurs = decimal.One; flags &= ~Occurs.Max; } else { if (value == "unbounded") { maxOccurs = decimal.MaxValue; } else { maxOccurs = XmlConvert.ToInteger(value); if (maxOccurs < decimal.Zero) { throw new XmlSchemaException(Res.Sch_MaxOccursInvalidXsd, string.Empty); } else if (maxOccurs == decimal.Zero && (flags & Occurs.Min) == 0) { minOccurs = decimal.Zero; } } flags |= Occurs.Max; } } } ///[To be supplied.] ////// /// [XmlIgnore] public decimal MinOccurs { get { return minOccurs; } set { if (value < decimal.Zero || value != decimal.Truncate(value)) { throw new XmlSchemaException(Res.Sch_MinOccursInvalidXsd, string.Empty); } minOccurs = value; flags |= Occurs.Min; } } ///[To be supplied.] ////// /// [XmlIgnore] public decimal MaxOccurs { get { return maxOccurs; } set { if (value < decimal.Zero || value != decimal.Truncate(value)) { throw new XmlSchemaException(Res.Sch_MaxOccursInvalidXsd, string.Empty); } maxOccurs = value; if (maxOccurs == decimal.Zero && (flags & Occurs.Min) == 0) { minOccurs = decimal.Zero; } flags |= Occurs.Max; } } internal virtual bool IsEmpty { get { return maxOccurs == decimal.Zero; } } internal bool IsMultipleOccurrence { get { return maxOccurs > decimal.One; } } internal virtual string NameString { get { return string.Empty; } } internal XmlQualifiedName GetQualifiedName() { XmlSchemaElement elem = this as XmlSchemaElement; if (elem != null) { return elem.QualifiedName; } else { XmlSchemaAny any = this as XmlSchemaAny; if (any != null) { string ns = any.Namespace; if (ns != null) { ns = ns.Trim(); } else { ns = string.Empty; } return new XmlQualifiedName("*", ns.Length == 0 ? "##any" : ns); } } return XmlQualifiedName.Empty; //If ever called on other particles } class EmptyParticle : XmlSchemaParticle { internal override bool IsEmpty { get { return true; } } } internal static readonly XmlSchemaParticle Empty = new EmptyParticle(); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.[To be supplied.] ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EventWaitHandleSecurity.cs
- RemotingConfiguration.cs
- SettingsPropertyWrongTypeException.cs
- MultiAsyncResult.cs
- PictureBoxDesigner.cs
- Viewport3DVisual.cs
- WebPartMenuStyle.cs
- Accessible.cs
- DataContext.cs
- OneOfElement.cs
- mediapermission.cs
- ContentValidator.cs
- WindowsScrollBar.cs
- TryCatch.cs
- InheritanceAttribute.cs
- TextBox.cs
- ArraySegment.cs
- CreateUserErrorEventArgs.cs
- RoutedUICommand.cs
- ToolStripScrollButton.cs
- ListBindingHelper.cs
- OdbcErrorCollection.cs
- PermissionAttributes.cs
- WindowsServiceCredential.cs
- ScaleTransform3D.cs
- XPathNodeInfoAtom.cs
- PersonalizationStateInfo.cs
- ReadOnlyHierarchicalDataSource.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- KeyedHashAlgorithm.cs
- DataSourceDescriptorCollection.cs
- GPStream.cs
- CryptoConfig.cs
- XmlHierarchicalDataSourceView.cs
- DoubleLinkListEnumerator.cs
- SoapUnknownHeader.cs
- IdentityHolder.cs
- EnumValidator.cs
- ColumnMapTranslator.cs
- Int16KeyFrameCollection.cs
- PrintController.cs
- ListControlConvertEventArgs.cs
- SchemaExporter.cs
- FileLevelControlBuilderAttribute.cs
- ImageDrawing.cs
- ExpressionBuilder.cs
- DSASignatureFormatter.cs
- RuntimeWrappedException.cs
- WindowsGraphicsCacheManager.cs
- XmlSchemaAnyAttribute.cs
- WinFormsComponentEditor.cs
- BackStopAuthenticationModule.cs
- CodeTryCatchFinallyStatement.cs
- TransactionFlowOption.cs
- LinkLabel.cs
- TextCompositionManager.cs
- PersonalizablePropertyEntry.cs
- ImageInfo.cs
- Cell.cs
- CommentAction.cs
- WorkflowRuntimeBehavior.cs
- DocumentViewerAutomationPeer.cs
- TraceEventCache.cs
- FragmentQueryKB.cs
- XmlSiteMapProvider.cs
- Type.cs
- BamlMapTable.cs
- FragmentQuery.cs
- RoleService.cs
- Deserializer.cs
- ModelItemExtensions.cs
- SocketInformation.cs
- SimpleTypeResolver.cs
- ImportCatalogPart.cs
- SecurityContextSecurityTokenResolver.cs
- AsyncSerializedWorker.cs
- RowVisual.cs
- EntityKeyElement.cs
- MenuItemAutomationPeer.cs
- PageAsyncTaskManager.cs
- File.cs
- SettingsAttributes.cs
- LostFocusEventManager.cs
- ServiceDescriptions.cs
- UriWriter.cs
- ComboBox.cs
- RequestQueryProcessor.cs
- UdpTransportSettingsElement.cs
- KeyTimeConverter.cs
- BitmapEffect.cs
- TraceRecords.cs
- ByteKeyFrameCollection.cs
- OperationAbortedException.cs
- AutoResizedEvent.cs
- EventMappingSettings.cs
- DataBoundControlHelper.cs
- ContractDescription.cs
- FontSource.cs
- Geometry.cs
- _NetworkingPerfCounters.cs