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
- WorkflowQueuingService.cs
- DES.cs
- WSSecureConversationDec2005.cs
- MexBindingBindingCollectionElement.cs
- QilIterator.cs
- ControlPaint.cs
- Rect.cs
- AsyncStreamReader.cs
- OleDbConnection.cs
- OracleEncoding.cs
- Point3DCollectionValueSerializer.cs
- TrackBarRenderer.cs
- PageHandlerFactory.cs
- DataGridItemEventArgs.cs
- TextLineBreak.cs
- QueueProcessor.cs
- CryptoConfig.cs
- AuthorizationSection.cs
- Graph.cs
- HorizontalAlignConverter.cs
- BindingNavigator.cs
- DataException.cs
- LinqExpressionNormalizer.cs
- UriSection.cs
- ReflectionPermission.cs
- TreeNodeCollection.cs
- TreeView.cs
- _AcceptOverlappedAsyncResult.cs
- ListViewUpdateEventArgs.cs
- UnknownBitmapEncoder.cs
- ObjectStorage.cs
- DataObjectMethodAttribute.cs
- Queue.cs
- MouseEventArgs.cs
- DesignerPainter.cs
- ToolStripDropDown.cs
- CodeArrayIndexerExpression.cs
- TemplatedWizardStep.cs
- EqualityComparer.cs
- AnnouncementInnerClientCD1.cs
- HMACMD5.cs
- VirtualizingStackPanel.cs
- FixUpCollection.cs
- DictionaryEntry.cs
- IndentTextWriter.cs
- WebPartTransformerCollection.cs
- BufferedStream2.cs
- TripleDESCryptoServiceProvider.cs
- TemplateLookupAction.cs
- EventLogEntryCollection.cs
- XamlValidatingReader.cs
- xmlformatgeneratorstatics.cs
- Barrier.cs
- ExpressionConverter.cs
- httpstaticobjectscollection.cs
- ProfileInfo.cs
- PtsHost.cs
- GroupQuery.cs
- PersistenceTypeAttribute.cs
- autovalidator.cs
- Expressions.cs
- SafeLocalMemHandle.cs
- TextServicesContext.cs
- StylusDevice.cs
- ReturnEventArgs.cs
- ScopedKnownTypes.cs
- NonceCache.cs
- AccessViolationException.cs
- webbrowsersite.cs
- TextBox.cs
- SystemInformation.cs
- ObjectManager.cs
- CacheModeValueSerializer.cs
- SqlDesignerDataSourceView.cs
- TextBoxAutoCompleteSourceConverter.cs
- TextReader.cs
- ColorMatrix.cs
- _SpnDictionary.cs
- RawUIStateInputReport.cs
- ControlCollection.cs
- StringInfo.cs
- Floater.cs
- Function.cs
- NegotiationTokenAuthenticatorState.cs
- EFAssociationProvider.cs
- DecoderBestFitFallback.cs
- XmlAnyAttributeAttribute.cs
- SoapServerProtocol.cs
- EncryptedKey.cs
- GregorianCalendarHelper.cs
- CounterCreationDataCollection.cs
- WebPartEditorApplyVerb.cs
- PolicyChain.cs
- DocumentSequenceHighlightLayer.cs
- SecurityCriticalDataForSet.cs
- ExcludeFromCodeCoverageAttribute.cs
- RawMouseInputReport.cs
- ZipIOModeEnforcingStream.cs
- FacetChecker.cs
- CompilerGlobalScopeAttribute.cs