Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LinqDataSourceSelectEventArgs.cs
- Byte.cs
- SqlCharStream.cs
- ScrollItemPattern.cs
- ZipIOLocalFileHeader.cs
- StreamAsIStream.cs
- SyndicationDeserializer.cs
- TargetException.cs
- InternalConfigEventArgs.cs
- ConfigurationSection.cs
- mansign.cs
- DecoderExceptionFallback.cs
- ReferencedCollectionType.cs
- LessThan.cs
- GlyphElement.cs
- NullableDecimalSumAggregationOperator.cs
- __Filters.cs
- AsyncOperation.cs
- NodeFunctions.cs
- EntityDesignPluralizationHandler.cs
- ContextQuery.cs
- MatrixCamera.cs
- ScriptingRoleServiceSection.cs
- UnrecognizedAssertionsBindingElement.cs
- FontNamesConverter.cs
- GlyphInfoList.cs
- RpcCryptoRequest.cs
- AdvancedBindingEditor.cs
- BuildProviderCollection.cs
- TextLineResult.cs
- GridPattern.cs
- XPathBinder.cs
- WorkerRequest.cs
- ParameterCollection.cs
- CompoundFileIOPermission.cs
- NameScope.cs
- TraceLevelStore.cs
- TextParaClient.cs
- DocumentOutline.cs
- SizeValueSerializer.cs
- Wizard.cs
- HtmlInputRadioButton.cs
- PassportIdentity.cs
- StylusTouchDevice.cs
- InternalConfigRoot.cs
- XmlDictionaryWriter.cs
- HtmlElementErrorEventArgs.cs
- Polygon.cs
- XmlObjectSerializerWriteContextComplex.cs
- Margins.cs
- WebAdminConfigurationHelper.cs
- HMACSHA384.cs
- SqlUtils.cs
- ClonableStack.cs
- GeneralTransformGroup.cs
- IndexedGlyphRun.cs
- StorageSetMapping.cs
- AttributeCollection.cs
- XmlWrappingReader.cs
- ObjectView.cs
- AnimationClock.cs
- Root.cs
- TextOutput.cs
- DbgUtil.cs
- shaperfactoryquerycacheentry.cs
- ModelTreeEnumerator.cs
- DesignerActionUI.cs
- SafeProcessHandle.cs
- WebEventCodes.cs
- precedingsibling.cs
- SimpleWorkerRequest.cs
- XmlSubtreeReader.cs
- StylusPointProperty.cs
- FlowDocumentScrollViewer.cs
- CompModHelpers.cs
- MobileControlPersister.cs
- AttachedPropertyInfo.cs
- DataGridViewSelectedRowCollection.cs
- VisualStyleRenderer.cs
- CodePrimitiveExpression.cs
- URL.cs
- FormViewPagerRow.cs
- SiteMapNodeCollection.cs
- ToolStripPanelRenderEventArgs.cs
- RegexGroupCollection.cs
- StorageMappingItemCollection.cs
- BamlTreeNode.cs
- NavigateEvent.cs
- HelloOperationCD1AsyncResult.cs
- ControlValuePropertyAttribute.cs
- UnsafeNativeMethods.cs
- DbConnectionPoolIdentity.cs
- LogStream.cs
- ColorDialog.cs
- DataControlFieldCell.cs
- TreeChangeInfo.cs
- BulletedListDesigner.cs
- QilXmlWriter.cs
- AnnotationComponentManager.cs
- ThreadStaticAttribute.cs