Edit

Share via


XDocumentType Class

Definition

Represents an XML Document Type Definition (DTD).

public ref class XDocumentType : System::Xml::Linq::XNode
public class XDocumentType : System.Xml.Linq.XNode
type XDocumentType = class
    inherit XNode
Public Class XDocumentType
Inherits XNode
Inheritance
XDocumentType

Remarks

Data Type Definitions (DTD) in XML are a way to do the following:

  • Validate XML trees to a limited extent.

  • Expand entities, which is a form of text replacement.

  • Supply default attributes.

This class represents the XML concept of a DTD.

DTD support in LINQ to XML is limited.

LINQ to XML will expand internal entities by default, but it will not resolve external entity references unless an XmlReader with an associated XmlResolver is used to load the XML tree.

LINQ to XML will not validate a document against a DTD, but you can use a validating XmlReader to perform DTD validation if necessary.

To validate an LINQ to XML tree against an XML schema, use the Validate method.

When a document contains entity references that are defined in a DTD, the references are expanded upon creation of the XML tree. However, when you serialize or save the XML tree, the content of the expanded entities is preserved; the entity references are not.

Default attributes from the DTD will be materialized as regular attributes in the XML tree. After a default attribute from the DTD is materialized, there is no way to determine that the attribute was a default attribute from the DTD.

You can populate an XML tree with an XML document that contains an internal DTD. The XML tree will then contain a DocumentType node. When you serialize or save the tree, the internal DTD will also be saved as part of the document.

Constructors

XDocumentType(String, String, String, String)

Initializes an instance of the XDocumentType class.

XDocumentType(XDocumentType)

Initializes an instance of the XDocumentType class from another XDocumentType object.

Properties

BaseUri

Gets the base URI for this XObject.

(Inherited from XObject)
Document

Gets the XDocument for this XObject.

(Inherited from XObject)
InternalSubset

Gets or sets the internal subset for this Document Type Definition (DTD).

Name

Gets or sets the name for this Document Type Definition (DTD).

NextNode

Gets the next sibling node of this node.

(Inherited from XNode)
NodeType

Gets the node type for this node.

Parent

Gets the parent XElement of this XObject.

(Inherited from XObject)
PreviousNode

Gets the previous sibling node of this node.

(Inherited from XNode)
PublicId

Gets or sets the public identifier for this Document Type Definition (DTD).

SystemId

Gets or sets the system identifier for this Document Type Definition (DTD).

Methods

AddAfterSelf(Object)

Adds the specified content immediately after this node.

(Inherited from XNode)
AddAfterSelf(Object[])

Adds the specified content immediately after this node.

(Inherited from XNode)
AddAnnotation(Object)

Adds an object to the annotation list of this XObject.

(Inherited from XObject)
AddBeforeSelf(Object)

Adds the specified content immediately before this node.

(Inherited from XNode)
AddBeforeSelf(Object[])

Adds the specified content immediately before this node.

(Inherited from XNode)
Ancestors()

Returns a collection of the ancestor elements of this node.

(Inherited from XNode)
Ancestors(XName)

Returns a filtered collection of the ancestor elements of this node. Only elements that have a matching XName are included in the collection.

(Inherited from XNode)
Annotation(Type)

Gets the first annotation object of the specified type from this XObject.

(Inherited from XObject)
Annotation<T>()

Gets the first annotation object of the specified type from this XObject.

(Inherited from XObject)
Annotations(Type)

Gets a collection of annotations of the specified type for this XObject.

(Inherited from XObject)
Annotations<T>()

Gets a collection of annotations of the specified type for this XObject.

(Inherited from XObject)
CreateReader()

Creates an XmlReader for this node.

(Inherited from XNode)
CreateReader(ReaderOptions)

Creates an XmlReader with the options specified by the readerOptions parameter.

(Inherited from XNode)
ElementsAfterSelf()

Returns a collection of the sibling elements after this node, in document order.

(Inherited from XNode)
ElementsAfterSelf(XName)

Returns a filtered collection of the sibling elements after this node, in document order. Only elements that have a matching XName are included in the collection.

(Inherited from XNode)
ElementsBeforeSelf()

Returns a collection of the sibling elements before this node, in document order.

(Inherited from XNode)
ElementsBeforeSelf(XName)

Returns a filtered collection of the sibling elements before this node, in document order. Only elements that have a matching XName are included in the collection.

(Inherited from XNode)
Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
IsAfter(XNode)

Determines if the current node appears after a specified node in terms of document order.

(Inherited from XNode)
IsBefore(XNode)

Determines if the current node appears before a specified node in terms of document order.

(Inherited from XNode)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
NodesAfterSelf()

Returns a collection of the sibling nodes after this node, in document order.

(Inherited from XNode)
NodesBeforeSelf()

Returns a collection of the sibling nodes before this node, in document order.

(Inherited from XNode)
Remove()

Removes this node from its parent.

(Inherited from XNode)
RemoveAnnotations(Type)

Removes the annotations of the specified type from this XObject.

(Inherited from XObject)
RemoveAnnotations<T>()

Removes the annotations of the specified type from this XObject.

(Inherited from XObject)
ReplaceWith(Object)

Replaces this node with the specified content.

(Inherited from XNode)
ReplaceWith(Object[])

Replaces this node with the specified content.

(Inherited from XNode)
ToString()

Returns the indented XML for this node.

(Inherited from XNode)
ToString(SaveOptions)

Returns the XML for this node, optionally disabling formatting.

(Inherited from XNode)
WriteTo(XmlWriter)

Write this XDocumentType to an XmlWriter.

WriteToAsync(XmlWriter, CancellationToken)

Writes this XDocumentType to the specified XmlWriter.

WriteToAsync(XmlWriter, CancellationToken)

Writes the current node to an XmlWriter.

(Inherited from XNode)

Events

Changed

Raised when this XObject or any of its descendants have changed.

(Inherited from XObject)
Changing

Raised when this XObject or any of its descendants are about to change.

(Inherited from XObject)

Explicit Interface Implementations

IXmlLineInfo.HasLineInfo()

Gets a value indicating whether or not this XObject has line information.

(Inherited from XObject)
IXmlLineInfo.LineNumber

Gets the line number that the underlying XmlReader reported for this XObject.

(Inherited from XObject)
IXmlLineInfo.LinePosition

Gets the line position that the underlying XmlReader reported for this XObject.

(Inherited from XObject)

Extension Methods

CreateNavigator(XNode)

Creates an XPathNavigator for an XNode.

CreateNavigator(XNode, XmlNameTable)

Creates an XPathNavigator for an XNode. The XmlNameTable enables more efficient XPath expression processing.

XPathEvaluate(XNode, String)

Evaluates an XPath expression.

XPathEvaluate(XNode, String, IXmlNamespaceResolver)

Evaluates an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver.

XPathSelectElement(XNode, String)

Selects an XElement using a XPath expression.

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

Selects an XElement using a XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver.

XPathSelectElements(XNode, String)

Selects a collection of elements using an XPath expression.

XPathSelectElements(XNode, String, IXmlNamespaceResolver)

Selects a collection of elements using an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver.

ToXPathNavigable(XNode)

Returns an accessor that allows you to navigate and edit the specified XNode.

Applies to

See also