Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / schema / XmlSchemaAttribute.cs / 1 / XmlSchemaAttribute.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
//-----------------------------------------------------------------------------
using System.Xml.XPath;
using System.Collections;
using System.ComponentModel;
using System.Xml.Serialization;
namespace System.Xml.Schema {
///
///
/// [To be supplied.]
///
public class XmlSchemaAttribute : XmlSchemaAnnotated {
string defaultValue;
string fixedValue;
string name;
string prefix;
XmlSchemaForm form = XmlSchemaForm.None;
XmlSchemaUse use = XmlSchemaUse.None;
XmlQualifiedName refName = XmlQualifiedName.Empty;
XmlQualifiedName typeName = XmlQualifiedName.Empty;
XmlQualifiedName qualifiedName = XmlQualifiedName.Empty;
XmlSchemaSimpleType type;
XmlSchemaSimpleType attributeType;
SchemaAttDef attDef;
///
///
/// [To be supplied.]
///
[XmlAttribute("default")]
[DefaultValue(null)]
public string DefaultValue {
get { return defaultValue; }
set { defaultValue = value; }
}
///
///
/// [To be supplied.]
///
[XmlAttribute("fixed")]
[DefaultValue(null)]
public string FixedValue {
get { return fixedValue; }
set { fixedValue = value; }
}
///
///
/// [To be supplied.]
///
[XmlAttribute("form"), DefaultValue(XmlSchemaForm.None)]
public XmlSchemaForm Form {
get { return form; }
set { form = value; }
}
///
///
/// [To be supplied.]
///
[XmlAttribute("name")]
public string Name {
get { return name; }
set { name = value; }
}
///
///
/// [To be supplied.]
///
[XmlAttribute("ref")]
public XmlQualifiedName RefName {
get { return refName; }
set { refName = (value == null ? XmlQualifiedName.Empty : value); }
}
///
///
/// [To be supplied.]
///
[XmlAttribute("type")]
public XmlQualifiedName SchemaTypeName {
get { return typeName; }
set { typeName = (value == null ? XmlQualifiedName.Empty : value); }
}
///
///
/// [To be supplied.]
///
[XmlElement("simpleType")]
public XmlSchemaSimpleType SchemaType {
get { return type; }
set { type = value; }
}
///
///
/// [To be supplied.]
///
[XmlAttribute("use"), DefaultValue(XmlSchemaUse.None)]
public XmlSchemaUse Use {
get { return use; }
set { use = value; }
}
///
///
/// [To be supplied.]
///
[XmlIgnore]
public XmlQualifiedName QualifiedName {
get { return qualifiedName; }
}
///
///
/// [To be supplied.]
///
[XmlIgnore]
[Obsolete("This property has been deprecated. Please use AttributeSchemaType property that returns a strongly typed attribute type. http://go.microsoft.com/fwlink/?linkid=14202")]
public object AttributeType {
get {
if (attributeType.QualifiedName.Namespace == XmlReservedNs.NsXs) {
return attributeType.Datatype;
}
return attributeType;
}
}
///
///
/// [To be supplied.]
///
[XmlIgnore]
public XmlSchemaSimpleType AttributeSchemaType {
get { return attributeType; }
}
internal XmlReader Validate(XmlReader reader, XmlResolver resolver, XmlSchemaSet schemaSet, ValidationEventHandler valEventHandler) {
if (schemaSet != null) {
XmlReaderSettings readerSettings = new XmlReaderSettings();
readerSettings.ValidationType = ValidationType.Schema;
readerSettings.Schemas = schemaSet;
readerSettings.ValidationEventHandler += valEventHandler;
return new XsdValidatingReader(reader, resolver, readerSettings, this);
}
return null;
}
[XmlIgnore]
internal XmlSchemaDatatype Datatype {
get {
if (attributeType != null) {
return attributeType.Datatype;
}
return null;
}
}
internal void SetQualifiedName(XmlQualifiedName value) {
qualifiedName = value;
}
internal void SetAttributeType(XmlSchemaSimpleType value) {
attributeType = value;
}
internal string Prefix {
get { return prefix; }
}
internal SchemaAttDef AttDef {
get { return attDef; }
set { attDef = value; }
}
internal bool HasDefault {
get { return defaultValue != null; }
}
[XmlIgnore]
internal override string NameAttribute {
get { return Name; }
set { Name = value; }
}
internal override XmlSchemaObject Clone() {
XmlSchemaAttribute newAtt = (XmlSchemaAttribute)MemberwiseClone();
//Deep clone the QNames as these will be updated on chameleon includes
newAtt.refName = this.refName.Clone();
newAtt.typeName = this.typeName.Clone();
return newAtt;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SessionStateModule.cs
- DrawToolTipEventArgs.cs
- AutomationEvent.cs
- SplitContainer.cs
- XPathNodePointer.cs
- SkewTransform.cs
- OdbcStatementHandle.cs
- DirectoryInfo.cs
- WorkflowViewStateService.cs
- DisposableCollectionWrapper.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- MsmqIntegrationBindingElement.cs
- TreeIterator.cs
- TakeOrSkipQueryOperator.cs
- WmlSelectionListAdapter.cs
- XmlExtensionFunction.cs
- CodeGroup.cs
- BrowserDefinition.cs
- TaskFormBase.cs
- SqlNamer.cs
- ServiceDescriptionImporter.cs
- ViewCellRelation.cs
- SelectionHighlightInfo.cs
- ExceptionRoutedEventArgs.cs
- XmlArrayAttribute.cs
- SpeakCompletedEventArgs.cs
- GradientBrush.cs
- HtmlLinkAdapter.cs
- PersonalizableAttribute.cs
- ArrayList.cs
- ChameleonKey.cs
- SemanticKeyElement.cs
- Point3DValueSerializer.cs
- FaultCallbackWrapper.cs
- Polygon.cs
- JournalEntry.cs
- Types.cs
- RowVisual.cs
- MetadataCache.cs
- DocumentViewerAutomationPeer.cs
- BuildProvider.cs
- SafeRightsManagementHandle.cs
- DecimalConverter.cs
- CompilerGeneratedAttribute.cs
- BinaryNegotiation.cs
- EntityClientCacheEntry.cs
- MSAANativeProvider.cs
- SystemInfo.cs
- ExtensionSimplifierMarkupObject.cs
- IdentityNotMappedException.cs
- SystemIdentity.cs
- Scripts.cs
- PagedDataSource.cs
- BackStopAuthenticationModule.cs
- SerializationException.cs
- Nullable.cs
- ReflectTypeDescriptionProvider.cs
- ProfileManager.cs
- SystemBrushes.cs
- PathStreamGeometryContext.cs
- RoutedEvent.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- CreateCardRequest.cs
- DockProviderWrapper.cs
- MetadataImporterQuotas.cs
- ChangeNode.cs
- RegexParser.cs
- JsonFaultDetail.cs
- DataKey.cs
- CounterSampleCalculator.cs
- ExtensionSimplifierMarkupObject.cs
- WebPartUserCapability.cs
- XPathCompileException.cs
- DataGridViewSelectedRowCollection.cs
- EventLogPermissionEntry.cs
- DBCommand.cs
- IgnoreFileBuildProvider.cs
- SelectionProviderWrapper.cs
- ExceptionWrapper.cs
- MsmqAppDomainProtocolHandler.cs
- ConfigurationSettings.cs
- InputLanguageProfileNotifySink.cs
- HttpConfigurationSystem.cs
- RelationalExpressions.cs
- FloatUtil.cs
- _ListenerResponseStream.cs
- MaskedTextBoxDesigner.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- SqlSupersetValidator.cs
- NullPackagingPolicy.cs
- EntitySetBase.cs
- HttpResponseHeader.cs
- PerspectiveCamera.cs
- ScrollBar.cs
- XsltCompileContext.cs
- METAHEADER.cs
- TemplateColumn.cs
- LinkGrep.cs
- FastPropertyAccessor.cs
- UIPermission.cs