Code:
/ 4.0 / 4.0 / untmp / 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.] ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GridSplitter.cs
- ContainerSelectorActiveEvent.cs
- RefExpr.cs
- WhitespaceRuleLookup.cs
- FlowDocumentPageViewerAutomationPeer.cs
- WindowsListViewItemCheckBox.cs
- ListViewInsertEventArgs.cs
- ObjectListCommand.cs
- Vector3D.cs
- AssemblyLoader.cs
- AsnEncodedData.cs
- SystemFonts.cs
- TablePatternIdentifiers.cs
- WebPartEditorApplyVerb.cs
- WebPartPersonalization.cs
- ImageIndexConverter.cs
- ConfigXmlDocument.cs
- SettingsPropertyWrongTypeException.cs
- PageParser.cs
- X509ServiceCertificateAuthentication.cs
- ResourcesBuildProvider.cs
- PnrpPermission.cs
- SqlDataSourceCustomCommandEditor.cs
- XmlSchemaAnyAttribute.cs
- SymLanguageType.cs
- DatagridviewDisplayedBandsData.cs
- HostUtils.cs
- ResponseStream.cs
- MeshGeometry3D.cs
- SafeCertificateStore.cs
- SqlInternalConnectionTds.cs
- ColorConverter.cs
- ToolZoneDesigner.cs
- SelectedGridItemChangedEvent.cs
- ExternalCalls.cs
- PropertyMapper.cs
- EdmValidator.cs
- TagMapInfo.cs
- DrawingContextDrawingContextWalker.cs
- NamespaceDecl.cs
- BuilderElements.cs
- DropShadowEffect.cs
- Timer.cs
- KnownBoxes.cs
- MexBindingBindingCollectionElement.cs
- DbConnectionInternal.cs
- XamlTypeWithExplicitNamespace.cs
- RelationalExpressions.cs
- RelationshipConstraintValidator.cs
- BufferedWebEventProvider.cs
- DragEvent.cs
- MobileControlDesigner.cs
- TextTabProperties.cs
- SqlConnectionHelper.cs
- WindowsGraphicsCacheManager.cs
- GPRECT.cs
- Image.cs
- Size.cs
- Ticks.cs
- Delegate.cs
- GPStream.cs
- DiffuseMaterial.cs
- VisualTransition.cs
- HttpInputStream.cs
- EntryIndex.cs
- WorkflowApplicationTerminatedException.cs
- OdbcHandle.cs
- RowUpdatingEventArgs.cs
- AssemblyFilter.cs
- StringToken.cs
- GroupBox.cs
- XmlEntityReference.cs
- BuilderInfo.cs
- MaterialGroup.cs
- ListBindableAttribute.cs
- BuildProvidersCompiler.cs
- DataColumn.cs
- ScriptResourceInfo.cs
- HotSpotCollection.cs
- XmlAttributes.cs
- SerializationInfoEnumerator.cs
- XappLauncher.cs
- GlyphCache.cs
- SmiContextFactory.cs
- RelatedImageListAttribute.cs
- RectangleGeometry.cs
- PatternMatcher.cs
- TextEditor.cs
- NameTable.cs
- ArrayItemValue.cs
- DesignerObject.cs
- CompilerCollection.cs
- Margins.cs
- ItemCheckedEvent.cs
- XmlSchemaExporter.cs
- RuleSettingsCollection.cs
- HtmlEncodedRawTextWriter.cs
- File.cs
- StatusStrip.cs
- XmlAttributeAttribute.cs