Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Xml / System / Xml / schema / SchemaAttDef.cs / 1 / SchemaAttDef.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Schema { using System.Diagnostics; /* * This class describes an attribute type and potential values. * This encapsulates the information for one Attdef * in an * Attlist in a DTD as described below: */ internal sealed class SchemaAttDef : SchemaDeclBase { public enum Reserve { None, XmlSpace, XmlLang }; private Reserve reserved; // indicate the attribute type, such as xml:lang or xml:space private String defExpanded; // default value in its expanded form private bool hasEntityRef; // whether there is any entity reference in the default value XmlSchemaAttribute schemaAttribute; private bool defaultValueChecked; int lineNum; int linePos; int valueLineNum; int valueLinePos; public static readonly SchemaAttDef Empty = new SchemaAttDef(); public SchemaAttDef(XmlQualifiedName name, String prefix) : base(name, prefix) { reserved = Reserve.None; } private SchemaAttDef() {} public SchemaAttDef Clone() { return (SchemaAttDef) MemberwiseClone(); } internal int LinePos { get { return linePos; } set { linePos = value; } } internal int LineNum { get { return lineNum; } set { lineNum = value; } } internal int ValueLinePos { get { return valueLinePos; } set { valueLinePos = value; } } internal int ValueLineNum { get { return valueLineNum; } set { valueLineNum = value; } } internal bool DefaultValueChecked { get { return defaultValueChecked; } } public String DefaultValueExpanded { get { return(defExpanded != null) ? defExpanded : String.Empty;} set { defExpanded = value;} } public Reserve Reserved { get { return reserved;} set { reserved = value;} } public bool HasEntityRef { get { return hasEntityRef;} set { hasEntityRef = value;} } public XmlSchemaAttribute SchemaAttribute { get { return schemaAttribute; } set { schemaAttribute = value; } } public void CheckXmlSpace(ValidationEventHandler eventhandler) { if (datatype.TokenizedType == XmlTokenizedType.ENUMERATION && (values != null) && (values.Count <= 2)) { String s1 = values[0].ToString(); if (values.Count == 2) { String s2 = values[1].ToString(); if ((s1 == "default" || s2 == "default") && (s1 == "preserve" || s2 == "preserve")) { return; } } else { if (s1 == "default" || s1 == "preserve") { return; } } } eventhandler(this, new ValidationEventArgs(new XmlSchemaException(Res.Sch_XmlSpace, string.Empty))); } internal void CheckDefaultValue( SchemaInfo schemaInfo, IDtdParserAdapter readerAdapter ) { DtdValidator.CheckDefaultValue( this, schemaInfo, readerAdapter ); defaultValueChecked = true; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Schema { using System.Diagnostics; /* * This class describes an attribute type and potential values. * This encapsulates the information for one Attdef * in an * Attlist in a DTD as described below: */ internal sealed class SchemaAttDef : SchemaDeclBase { public enum Reserve { None, XmlSpace, XmlLang }; private Reserve reserved; // indicate the attribute type, such as xml:lang or xml:space private String defExpanded; // default value in its expanded form private bool hasEntityRef; // whether there is any entity reference in the default value XmlSchemaAttribute schemaAttribute; private bool defaultValueChecked; int lineNum; int linePos; int valueLineNum; int valueLinePos; public static readonly SchemaAttDef Empty = new SchemaAttDef(); public SchemaAttDef(XmlQualifiedName name, String prefix) : base(name, prefix) { reserved = Reserve.None; } private SchemaAttDef() {} public SchemaAttDef Clone() { return (SchemaAttDef) MemberwiseClone(); } internal int LinePos { get { return linePos; } set { linePos = value; } } internal int LineNum { get { return lineNum; } set { lineNum = value; } } internal int ValueLinePos { get { return valueLinePos; } set { valueLinePos = value; } } internal int ValueLineNum { get { return valueLineNum; } set { valueLineNum = value; } } internal bool DefaultValueChecked { get { return defaultValueChecked; } } public String DefaultValueExpanded { get { return(defExpanded != null) ? defExpanded : String.Empty;} set { defExpanded = value;} } public Reserve Reserved { get { return reserved;} set { reserved = value;} } public bool HasEntityRef { get { return hasEntityRef;} set { hasEntityRef = value;} } public XmlSchemaAttribute SchemaAttribute { get { return schemaAttribute; } set { schemaAttribute = value; } } public void CheckXmlSpace(ValidationEventHandler eventhandler) { if (datatype.TokenizedType == XmlTokenizedType.ENUMERATION && (values != null) && (values.Count <= 2)) { String s1 = values[0].ToString(); if (values.Count == 2) { String s2 = values[1].ToString(); if ((s1 == "default" || s2 == "default") && (s1 == "preserve" || s2 == "preserve")) { return; } } else { if (s1 == "default" || s1 == "preserve") { return; } } } eventhandler(this, new ValidationEventArgs(new XmlSchemaException(Res.Sch_XmlSpace, string.Empty))); } internal void CheckDefaultValue( SchemaInfo schemaInfo, IDtdParserAdapter readerAdapter ) { DtdValidator.CheckDefaultValue( this, schemaInfo, readerAdapter ); defaultValueChecked = true; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PeekCompletedEventArgs.cs
- FormatVersion.cs
- FillRuleValidation.cs
- FieldValue.cs
- MsmqIntegrationBinding.cs
- EntityProxyFactory.cs
- Classification.cs
- StateFinalizationActivity.cs
- DefaultProxySection.cs
- ButtonChrome.cs
- WebBrowserPermission.cs
- IntellisenseTextBox.designer.cs
- NativeMethods.cs
- MergablePropertyAttribute.cs
- EdmRelationshipRoleAttribute.cs
- XPathItem.cs
- EtwTrace.cs
- ListBoxItemAutomationPeer.cs
- ManagementOperationWatcher.cs
- DatePickerAutomationPeer.cs
- WebSysDisplayNameAttribute.cs
- HtmlEncodedRawTextWriter.cs
- HttpWriter.cs
- TextDecorationCollectionConverter.cs
- UdpDiscoveryMessageFilter.cs
- HtmlImage.cs
- ObjectStateFormatter.cs
- ElementNotAvailableException.cs
- LayoutSettings.cs
- CompilerResults.cs
- RSAPKCS1KeyExchangeFormatter.cs
- WebPartConnectionsCancelVerb.cs
- ParseElementCollection.cs
- TransactionScopeDesigner.cs
- GZipDecoder.cs
- ObjectStateFormatter.cs
- Application.cs
- ServicePoint.cs
- MdImport.cs
- AsyncPostBackTrigger.cs
- TreeNodeStyleCollection.cs
- BinaryVersion.cs
- Point3DConverter.cs
- ZoneMembershipCondition.cs
- MDIClient.cs
- TransformDescriptor.cs
- SchemaMerger.cs
- NativeCompoundFileAPIs.cs
- ProjectionAnalyzer.cs
- EntityUtil.cs
- RunClient.cs
- WmiEventSink.cs
- PathBox.cs
- ProxyFragment.cs
- PackUriHelper.cs
- BuildProviderCollection.cs
- DashStyle.cs
- RtfToken.cs
- ValidatorCollection.cs
- OdbcParameterCollection.cs
- SymmetricKeyWrap.cs
- PresentationAppDomainManager.cs
- FactoryId.cs
- GradientStop.cs
- MergeFailedEvent.cs
- HttpSessionStateWrapper.cs
- UDPClient.cs
- PropertyValueChangedEvent.cs
- XPathChildIterator.cs
- SafeArrayRankMismatchException.cs
- MarkupExtensionParser.cs
- DataGridDetailsPresenter.cs
- BamlBinaryWriter.cs
- HttpClientCertificate.cs
- StrokeNodeOperations.cs
- IIS7WorkerRequest.cs
- EmptyImpersonationContext.cs
- ConnectionOrientedTransportChannelFactory.cs
- UnsafeNativeMethods.cs
- Axis.cs
- ToolBar.cs
- HierarchicalDataSourceControl.cs
- MenuCommand.cs
- StorageBasedPackageProperties.cs
- BitmapEffect.cs
- webclient.cs
- MetricEntry.cs
- ObjectDataSourceSelectingEventArgs.cs
- SQLBytesStorage.cs
- SwitchCase.cs
- hresults.cs
- Queue.cs
- DrawListViewColumnHeaderEventArgs.cs
- QueryResponse.cs
- PropertyPathConverter.cs
- VectorCollectionConverter.cs
- SrgsElementFactory.cs
- SymbolEqualComparer.cs
- Expression.cs
- RuntimeIdentifierPropertyAttribute.cs