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 / Dom / XmlDocumentType.cs / 1 / XmlDocumentType.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
//-----------------------------------------------------------------------------
namespace System.Xml {
using System.Xml.Schema;
using System.Diagnostics;
// Contains information associated with the document type declaration.
public class XmlDocumentType : XmlLinkedNode {
string name;
string publicId;
string systemId;
string internalSubset;
bool namespaces;
XmlNamedNodeMap entities;
XmlNamedNodeMap notations;
// parsed DTD
SchemaInfo schemaInfo;
protected internal XmlDocumentType( string name, string publicId, string systemId, string internalSubset, XmlDocument doc ) : base( doc ) {
this.name = name;
this.publicId = publicId;
this.systemId = systemId;
this.namespaces = true;
this.internalSubset = internalSubset;
Debug.Assert( doc != null );
if ( !doc.IsLoading ) {
doc.IsLoading = true;
XmlLoader loader = new XmlLoader();
loader.ParseDocumentType( this ); //will edit notation nodes, etc.
doc.IsLoading = false;
}
}
// Gets the name of the node.
public override string Name {
get { return name;}
}
// Gets the name of the current node without the namespace prefix.
public override string LocalName {
get { return name;}
}
// Gets the type of the current node.
public override XmlNodeType NodeType {
get { return XmlNodeType.DocumentType;}
}
// Creates a duplicate of this node.
public override XmlNode CloneNode(bool deep) {
Debug.Assert( OwnerDocument != null );
return OwnerDocument.CreateDocumentType( name, publicId, systemId, internalSubset );
}
//
// Microsoft extensions
//
// Gets a value indicating whether the node is read-only.
public override bool IsReadOnly {
get {
return true; // Make entities and notations readonly
}
}
// Gets the collection of XmlEntity nodes declared in the document type declaration.
public XmlNamedNodeMap Entities {
get {
if (entities == null)
entities = new XmlNamedNodeMap( this );
return entities;
}
}
// Gets the collection of XmlNotation nodes present in the document type declaration.
public XmlNamedNodeMap Notations {
get {
if (notations == null)
notations = new XmlNamedNodeMap( this );
return notations;
}
}
//
// DOM Level 2
//
// Gets the value of the public identifier on the DOCTYPE declaration.
public string PublicId {
get { return publicId;}
}
// Gets the value of
// the system identifier on the DOCTYPE declaration.
public string SystemId {
get { return systemId;}
}
// Gets the entire value of the DTD internal subset
// on the DOCTYPE declaration.
public string InternalSubset {
get { return internalSubset;}
}
internal bool ParseWithNamespaces {
get { return namespaces; }
set { namespaces = value; }
}
// Saves the node to the specified XmlWriter.
public override void WriteTo(XmlWriter w) {
w.WriteDocType( name, publicId, systemId, internalSubset );
}
// Saves all the children of the node to the specified XmlWriter.
public override void WriteContentTo(XmlWriter w) {
// Intentionally do nothing
}
internal SchemaInfo DtdSchemaInfo {
get {
return schemaInfo;
}
set {
schemaInfo = value;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
//-----------------------------------------------------------------------------
namespace System.Xml {
using System.Xml.Schema;
using System.Diagnostics;
// Contains information associated with the document type declaration.
public class XmlDocumentType : XmlLinkedNode {
string name;
string publicId;
string systemId;
string internalSubset;
bool namespaces;
XmlNamedNodeMap entities;
XmlNamedNodeMap notations;
// parsed DTD
SchemaInfo schemaInfo;
protected internal XmlDocumentType( string name, string publicId, string systemId, string internalSubset, XmlDocument doc ) : base( doc ) {
this.name = name;
this.publicId = publicId;
this.systemId = systemId;
this.namespaces = true;
this.internalSubset = internalSubset;
Debug.Assert( doc != null );
if ( !doc.IsLoading ) {
doc.IsLoading = true;
XmlLoader loader = new XmlLoader();
loader.ParseDocumentType( this ); //will edit notation nodes, etc.
doc.IsLoading = false;
}
}
// Gets the name of the node.
public override string Name {
get { return name;}
}
// Gets the name of the current node without the namespace prefix.
public override string LocalName {
get { return name;}
}
// Gets the type of the current node.
public override XmlNodeType NodeType {
get { return XmlNodeType.DocumentType;}
}
// Creates a duplicate of this node.
public override XmlNode CloneNode(bool deep) {
Debug.Assert( OwnerDocument != null );
return OwnerDocument.CreateDocumentType( name, publicId, systemId, internalSubset );
}
//
// Microsoft extensions
//
// Gets a value indicating whether the node is read-only.
public override bool IsReadOnly {
get {
return true; // Make entities and notations readonly
}
}
// Gets the collection of XmlEntity nodes declared in the document type declaration.
public XmlNamedNodeMap Entities {
get {
if (entities == null)
entities = new XmlNamedNodeMap( this );
return entities;
}
}
// Gets the collection of XmlNotation nodes present in the document type declaration.
public XmlNamedNodeMap Notations {
get {
if (notations == null)
notations = new XmlNamedNodeMap( this );
return notations;
}
}
//
// DOM Level 2
//
// Gets the value of the public identifier on the DOCTYPE declaration.
public string PublicId {
get { return publicId;}
}
// Gets the value of
// the system identifier on the DOCTYPE declaration.
public string SystemId {
get { return systemId;}
}
// Gets the entire value of the DTD internal subset
// on the DOCTYPE declaration.
public string InternalSubset {
get { return internalSubset;}
}
internal bool ParseWithNamespaces {
get { return namespaces; }
set { namespaces = value; }
}
// Saves the node to the specified XmlWriter.
public override void WriteTo(XmlWriter w) {
w.WriteDocType( name, publicId, systemId, internalSubset );
}
// Saves all the children of the node to the specified XmlWriter.
public override void WriteContentTo(XmlWriter w) {
// Intentionally do nothing
}
internal SchemaInfo DtdSchemaInfo {
get {
return schemaInfo;
}
set {
schemaInfo = value;
}
}
}
}
// 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
- AsmxEndpointPickerExtension.cs
- DataGridCell.cs
- OdbcStatementHandle.cs
- DbgUtil.cs
- SqlGatherProducedAliases.cs
- Listbox.cs
- ParseNumbers.cs
- UTF7Encoding.cs
- DataGridTextBoxColumn.cs
- cookie.cs
- TableColumnCollection.cs
- RegistryDataKey.cs
- Attributes.cs
- CallbackValidator.cs
- InvokeMethodActivityDesigner.cs
- Scheduling.cs
- OleStrCAMarshaler.cs
- ConstructorNeedsTagAttribute.cs
- ListViewGroupItemCollection.cs
- MILUtilities.cs
- ReadOnlyNameValueCollection.cs
- ValidationUtility.cs
- RunInstallerAttribute.cs
- DefaultDiscoveryService.cs
- UnsafeNativeMethods.cs
- SqlDataSourceTableQuery.cs
- ToggleButton.cs
- Polygon.cs
- ListItemViewAttribute.cs
- PersonalizationDictionary.cs
- DataSourceXmlSubItemAttribute.cs
- Rect3D.cs
- CookieProtection.cs
- MemoryStream.cs
- Pair.cs
- Viewport3DAutomationPeer.cs
- XmlByteStreamReader.cs
- ConfigurationCollectionAttribute.cs
- ListViewItemCollectionEditor.cs
- VariableQuery.cs
- TypeUsageBuilder.cs
- PipeStream.cs
- Label.cs
- CollectionMarkupSerializer.cs
- LayoutDump.cs
- OleDbStruct.cs
- BaseCodePageEncoding.cs
- ServiceHostingEnvironmentSection.cs
- DefaultAsyncDataDispatcher.cs
- GacUtil.cs
- WebScriptEndpointElement.cs
- SupportsEventValidationAttribute.cs
- JoinGraph.cs
- SortedList.cs
- ValidatorCompatibilityHelper.cs
- DbMetaDataColumnNames.cs
- ExceptionHandlersDesigner.cs
- BrowserInteropHelper.cs
- SmtpCommands.cs
- SpeakInfo.cs
- ToolStripInSituService.cs
- ManagementEventArgs.cs
- UserInitiatedNavigationPermission.cs
- DataViewListener.cs
- NavigationEventArgs.cs
- ModifierKeysValueSerializer.cs
- CommandDevice.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- OutputCacheSettingsSection.cs
- FrameworkElementFactory.cs
- ActivitySurrogateSelector.cs
- LinqDataSourceView.cs
- RowVisual.cs
- SendMailErrorEventArgs.cs
- OdbcDataAdapter.cs
- ErrorHandler.cs
- WindowsNonControl.cs
- OperationInvokerBehavior.cs
- AsyncStreamReader.cs
- MappableObjectManager.cs
- StylusOverProperty.cs
- StrokeCollection2.cs
- LinqDataSourceHelper.cs
- ResourceReader.cs
- DebugView.cs
- listviewsubitemcollectioneditor.cs
- DrawListViewColumnHeaderEventArgs.cs
- MutableAssemblyCacheEntry.cs
- IndexObject.cs
- FusionWrap.cs
- ValueOfAction.cs
- BasicHttpMessageSecurityElement.cs
- ContainsRowNumberChecker.cs
- WmlListAdapter.cs
- LineServicesCallbacks.cs
- HttpListenerContext.cs
- TimeoutValidationAttribute.cs
- __Filters.cs
- ListBoxItem.cs
- X509ScopedServiceCertificateElement.cs