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
- CqlQuery.cs
- precedingsibling.cs
- Clock.cs
- IUnknownConstantAttribute.cs
- XsltSettings.cs
- SymbolType.cs
- AsyncOperationLifetimeManager.cs
- DesignerLoader.cs
- SQLMoneyStorage.cs
- Assert.cs
- MultipleViewPattern.cs
- HwndMouseInputProvider.cs
- QuaternionAnimationUsingKeyFrames.cs
- ToolStrip.cs
- MenuItem.cs
- ConfigXmlWhitespace.cs
- MatrixUtil.cs
- MenuCommand.cs
- CreateUserWizard.cs
- IriParsingElement.cs
- MemberCollection.cs
- SaveCardRequest.cs
- AppLevelCompilationSectionCache.cs
- DataExchangeServiceBinder.cs
- RuntimeConfig.cs
- BinaryUtilClasses.cs
- FormViewDeletedEventArgs.cs
- XmlSchemaDocumentation.cs
- SqlRetyper.cs
- DynamicUpdateCommand.cs
- AppDomain.cs
- UserControlCodeDomTreeGenerator.cs
- ButtonBaseAdapter.cs
- ColorDialog.cs
- StylusPointPropertyUnit.cs
- SoapTypeAttribute.cs
- BindingManagerDataErrorEventArgs.cs
- ExeConfigurationFileMap.cs
- HtmlEncodedRawTextWriter.cs
- IsolationInterop.cs
- DataGridViewLayoutData.cs
- ListViewEditEventArgs.cs
- SemaphoreFullException.cs
- ReaderContextStackData.cs
- OracleConnection.cs
- PermissionToken.cs
- CalloutQueueItem.cs
- PrintDialog.cs
- DataGridViewCellMouseEventArgs.cs
- CodeStatementCollection.cs
- LOSFormatter.cs
- TimeoutValidationAttribute.cs
- FixedFlowMap.cs
- BaseParaClient.cs
- FixedDocumentSequencePaginator.cs
- StrongNameSignatureInformation.cs
- TableRowGroup.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- CSharpCodeProvider.cs
- HighContrastHelper.cs
- PolicyStatement.cs
- SafeFindHandle.cs
- PropertyTab.cs
- WindowsAuthenticationEventArgs.cs
- Camera.cs
- SqlDataSourceParameterParser.cs
- ComponentChangedEvent.cs
- TextTreeUndo.cs
- BitmapEffectDrawingContextWalker.cs
- TypeConverter.cs
- Transactions.cs
- InvalidateEvent.cs
- TableLayoutPanel.cs
- Fonts.cs
- MasterPage.cs
- HttpModuleCollection.cs
- Identity.cs
- RegexMatchCollection.cs
- Select.cs
- WebPartEditorOkVerb.cs
- TextRangeEdit.cs
- ClientFormsIdentity.cs
- DatatypeImplementation.cs
- FileIOPermission.cs
- AsymmetricSignatureDeformatter.cs
- UpdatePanelControlTrigger.cs
- LicenseContext.cs
- Terminate.cs
- ExecutionContext.cs
- SQLStringStorage.cs
- SystemNetHelpers.cs
- PointCollection.cs
- StorageAssociationSetMapping.cs
- TargetFrameworkAttribute.cs
- ObjectViewQueryResultData.cs
- Viewport2DVisual3D.cs
- ResolveDuplexAsyncResult.cs
- EntityConnectionStringBuilder.cs
- DetailsViewRowCollection.cs
- Brush.cs