Code:
/ 4.0 / 4.0 / 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.] ///// 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
- Activator.cs
- ForwardPositionQuery.cs
- DataExpression.cs
- RequestTimeoutManager.cs
- FontConverter.cs
- DiscreteKeyFrames.cs
- AttachedPropertyBrowsableAttribute.cs
- AsymmetricSignatureFormatter.cs
- HTTP_SERVICE_CONFIG_URLACL_PARAM.cs
- RowToParametersTransformer.cs
- NavigationHelper.cs
- RecognizedPhrase.cs
- ResXResourceSet.cs
- XslAst.cs
- ConnectionProviderAttribute.cs
- ToolStripDropDownMenu.cs
- DefaultValueMapping.cs
- HtmlShim.cs
- QuestionEventArgs.cs
- Panel.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- HtmlPhoneCallAdapter.cs
- ComponentChangingEvent.cs
- ReliabilityContractAttribute.cs
- sqlpipe.cs
- EntityException.cs
- FileEnumerator.cs
- CodeCompileUnit.cs
- Int64Animation.cs
- GridViewDeletedEventArgs.cs
- MemoryStream.cs
- ResourceExpressionBuilder.cs
- UInt16Converter.cs
- ClusterSafeNativeMethods.cs
- StringUtil.cs
- DataGridViewCellConverter.cs
- BindingNavigator.cs
- DesigntimeLicenseContextSerializer.cs
- WpfKnownMemberInvoker.cs
- LocalIdKeyIdentifierClause.cs
- SymmetricAlgorithm.cs
- CellRelation.cs
- ListenerConnectionModeReader.cs
- MasterPageParser.cs
- BamlTreeNode.cs
- Viewport3DVisual.cs
- UnionCodeGroup.cs
- MenuItemStyleCollection.cs
- DetailsViewModeEventArgs.cs
- CancelEventArgs.cs
- SourceElementsCollection.cs
- SerTrace.cs
- SqlCommand.cs
- OdbcError.cs
- EntityDataSourceDataSelection.cs
- EntityAdapter.cs
- StickyNoteContentControl.cs
- ToolTipService.cs
- PropertyContainer.cs
- MiniConstructorInfo.cs
- ResourceKey.cs
- Clipboard.cs
- XamlStream.cs
- InternalConfigHost.cs
- PKCS1MaskGenerationMethod.cs
- PolicyManager.cs
- Sequence.cs
- mda.cs
- Compiler.cs
- querybuilder.cs
- FormsIdentity.cs
- TableAutomationPeer.cs
- ColumnHeaderConverter.cs
- SqlProcedureAttribute.cs
- JoinGraph.cs
- TextEditorCharacters.cs
- TraceSwitch.cs
- DbConnectionClosed.cs
- SHA1CryptoServiceProvider.cs
- ProofTokenCryptoHandle.cs
- NumberFunctions.cs
- PathFigure.cs
- MultipartIdentifier.cs
- ArraySubsetEnumerator.cs
- WebServiceResponse.cs
- FixedDocumentSequencePaginator.cs
- LocatorPart.cs
- WindowCollection.cs
- DateTimeConstantAttribute.cs
- ToolStripScrollButton.cs
- SoapReflectionImporter.cs
- ForwardPositionQuery.cs
- ListBoxItemAutomationPeer.cs
- SearchForVirtualItemEventArgs.cs
- PngBitmapEncoder.cs
- GPRECT.cs
- UpDownBase.cs
- CompositeDataBoundControl.cs
- PrintController.cs
- IdentitySection.cs