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
- SortedList.cs
- EditorPartDesigner.cs
- remotingproxy.cs
- MatrixAnimationBase.cs
- UnionCqlBlock.cs
- SmtpNtlmAuthenticationModule.cs
- WindowsListViewItem.cs
- _NegoState.cs
- StorageEndPropertyMapping.cs
- StylusOverProperty.cs
- AnimatedTypeHelpers.cs
- QueryPrefixOp.cs
- DocumentScope.cs
- DataListItemCollection.cs
- HatchBrush.cs
- XPathMultyIterator.cs
- ComplexPropertyEntry.cs
- IdentityHolder.cs
- CollectionBase.cs
- MemberHolder.cs
- GPRECT.cs
- QueryContinueDragEvent.cs
- WebScriptClientGenerator.cs
- TransactionBridgeSection.cs
- DataGridViewLinkCell.cs
- TemplateBindingExpression.cs
- Material.cs
- RoutedEventHandlerInfo.cs
- GridErrorDlg.cs
- StringConverter.cs
- MessageBodyDescription.cs
- sqlmetadatafactory.cs
- Encoding.cs
- DocumentSchemaValidator.cs
- HttpListenerException.cs
- DetailsViewPagerRow.cs
- ModuleBuilder.cs
- UpdatePanelTrigger.cs
- IImplicitResourceProvider.cs
- Aes.cs
- KoreanCalendar.cs
- KnownTypesProvider.cs
- TransformValueSerializer.cs
- _CommandStream.cs
- SizeF.cs
- Point3DAnimationUsingKeyFrames.cs
- SchemaExporter.cs
- CLSCompliantAttribute.cs
- SqlFunctions.cs
- AppSettingsSection.cs
- ZipIOLocalFileBlock.cs
- SafeCryptContextHandle.cs
- AsymmetricSignatureFormatter.cs
- HebrewCalendar.cs
- DataControlCommands.cs
- CodeConstructor.cs
- SqlDataSourceAdvancedOptionsForm.cs
- EventProxy.cs
- TargetConverter.cs
- ConfigDefinitionUpdates.cs
- PropertyToken.cs
- Parameter.cs
- Calendar.cs
- BinHexDecoder.cs
- ListViewCancelEventArgs.cs
- LocalsItemDescription.cs
- NullableDoubleAverageAggregationOperator.cs
- SafeSystemMetrics.cs
- HttpModule.cs
- CompositeActivityTypeDescriptor.cs
- WebFormsRootDesigner.cs
- SignatureGenerator.cs
- OutOfProcStateClientManager.cs
- securitycriticaldataformultiplegetandset.cs
- SpellerError.cs
- GPPOINTF.cs
- DataRecordInfo.cs
- QueryInterceptorAttribute.cs
- DataColumnPropertyDescriptor.cs
- Version.cs
- RootBrowserWindowAutomationPeer.cs
- SoapTypeAttribute.cs
- D3DImage.cs
- SqlConnection.cs
- StylusCaptureWithinProperty.cs
- PaperSource.cs
- ArrayWithOffset.cs
- LocatorGroup.cs
- QilGeneratorEnv.cs
- Rotation3D.cs
- DesignBindingConverter.cs
- VectorAnimationUsingKeyFrames.cs
- NameScopePropertyAttribute.cs
- SortExpressionBuilder.cs
- TransactionInformation.cs
- StructuredTypeEmitter.cs
- Type.cs
- ConditionCollection.cs
- DateTimeUtil.cs
- CmsUtils.cs