Code:
/ DotNET / DotNET / 8.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
- RepeatEnumerable.cs
- RegionData.cs
- StringKeyFrameCollection.cs
- ClientRuntimeConfig.cs
- OdbcEnvironmentHandle.cs
- RelatedView.cs
- DiagnosticStrings.cs
- StyleBamlRecordReader.cs
- StandardCommands.cs
- ReflectPropertyDescriptor.cs
- RowType.cs
- Size3DConverter.cs
- DbDataAdapter.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- Rotation3DAnimation.cs
- HttpProfileGroupBase.cs
- ScriptControlDescriptor.cs
- XdrBuilder.cs
- XMLDiffLoader.cs
- MediaTimeline.cs
- RSAPKCS1KeyExchangeFormatter.cs
- Encoder.cs
- ApplicationFileCodeDomTreeGenerator.cs
- XmlSchemaIdentityConstraint.cs
- DataServiceCollectionOfT.cs
- PreviewPageInfo.cs
- TextPointerBase.cs
- DynamicDataManager.cs
- Window.cs
- wmiprovider.cs
- SmiEventSink.cs
- Rights.cs
- ImmutableObjectAttribute.cs
- Nullable.cs
- PackageRelationshipCollection.cs
- DragStartedEventArgs.cs
- CompleteWizardStep.cs
- AuthenticationManager.cs
- XsltException.cs
- PageThemeParser.cs
- SByte.cs
- CapabilitiesRule.cs
- httpapplicationstate.cs
- BindingUtils.cs
- NamespaceInfo.cs
- autovalidator.cs
- XMLDiffLoader.cs
- SQLCharsStorage.cs
- _NestedMultipleAsyncResult.cs
- SelectionProviderWrapper.cs
- StateValidator.cs
- WindowsListViewGroupHelper.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- CommentAction.cs
- MultiView.cs
- httpserverutility.cs
- UnsafeNativeMethods.cs
- PerfCounters.cs
- ArgumentsParser.cs
- PropertyGeneratedEventArgs.cs
- LogEntrySerializer.cs
- ListViewItemEventArgs.cs
- Nullable.cs
- TextSelection.cs
- XmlHierarchyData.cs
- IConvertible.cs
- MobileTextWriter.cs
- NotFiniteNumberException.cs
- ConnectionManagementElementCollection.cs
- LineServicesCallbacks.cs
- OdbcConnectionHandle.cs
- BitmapEffectrendercontext.cs
- ConfigurationException.cs
- SectionVisual.cs
- ChangeInterceptorAttribute.cs
- AddInContractAttribute.cs
- FusionWrap.cs
- LocalBuilder.cs
- StylusPointPropertyId.cs
- CreateParams.cs
- TextEndOfLine.cs
- ModuleConfigurationInfo.cs
- SinglePageViewer.cs
- AssertUtility.cs
- CommentEmitter.cs
- RegistryPermission.cs
- CurrencyWrapper.cs
- DependencyObjectPropertyDescriptor.cs
- ObjectDataSourceChooseTypePanel.cs
- StringResourceManager.cs
- BitmapSource.cs
- CryptoHandle.cs
- SimpleHandlerFactory.cs
- FillRuleValidation.cs
- ControlCachePolicy.cs
- CriticalFileToken.cs
- SQLSingle.cs
- SynchronizedDispatch.cs
- Keyboard.cs
- SourceFilter.cs