Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / schema / XmlSchemaParticle.cs / 1 / 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. // Copyright (c) Microsoft Corporation. All rights reserved.[To be supplied.] ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HyperLinkField.cs
- FixedSOMLineRanges.cs
- ChannelCredentials.cs
- XmlUrlResolver.cs
- ImageButton.cs
- StateFinalizationDesigner.cs
- ServiceOperationUIEditor.cs
- LicenseManager.cs
- PrePrepareMethodAttribute.cs
- ByteStream.cs
- NetTcpBindingElement.cs
- ServerValidateEventArgs.cs
- documentsequencetextpointer.cs
- MediaScriptCommandRoutedEventArgs.cs
- DesignOnlyAttribute.cs
- ContainerParagraph.cs
- HttpCacheVary.cs
- WebReferencesBuildProvider.cs
- SoapSchemaMember.cs
- TraceLevelHelper.cs
- HttpResponse.cs
- FlowDocumentScrollViewer.cs
- TableLayoutCellPaintEventArgs.cs
- ConfigurationConverterBase.cs
- ConsoleTraceListener.cs
- DiscardableAttribute.cs
- TextBlock.cs
- TemplateColumn.cs
- TextParaLineResult.cs
- StreamGeometryContext.cs
- ItemList.cs
- Menu.cs
- XmlRootAttribute.cs
- MouseDevice.cs
- ColorDialog.cs
- OptimalTextSource.cs
- MemoryMappedFileSecurity.cs
- RijndaelManaged.cs
- PeerTransportSecuritySettings.cs
- DataGridViewBindingCompleteEventArgs.cs
- OleDbReferenceCollection.cs
- CqlQuery.cs
- EditableRegion.cs
- DbFunctionCommandTree.cs
- OracleParameterCollection.cs
- Models.cs
- SimpleType.cs
- xmlNames.cs
- XmlBufferReader.cs
- GridSplitter.cs
- ReversePositionQuery.cs
- HtmlGenericControl.cs
- DbConvert.cs
- TableProviderWrapper.cs
- ApplicationFileParser.cs
- Stackframe.cs
- Int32.cs
- PermissionListSet.cs
- PtsPage.cs
- ArraySegment.cs
- Compiler.cs
- PageCatalogPart.cs
- WeakHashtable.cs
- XmlNodeReader.cs
- MenuAutoFormat.cs
- ParallelDesigner.cs
- XmlTypeMapping.cs
- TypeUsageBuilder.cs
- COM2ColorConverter.cs
- QuadTree.cs
- DayRenderEvent.cs
- XsltFunctions.cs
- TreeNodeCollectionEditor.cs
- SqlRemoveConstantOrderBy.cs
- IntegerFacetDescriptionElement.cs
- FusionWrap.cs
- QueryReaderSettings.cs
- ConfigurationManagerInternalFactory.cs
- SizeChangedInfo.cs
- MembershipPasswordException.cs
- TextCharacters.cs
- CLRBindingWorker.cs
- ConfigXmlText.cs
- HostingEnvironmentSection.cs
- GridProviderWrapper.cs
- PackagingUtilities.cs
- DataListItemCollection.cs
- UInt32Storage.cs
- AsyncStreamReader.cs
- WebConvert.cs
- MetadataCache.cs
- DynamicDataManager.cs
- MetadataProperty.cs
- DotExpr.cs
- VerificationException.cs
- InternalConfigConfigurationFactory.cs
- CaseInsensitiveOrdinalStringComparer.cs
- FusionWrap.cs
- DbBuffer.cs
- EmptyEnumerable.cs