Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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. //------------------------------------------------------------------------------ //[To be supplied.] ///// 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
- DigestTraceRecordHelper.cs
- RepeatEnumerable.cs
- LiteralControl.cs
- FontUnitConverter.cs
- CacheAxisQuery.cs
- DeferredTextReference.cs
- TraceContextRecord.cs
- TableLayoutPanel.cs
- Storyboard.cs
- CallSite.cs
- EntitySetDataBindingList.cs
- QueryCacheEntry.cs
- RegistryDataKey.cs
- ControlIdConverter.cs
- FirewallWrapper.cs
- ContainerUIElement3D.cs
- ButtonBase.cs
- _AutoWebProxyScriptEngine.cs
- SqlServer2KCompatibilityCheck.cs
- WindowsFormsLinkLabel.cs
- Cursor.cs
- TransformerInfoCollection.cs
- RtfToXamlLexer.cs
- TTSEvent.cs
- SqlEnums.cs
- BitmapData.cs
- ControlDesignerState.cs
- AutomationElement.cs
- Cursors.cs
- FileCodeGroup.cs
- SerializationInfoEnumerator.cs
- ArrayExtension.cs
- SourceFilter.cs
- MultiBindingExpression.cs
- WindowInteractionStateTracker.cs
- Propagator.cs
- WmlFormAdapter.cs
- XmlSchemaChoice.cs
- StyleSelector.cs
- Oid.cs
- ResourcePermissionBaseEntry.cs
- SchemaNamespaceManager.cs
- SqlAliaser.cs
- XmlSchemaAttribute.cs
- ImpersonationContext.cs
- EventMappingSettings.cs
- IndexerNameAttribute.cs
- NullableDoubleAverageAggregationOperator.cs
- ToolBar.cs
- UnicastIPAddressInformationCollection.cs
- SerializationUtilities.cs
- EncryptedXml.cs
- DataGridViewColumnConverter.cs
- XmlSchemaAttributeGroup.cs
- AnchoredBlock.cs
- ListViewInsertEventArgs.cs
- DataShape.cs
- BinaryExpressionHelper.cs
- ListControlStringCollectionEditor.cs
- ScrollBarAutomationPeer.cs
- SectionXmlInfo.cs
- MarshalByRefObject.cs
- RequestCache.cs
- SoapSchemaMember.cs
- SerializationException.cs
- XPathDocument.cs
- ImportContext.cs
- Attributes.cs
- DataObject.cs
- ContentElement.cs
- TreeNodeStyle.cs
- Thickness.cs
- EmptyStringExpandableObjectConverter.cs
- LinqDataSourceValidationException.cs
- LassoHelper.cs
- SerializerWriterEventHandlers.cs
- Closure.cs
- LinqDataSourceSelectEventArgs.cs
- PerspectiveCamera.cs
- CellCreator.cs
- ArraySet.cs
- FileLevelControlBuilderAttribute.cs
- NameNode.cs
- ObjectMemberMapping.cs
- Interlocked.cs
- AsyncSerializedWorker.cs
- FixedFindEngine.cs
- X500Name.cs
- NameTable.cs
- RichTextBox.cs
- ISessionStateStore.cs
- ListQueryResults.cs
- NetPeerTcpBindingCollectionElement.cs
- EntitySqlQueryCacheEntry.cs
- WindowsRichEdit.cs
- EFDataModelProvider.cs
- SHA384Cng.cs
- IntSecurity.cs
- AsnEncodedData.cs
- ProxyWebPartConnectionCollection.cs