DocumentFormat.OpenXml.Framework Represents the mc:AlternateContent element of markup compatibility. Initializes a new instance of the AlternateContent class. Initializes a new instance of the AlternateContent class by using the supplied IEnumerable elements. Represents all child elements. Initializes a new instance of the AlternateContent class by using the supplied OpenXmlElement elements. Represents all child elements. The outer XML of the element. Initializes a new instance of the AlternateContent class by using the supplied string. Gets a value that represents the markup compatibility namespace. Gets a value that represents the tag name of the AlternateContent element. Appends a new child of type T:DocumentFormat.OpenXml.AlternateContentChoice to the current element. Appends a new child of type T:DocumentFormat.OpenXml.AlternateContentFallback to the current element. Defines an mc:Choice element in mc:AlternateContent. Initializes a new instance of the AlternateContentChoice class. Initializes a new instance of the AlternateContentChoice class by using the supplied IEnumerable elements. Represents all child elements. Initializes a new instance of the AlternateContentChoice class by using the supplied OpenXmlElement elements. Represents all child elements. The outer XML of the element. Initializes a new instance of the AlternateContentChoice class by using the supplied string. Gets a value that represents the tag name of the Choice element. Gets the local name of the Choice element. Gets or sets a whitespace-delimited list of namespace prefixes that identify the namespaces a markup consumer needs in order to understand and select that Choice and process the content. The cloned node. When a node is overridden in a derived class, CloneNode creates a duplicate of the node. True to recursively clone the subtree under the specified node; False to clone only the node itself. Defines a mc:Fallback element in mc:AlternateContent. Initializes a new instance of the AlternateContentFallback class. Initializes a new instance of the AlternateContentFallback class by using the supplied IEnumerable elements. Represents all child elements. Initializes a new instance of the AlternateContentFallback class by using the supplied OpenXmlElement elements. Represents all child elements. The outer XML of the element. Initializes a new instance of the AlternateContentFallback class by using the supplied string. Gets a value that represents the tag name of the AlternateContentFallback element. The cloned node. When a node is overridden in a derived class, CloneNode creates a duplicate of the node. True to recursively clone the subtree under the specified node; False to clone only the node itself. A delegate for initializing a package. Defines a builder to create an initialization pipeline for a . Type of the . Gets a key/value collection that can be used to share data between middleware. Add middleware to the package builder. The middleware to add. The . Create a copy of the builder that will be independent of the original, but retains the existing middleware and properties. A new . Builds the pipeline to initialize the package. Additional calls to this will return the cached pipeline unless more middleware has been added. The a with the registered middleware. Defines a factory to create a . Type of the . Create an instance of . Initializer for the package. The created package. A collection of extension methods for opening packages Opens the with the given . Opens the with the given . Opens the . Adds the to the builder for initializing a package. An enum that describes how a package is going to be opened Indicates that a new package will be created. Indicates that a package will be opened in read mode. Indicates that a package will be opened in read/write mode. A collection of extension methods to track schema usage This method enables tracking ability to see what parts and roots are created. In order to better support AOT scenarios, an empty package with no knowledge of any parts would be constructed and required parts would be added via additional builders. The debug information gathered with this may be helpful in identifying which parts are required to open packages. Gets the shared for the builder, or creates a new one if it is not available. A collection of extensions to add a template as part of the . Adds a template to the current . Represents arguments for element events. Initializes a new instance of the ElementEventArgs class using the supplied elements. The element that caused the event. The parent element of the element that caused the event. Gets the element that caused the event. Gets the parent element of the element that caused the event. Equality comparer for determining value equality for . Gets the default equality comparer. Creates a based on the given options./> The options defining equality. Gets the options regulating how equality is defined. Determines equality for two given . First object. Second object. Handles checking of all options that changes the behavior of equality based on options in . Calculates a hashcode based on the given object. The object to get a hashcode for. Options defining the behavior of equality for . Gets or sets a value indicating whether extended attributes should be considered when determining equality. Gets or sets a value indicating whether mC attributes should be considered when determining equality. Gets or sets a value indicating whether namespace should alone be used when comparing identity of elements, skipping prefix lookup to improve performance. Gets or sets a value indicating whether elements must be parsed which ensures order of schema is used instead of input ordering. Adds an object to the annotation list of this collection. The annotation to add to this collection. Get the first annotation object of the specified type from the current OpenXmlElement element. The type of the annotation to retrieve. The first annotation object with the specified type. Extensions for using Register a disposable for dispose. Type of event used for change notification. The default type when there is no event. When the item is closed. When the item is closing. When the item is deleting. When the item is deleted. When the item is being created. When the item is created. When the item is being removed. When the item is removed. When the item is reloading. When the item is reloaded. When the item is being saved. When the item is saved. When the item is being added. When the item is added. Represents a collection of features. Initializes a new instance of . Initializes a new instance of with the specified initial capacity. The initial number of elements that the collection can contain. is less than 0 Initializes a new instance of with the specified defaults. The feature defaults. Marks the collection as readonly or not. Holder for feature event args. The type of the argument. Initializes a new instance of the struct. Type of change. Argument of change. Gets the event type. Gets the argument. Methods to help with using . Gets a required feature from the supplied collection. Feature type. Features collection to search. The available feature. Feature to track items to dispose when the containing package or part is closed. Register an action to be called on package or part close. Disposable to be called when a package or part is closed. Feature interface that defines the type of a document and allows for changing it. Type that represents the document type. Gets or sets the type of the document. Gets the content type for a given document type. Document type. The content type if known, otherwise null Gets the document type for a given content type. The content type. The document type if known, otherwise null Provides logic to change one type to another. Will likely affect . Type to change the document to. Represents a collection of features. Gets a value indicating whether the collection can be modified. Gets a value that is incremented for each modification and can be used to verify cached results. Gets or sets a given feature. Setting a null value removes the feature. The requested feature, or null if it is not present. Retrieves the requested feature from the collection. The feature key. The requested feature, or null if it is not present. Sets the given feature in the collection. The feature key. The feature value. Interface for general feature eventing. Type of the argument. Event to register to listen to any changes. Attempts to get the Transitional equivalent namespace. Namespace to compare. An equivalent namespace in Transitional. Returns true when a Transitional equivalent namespace is found, returns false when it is not found. Attempts to get the Transitional equivalent relationship. Namespace to compare. An equivalent relationship in Transitional. Returns true when a Transitional equivalent relationship is found, returns false when it is not. Try to get the expected namespace if the passed namespace is an obsolete. Namespace to compare. The expected namespace when the passed namespace is an obsolete. True when the passed namespace is an obsolete and the expected namespace found A feature to track events around the package. A feature to access the backing data. Gets the . Gets the capabilities of the package. Reloads the package. File mode to use with reloaded package. If absent, will use original mode. File access to use with the reloaded package. If absent, will use original access. An initializer for a package. Initializes a package. Package to initialize. A feature to access the current package part. Gets the current package part. A feature to track events around parts. A feature that defines what extensions are used for a given part content type Registers a extension to be used for a content type. Conent type to register extension for. Extension to register. Attempts to retrieve a registered extension for the content type. Content type to find extension for. Registered extension. Whether an extension was found. Adds a part to the relationship collection. If an is provided, it will be used, otherwise a random id will be generated. Part to add to relationship collection. Id of part if supplied. A feature to track events around parts. Interface to raise events for . Type of argument. Raise event on underlying event. Type of event. Argument of event. Feature to describe the schema elements that have been used. Gets a collection of root elements that have been requested. Gets a collection of relationships that have been requested. Values to query the capabilities of a package. No capabilities Capability that indicates that the package can be saved. Capability that indicates that the package can be reloaded. Capability that indicates that the package will return the same part and relationship for each call. Capability that indicates that the package can handle writing large part streams without memory overhead. Capability that indicates that the package can handle malformed uri Extensions to add events around lifecycle. Adds a feature to track eventing for a package lifecycle events. Package to add the feature to. Extensions to add events around parts. Adds a feature to track eventing for a package creating or removing parts. Package to add the feature to. Extensions to add events around part roots. Adds a feature to track eventing for package life cycle events. Container to add the feature to. Called from constructors of derived parts to initialize the IFixedContentTypePart interface. All derived parts must be parts that have fixed content type. Represents an internal audio reference relationship to a MediaDataPart element. Represents the fixed value of the RelationshipType. Gets the source relationship type for an audio reference. Initializes a new instance of the AudioReferenceRelationship using the supplied MediaDataPart and relationship ID. The target DataPart of the reference relationship. The relationship ID. Gets the relationship type for an audio reference. A mutable instance of a package relationship used while building the final relationship Gets or sets the id of the relationship. Gets or sets the relationship type. Gets or sets the source URI. Gets or sets the target mode. Gets or sets the target uri. Extensions to enable package cloning. Creates an editable clone of this OpenXml package, opened on a with expandable capacity and using default OpenSettings. The cloned OpenXml package. Creates a clone of this OpenXml package, opened on the given stream. The cloned OpenXml package is opened with the same settings, i.e., FileOpenAccess and OpenSettings, as this OpenXml package. The IO stream on which to open the OpenXml package. The cloned OpenXml package. Creates a clone of this OpenXml package, opened on the given stream. The cloned OpenXml package is opened with the same OpenSettings as this OpenXml package. The IO stream on which to open the OpenXml package. In ReadWrite mode. False for Read only mode. The cloned OpenXml package. Creates a clone of this OpenXml package, opened on the given stream. The IO stream on which to open the OpenXml package. In ReadWrite mode. False for Read only mode. The advanced settings for opening a document. The cloned OpenXml package. Creates a clone of this OpenXml package opened from the given file (which will be created by cloning this OpenXml package). The cloned OpenXml package is opened with the same settings, i.e., FileOpenAccess and OpenSettings, as this OpenXml package. The path and file name of the target document. The cloned document. Creates a clone of this OpenXml package opened from the given file (which will be created by cloning this OpenXml package). The cloned OpenXml package is opened with the same OpenSettings as this OpenXml package. The path and file name of the target document. In ReadWrite mode. False for Read only mode. The cloned document. Creates a clone of this OpenXml package opened from the given file (which will be created by cloning this OpenXml package). The path and file name of the target document. In ReadWrite mode. False for Read only mode. The advanced settings for opening a document. The cloned document. Creates a clone of this OpenXml package, opened on the specified instance of Package. The clone will be opened with the same OpenSettings as this OpenXml package. The specified instance of Package. The cloned OpenXml package. Creates a clone of this OpenXml package, opened on the specified instance of Package. The specified instance of Package. The advanced settings for opening a document. The cloned OpenXml package. An enum that describes the version to keep compatibility with. Use all the latest version behavior. Maintain compatibility with v2.20 if possible Maintain compatibility with v3.0 if possible Represents the type of part referenced by a . Gets the OpenXmlPackage which contains the current part. Gets the internal part path in the package. Enumerates all s that reference the current data part. Returns the content data stream of the current part. The content data stream of the current part. Returns the content stream that was opened using a specified I/O FileMode. The I/O mode to be used to open the content stream. The content stream of the part. Returns the content stream of the part that was opened by using a specified FileMode and FileAccess. The I/O mode to be used to open the content stream. The access permissions to be used to open the content stream. The content stream of the part. Feeds data into the part stream. The stream of the part will be truncated at first. The source stream to be read from. Thrown when is a null reference. Gets the content type (MIME type) of the data in the part. Gets the internal metro PackagePart. Gets the internal path to be used for the part name. Gets the file base name to be used for the part name in the package. Gets the file extension to be used for the part in the package. Indicates whether the object is destroyed (deleted from the package). Represents an internal reference relationship to a DataPart element. Initializes a new instance of the DataPartReferenceRelationship class using the supplied DataPart, relationship type, and relationship ID. The target DataPart of the reference relationship. The relationship type of the reference relationship. The relationship ID. Gets the referenced target DataPart. Initializes the current instance of the DataPartRelationship class. The owner that holds the . The target DataPart of the reference relationship. The relationship type of the reference relationship. The relationship ID. Creates a new instance of the DataPartRelationship class based on the relationship type. The owner that holds the . The target DataPart of the reference relationship. The relationship type of the reference relationship. The relationship ID. Defines a class for all extended parts (Application specific part). Initialize a new instance of ExtendedPart. Whether this part is available in a specific version of Office Application. The Office file format version. Always returns false. Adds a new part. The part to be added. A unique relationship identifier. null to create new id. The added part. May diff with the passed in part. Thrown when "subPart" is null reference. Thrown when the part is no allowed to be added. Thrown when one instance of same type part already exists and multiple instance of that type is not allowed. Initialize a new created part The part to be initialized. The content type of the part. The relationship id. Represents an external relationship. Initializes a new instance of the ExternalRelationship. The target uri of the relationship. The relationship type. The relationship ID. Extensions to convert to and from FlatOpc Converts an OpenXml package in OPC format to string in Flat OPC format. The OpenXml package in Flat OPC format. Converts an OpenXml package in OPC format to an in Flat OPC format. Gets the 's XML or binary contents as an . The package part. The collection of AlternativeFormatInputPart URIs. The corresponding . Represents a hyperlink relationship. The source relationship type for hyperlink. Defined as "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink". Initializes a new instance of the HyperlinkRelationship. The target uri of the hyperlink relationship. The relationship ID. Is the URI external. Gets the relationship type. Represents a (RelationshipId, OpenXmlPart) pair. Initializes a new instance of the IdPartPair with the specified id and part. The relationship ID. The OpenXmlPart. Gets the relationship ID in the pair. Gets the OpenXmlPart in the pair. An abstraction similar to that allows for pass through implementations Gets the file access of the package Gets the core properties of the package Returns a collection of parts for the package A collection of parts. Gets a part for the given . Uri of target Part for given uri. Indicates whether a part with a given URI is in the package The uri of the part. true if a part with the specified exists in the package; otherwise, false. Saves the package Creates a new part with a given URI, content type, and compression option. The URI of the new part. The content type of the data stream. The compression option for the data stream. The new created part. Deletes a part with a given URI from the package. The URI of the part to delete. Gets the relationships of the package. An abstraction for that is easier to override. Gets a reference to the containing package. Gets the URI for the current part. Gets the MIME type of the content stream. Gets a collection of relationships. Gets the data stream for the part. Mode in which to open the stream. Access mode in which to open the stream. A stream for the data of the part. An abstraction of package properties, similar to . Gets or sets the title. Gets or sets the topic of the contents. Gets or sets the primary creator. The identification is environment-specific and can consist of a name, email address, employee ID, etc. It is recommended that this value be only as verbose as necessary to identify the individual. Gets or sets a delimited set of keywords to support searching and indexing. This is typically a list of terms that are not available elsewhere in the properties. Gets or sets the description or abstract of the contents. Gets or sets the user who performed the last modification. The identification is environment-specific and can consist of a name, email address, employee ID, etc. It is recommended that this value be only as verbose as necessary to identify the individual. Gets or sets the revision number. This value indicates the number of saves or revisions. The application is responsible for updating this value after each revision. Gets or sets the date and time of the last printing. Gets or sets the creation date and time. Gets or sets the date and time of the last modification. Gets or sets the category. Gets or sets a unique identifier. Gets or sets the type of content represented, generally defined by a specific use and intended audience. Example values include "Whitepaper", "Security Bulletin", and "Exam". (This property is distinct from MIME content types as defined in RFC 2045.) Gets or sets the primary language of the package content. The language tag is composed of one or more parts: A primary language subtag and a (possibly empty) series of subsequent subtags, for example, "EN-US". These values MUST follow the convention specified in RFC 3066. Gets or sets the version number. This value is set by the user or by the application. Gets or sets the status of the content. Example values include "Draft", "Reviewed", and "Final". An interface that defines the relationship between a source and a target part. Similar to but allows full overriding. Gets a unique identifier across relationships for the given source. Gets the type of the relationship used to uniquely define the role of the relationship. Gets a reference to the parent PackagePart to which this relationship belongs. Gets a value indicating the interpretations of the "base" of the target uri. Gets the uri of the part that this relationship points to. A collection of relationships for a of . Creates a relationship to a part with a given URI, target mode, relationship type, and (optional) identifier. The URI of the target part Indicates if the target part is internal or external to the package. A URI that uniquely defines the role of the relationship A unique XML identifier The relationship to the specified part. Deletes the specified relationship. The id of the relationship. Gets a relationship by id. Id of relationship A package relationship Gets a count of the registered relationships. Indicates whether a relationship with a given ID is defined. The id of the relationship true if a relationship exists; otherwise, no. Defines the interface for tagging a part that can add extensible parts. Extensible part type that is supported by the implementing class. Specifies the mode in which to process the markup compatibility tags in the document. Do not process MarkupCompatibility tags. Process the loaded parts. Process all the parts in the package. Represents markup compatibility processing settings. Gets the markup compatibility process mode. Gets the target file format versions. Creates a MarkupCompatibilityProcessSettings object using the supplied process mode and file format versions. The process mode. The file format versions. This parameter is ignored if the value is NoProcess. Represents a media (Audio, Video) data part in the document. Defines part media types. Audio Interchange File Format (.aiff) MIDI Audio (.mid) MP3 (.mp3) MP3 Playlist File (.m3u) WAV audio (.wav) Windows Media Audio File (.wma) Mpeg audio (.mpeg) Ogg Vorbis (.ogg) Advanced Stream Redirector File (.asx) Audio Video Interleave File (.avi) MPEG 1 System Stream (.mpg) MPEG 1 System Stream (.mpeg) Windows Media File (.wmv) Windows Media Player A/V Shortcut (.wmx) Windows Media Redirector (.wvx) QuickTime video (.mov) Ogg Stream (.ogg) VC-1 Stream (.wmv) Represents an internal media reference relationship to a MediaDataPart element. Represents the fixed value of the RelationshipType. Gets the source relationship type for a media reference. Initializes a new instance of the MediaReferenceRelationship class using the supplied MediaDataPart and relationship ID. The target DataPart of the reference relationship. The relationship ID. Gets the relationship type for a media reference. Represents the settings when opening a document. Initializes a new instance of the class. Gets or sets a value indicating whether to auto save document modifications. The default value is true. Gets or sets a version to keep compat to Gets or sets the value of the markup compatibility processing mode. Gets or sets a value that indicates the maximum number of allowable characters in an Open XML part. A zero (0) value indicates that there are no limits on the size of the part. A non-zero value specifies the maximum size, in characters. This property allows you to mitigate denial of service attacks where the attacker submits a package with an extremely large Open XML part. By limiting the size of the part, you can detect the attack and recover reliably. Represents a base class for strong typed Open XML document classes. Initializes a new instance of the OpenXmlPackage class. Gets the root part for the package. Gets a value indicating whether this package contains Transitional relationships converted from Strict. Gets the package properties. Gets the FileAccess setting for the document. The current I/O access settings are: Read, Write, or ReadWrite. Gets or sets the compression level for the content of the new part Gets a part which provides a mapping from content type to part extension. Gets a value that indicates the maximum allowable number of characters in an Open XML part. A zero (0) value indicates that there are no limits on the size of the part. A non-zero value specifies the maximum size, in characters. This property allows you to mitigate denial of service attacks where the attacker submits a package with an extremely large Open XML part. By limiting the size of a part, you can detect the attack and recover reliably. Gets a value indicating whether saving the package is supported by calling . Some platforms (such as .NET Core), have limited support for saving. If false, in order to save, the document and/or package needs to be fully closed and disposed and then reopened. Gets all the parts in the document package. Adds the specified part to the document. Use the returned part to operate on the part added to the document. A class that is derived from the OpenXmlPart class. The part to add to the document. The added part in the document. Differs from the part that was passed as an argument. Thrown when the part is not allowed to be added. Thrown when the part type already exists and multiple instances of the part type is not allowed. Deletes all the parts with the specified part type from the package recursively. Creates a new part in the document package. The content type of the new part. The added part. Thrown when is a null reference. Creates a new part in the document package. The content type of the new part. The part name extension (.dat, etc.) of the new part. The added part. Thrown when is a null reference. Thrown when is a null reference. Creates a new part in the document package. The content type of the new part. The added part. Deletes the specified from the document package. The to be deleted. Returns true if the part is successfully removed; otherwise returns false. This method also returns false if the part was not found or the parameter is null. Thrown when is referenced by another part in the document package. Thrown if an object is disposed. Flushes and saves the content, closes the document, and releases all resources. Specify true to release both managed and unmanaged resources; false to release only unmanaged resources. Flushes and saves the content, closes the document, and releases all resources. Gets the markup compatibility settings applied at loading time. Gets a value indicating whether the parts should be saved when disposed. Changes the type of the document. The type of the document's main part. The MainDocumentPart will be changed. Deletes all DataParts that are not referenced by any media, audio, or video reference relationships. Saves the contents of all parts and relationships that are contained in the OpenXml package, if is . Some platforms do not support saving due to limitations in , so please query at runtime to know if full saving will be supported without closing and disposing of the . Represents an Open XML package exception class for errors. Initializes a new instance of the OpenXmlPackageException class. Initializes a new instance of the OpenXmlPackageException class using the supplied error message. The message that describes the error. Initializes a new instance of the OpenXmlPackageException class using the supplied serialized data. The serialized object data about the exception being thrown. The contextual information about the source or destination. Initializes a new instance of the OpenXmlPackageException class using the supplied error message and a reference to the inner exception that caused the current exception. The error message that indicates the reason for the exception. The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. Extensions for type. Traverse parts in the by breadth-first. Gets or sets the message string of the event. Gets or sets the class name of the part. Gets or sets the part that caused the event. Gets or sets the part in which to process the validation. Gets or sets the DataPartReferenceRelationship that caused the event. Represents an abstract base class for all OpenXml parts. Create an instance of Gets the OpenXmlPackage which contains the current part. Gets the internal part path in the package. Enumerates all parents that reference this part anywhere in the document. Returns the part content data stream. The content data stream for the part. Returns the content stream that was opened using a specified I/O FileMode. The I/O mode to be used to open the content stream. The content stream of the part. Returns the part content stream that was opened using a specified FileMode and FileAccess. The I/O mode to be used to open the content stream. The access permissions to be used to open the content stream. The content stream of the part. Feeds data into the part stream. The stream of the part will be truncated at first. The source stream to be read from. Thrown when "sourceStream" is a null reference. Unloads the RootElement. The unloaded RootElement Releases the DOM so the memory can be GC'ed. Gets the content type (MIME type) of the content data in the part. Gets the relationship type of the part. Gets the root element of the current part. Returns null when the current part is empty or is not an XML content type. Gets the internal metro PackagePart element. Gets a value that indicates the maximum allowable number of characters in an Open XML part. A zero (0) value specifies that the part can have an unlimited number of characters. A non-zero value specifies the maximum allowable number of characters in the part. This property allows you to mitigate denial of service attacks where the attacker submits package with extremely large Open XML part. By limiting the size of a part, you can detect the attack and recover reliably. Gets a value indicating whether the ContentType for the current part is fixed. Determines if the content type agrees with this part's constraints. True if the content type is valid for this part. False otherwise. Gets or sets the root element field. If the part does not have root element defined. Gets the root element of the current part. Returns null if the part is not a defined XML part. Indicates whether the current part is available in a specific version of an Office Application. The Office file format version. Returns true if the part is defined in the specified version. Gets a value indicating whether the root element is loaded from the part or it has been set. Load the DOM tree. And associate the DOM tree with this part. Only used for generated part classes which derive from this OpenXmlBasePart. The type of the part's root element. The ._rootElement will be assigned if the DOM is loaded. Set the RootElement to be the given partRootElement. Only used for generated part classes which derive from this OpenXmlBasePart. The given partRootElement. Can be null. Thrown when the part's root element has already be associated with another OpenXmlPart. Indicates whether the object is already disposed. A used by to unload the root if updated. Defines the base class for OpenXmlPackage and OpenXmlPart. Initializes OpenXmlPartContainer. Gets the children parts IDictionary. Deletes the specified reference relationship. The reference relationship to be deleted. Thrown when "referenceRelationship" is null reference. Thrown when the reference relationship is not referenced by this part. Deletes the specified reference relationship. The relationship ID of the ReferenceRelationship. Thrown when the "id" parameter is null. Thrown when there is no ReferenceRelationship with the specified relationship ID. Gets the specified ReferenceRelationship. The relationship ID of the ReferenceRelationship. Returns the ReferenceRelationship which has the relationship ID. Thrown when the "id" parameter is null. Thrown when there is no ReferenceRelationship with the specified relationship ID. Gets all external relationships. Hyperlink relationships are not included, use HyperlinkRelationship property to enumerate hyperlink relationships. Adds an external relationship. Do not add hyperlink relationships through this method. Use AddHyperlinkRelationship() instead. The relationship type. The external URI. An ExternalRelationship with the relationship ID. Thrown when "relationshipType" or the "externalUri" is null reference. Adds an external relationship. Do not add hyperlink relationships through this method. Use AddHyperlinkRelationship() instead. The relationship type. The external URI. The desired relationship ID. An ExternalRelationship with the relationship ID. Thrown when "relationshipType" or the "externalUri" is null reference. Thrown when the relationship type is hyperlink relationship type (http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink). Deletes the specified external relationship. The external relationship to be deleted. Thrown when "externalRelationship" is null reference. Thrown when the external relationship is not referenced by this part. Deletes the specified ExternalRelationship. The relationship ID of the ExternalRelationship. Thrown when the "id" parameter is null. Thrown when there is no ExternalRelationship with the specified relationship ID. Gets the specified ExternalRelationship. The relationship ID of the ExternalRelationship. Returns the ExternalRelationship which has the relationship ID. Thrown when the "id" parameter is null. Thrown when there is no ExternalRelationship with the specified relationship ID. Gets all hyperlink relationships. Adds a new hyperlink relationship. The URI of the hyperlink. Is the hyperlink external to the . An HyperlinkRelationship with the relationship ID. Thrown when "hyperlinkUri" is null reference. Adds a new hyperlink relationship. The URI of the hyperlink. Is the hyperlink external to the . The desired relationship ID. An HyperlinkRelationship with the relationship ID. Thrown when "hyperlinkUri" or "id" is null reference. Gets all relationships. Adds a new relationship to the specified . The target of the reference relationship. An new . Thrown when is null reference. Thrown when the specified is not in this document. Adds a new relationship to the specified . The target of the reference relationship. The desired relationship ID. An new with the relationship ID. Thrown when is null reference. Thrown when is null reference. Thrown when the specified is not in this document. Adds a new relationship. The . The same . Thrown when is null reference. Gets all parts which are relationship targets of this part. Gets the child part through the relationship ID. The relationship ID of the part. The part. Thrown when the part with the specified id does not exist. Try to get the child part by the relationship ID. The relationship ID of the part. The part. Return true when the part with the specified id exist, otherwise false Gets the relationship ID of the part. The part. The relationship ID of the part. Thrown when "part" is null reference. Thrown when the part does not exist. Changes the relationship ID of the part. The target part. The new relationship ID of the part. The old relationship ID of the part. Throw when "part" is null reference or the newRelationshipId is null reference. Thrown when the part does not exist under this part. Thrown when the specified relationship id is already used by another part. Adds the part to the document. Must use the returned part to operate on the part added to the document. Derived class from OpenXmlPart. The part to be added to the document. The part added to the document. This is different from the passed in part. Thrown when "part" is null reference. Thrown when the part is not allowed to be added. Thrown when one instance of the same type part already exists and multiple instances of that type are not allowed. Adds the part to the document with a given relationship identifier (ID). Must use the returned part to operate on the part added to the document Derived class from OpenXmlPart. The part to be added to the document. A unique relationship identifier. The part added to the document. This is different from the passed in part. Thrown when "part" or the "id" is null reference. Thrown when the part is not allowed to be added. Thrown when one instance of same type part already exists and multiple instances of that type are not allowed. Adds a relationship for the specified part to this part. The part to add relationship for. A unique relationship identifier. Thrown when "part" or the "id" is null reference. Thrown when the part is no allowed to be added. Thrown when one instance of same type part already exists and multiple instance of that type is not allowed. Thrown when the and this part are not in the same OpenXmlPackage. Adds a relationship for the specified part to this part. The part to add a relationship for. A unique relationship identifier. A unique relationship identifier. Thrown when "part" or the "id" is null reference. Thrown when the part is no allowed to be added. Thrown when one instance of same type part already exists and multiple instance of that type is not allowed. Thrown when the and this part are not in the same OpenXmlPackage. Adds a new part of type T. The class of the part. The added part. When the part is not allowed to be referenced by this part. Adds a new part of type T. The class of the part. The relationship id. The added part. When the part is not allowed to be referenced by this part. Adds a new part of type T. The class of the part. The content type of the part. Must match the defined content type if the part is fixed content type. The relationship id. The id will be automatically generated if this param is null. The added part. When the part is not allowed to be referenced by this part. When the part is fixed content type and the passed in contentType does not match the defined content type. Thrown when "contentType" is null reference. Mainly used for adding not-fixed content type part - ImagePart, etc Adds an extended part ( Application specific part ). The relationship type of the part. The content type of the part. The desired part name extension in the package. The new ExtendedPart. Adds an extended part ( Application specific part ). The relationship type of the part. The content type of the part. The desired part name extension in the package. The desired relationship ID. The new ExtendedPart. Deletes the specified child part from this part. The relationship ID of the part to be deleted. True if the part is successfully removed; otherwise, false. This method also returns false if the part was not found. Thrown when "id" is null reference. Deletes a specified part in the package root layer. The part to be deleted. True if the part is successfully removed; otherwise, false. This method also returns false if the part was not found or the parameter is null. Thrown when the part is not referenced by this part. Deletes all the parts which are in the passed in collection from the document. The parts to be deleted. Thrown when "partsToBeDeleted" is null reference. Adds an object to the annotation list of this PartContainer. The annotation to add to this PartContainer. Get the first annotation object of the specified type from this PartContainer. The type of the annotation to retrieve. The first annotation object of the specified type. Get the first annotation object of the specified type from this PartContainer. The type of the annotation to retrieve. The first annotation object of the specified type. Gets a collection of annotations of the specified type for this PartContainer. The type of the annotations to retrieve. An IEnumerable(T) of object that contains the annotations for this PartContainer. Gets a collection of annotations of the specified type for this PartContainer. The Type of the annotations to retrieve. An IEnumerable(T) of object that contains the annotations for this PartContainer. Removes the annotations of the specified type from this PartContainer. The Type of the annotations to remove. Removes the annotations of the specified type from this PartContainer. The Type of the annotations to remove. Enumerates all the children parts of the specified type of this part. Derived class from OpenXmlPart. Adds a new part of type T. The class of the part. The added part. Adds a new part of type T The class of the part. The content type of the part. The part relationship id. The added part. Initializes a new created part The part to be initialized. The content type of the part. Initializes a new created part The part to be initialized. The content type of the part. The relationship id. Adds a new part. The part to be added. A unique relationship identifier. null to create new id. The added part. May diff with the passed in part. Thrown when "subPart" is null reference. Thrown when the part is no allowed to be added. Thrown when one instance of same type part already exists and multiple instance of that type is not allowed. Sets part which is only one in the parent A unique relationship identifier. The part added to the parent. Different with the passed in part. Adds the part to the parent. A unique relationship identifier. The part added to the parent. Different with the passed in part. Deletes the specified part in the package root layer. The relationship ID of the part to be deleted. true if the part is successfully removed; otherwise, false. This method also returns false if the part was not found. Deletes all the parts of the specified type. Deletes all the parts which is the specified part type from package recursively. Removes all child parts of this part. Gets the sub part which is the specified relationship type. The relationship type of the part. return null if no one. Only used for maxOccurence=1 part. Creates an strong typed OpenXmlPart instance based on the relationship type. For and only for loading. The relationship type of the new part. The created new part. Gets the internal OpenXmlPackage instance Test whether the object is already disposed. Gets the features associated with this part. Defines a provider which maintains a dictionary where the key is the content type and the value is a part extension. Initializes a new instance of the class that is empty. Check to make sure the content type and part extension is in the provider. If not, they will be added. The content type Part Extension (".xml") to be used for the part with the specified content type. Thrown when either parameter is null. Defines information used in creating a new part. Ctor - assign content type and extention. Gets content type for the part. Gets the file extension for the part. List of contentTypes that need to have a '1' appended to the name for the first item in the package. Section numbers in comments refer to the ISO/IEC 29500 standard. Defines a reference relationship. A reference relationship can be internal or external. Initializes a new instance of the ReferenceRelationship. The source PackageRelationship. Initializes a new instance of the ReferenceRelationship. The relationship type of the relationship. The target uri of the relationship. The relationship ID. A value that indicates whether the target of the relationship is Internal or External to the Package. Gets the owner that holds the . Gets the relationship type. Gets a value indicating whether the target of the relationship is Internal or External to the . Gets the relationship ID. Gets the target URI of the relationship. Represents an internal video reference relationship to a MediaDataPart element. Represents the fixed value of the RelationshipType. Gets the source relationship type for an audio reference. Initializes a new instance of the VideoReferenceRelationship class using the supplied MediaDataPart and relationship ID. The target DataPart of the reference relationship. The relationship ID. Gets the relationship type for a video reference. Attempts to replace the underlying stream so that we can modify it even in readonly situations via a copy Determines whether the supplied version is within the known set of versions The version to check True if a known version, otherwise false Determines if the supplied version is valid for all versions The version to check True if the version is all of the known versions, otherwise false Combines values for the given version and all versions that come after it Version to which all other versions are added A version instance with and all later versions Throws if the is not supported in the given version Version to check Part to validate Throws if the is not supported in the given version Version to check Element to validate Check if a given version is at least a specified version Version to check Minimum version expected True if supplied version is at least of the specified version, otherwise false Determines whether the source FileFormatVersions includes the target FileFormatVersions. The source FileFormatVersions to be tested. The target FileFormatVersions be tested against. Returns true when (source & target) == target. Throws an ArgumentOutOfRangeException if the specified FileFormatVersions is not supported. The specified FileFormatVersions. The name of the parameter for ArgumentOutOfRangeException. Defines the Office Open XML file format version. Represents an invalid value which will cause an exception. Represents Microsoft Office 2007. Represents Microsoft Office 2010. Represents Microsoft Office 2013. Represents Microsoft Office 2016. Represents Microsoft Office 2019. Represents Microsoft Office 2021. Represents Microsoft 365. A lookup that identifies properties on an and caches the schema information from those elements. A structure that defines a namespace. Initializes a new instance of the struct. Gets the URI of the namespace Gets a value indicating whether is empty or not. Implicitly convert a string to a namespace. A structure that defines a fully qualified name with a namespace and name. Gets the namespace of the qualified name. Gets the name of the qualified name. Gets the relationship type. Gets the content type of the part. Some types with fixed content types have same relationship type but different content type. This value is null for non-fixed content type. Gets a value indicating whether the min occurs > 0, (i.e. is required). Gets a value indicating whether max occurs > 1, (i.e. has multiple occurrences). Gets the file format version information. Test whether the element is a strong typed element - the class is generated by CodeGen. The specified element. True if the class of the element is generated. This struct represents a way to access elements in a structured way based on its compiled particle. Clears any elements that compare as equal based on the schema particles. For example, equivalent choice items will be removed. Gets a value indicating whether the collection has value or not. Adds an element into the collection at the appropriate location. Element to add. true if the element was added, and false if not. Gets whether the exists in the collection. The item to search for. true if the element was found, and false if not. Checks if two instances are the same. They may not have the exact same sequence, but if they are replaceable, then they are equal. These extensions are set up so that it is easier to test a against an . Gets the Office version of the available property. Initializes a new instance of the OfficeAvailabilityAttribute class. The Office version where this class or property is available. If there is more than one version, use bitwise OR to specify multiple versions. Describes a required item. The exception that is thrown for Markup Compatibility content errors. Initializes a new instance of the InvalidMCContentException class. Initializes a new instance of the InvalidMCContentException class with a specified error message. The message that describes the error. Initializes a new instance of the InvalidMCContentException class with serialized data. The SerializationInfo that holds the serialized object data about the exception being thrown. The StreamingContext that contains contextual information about the source or destination. Initializes a new instance of the InvalidMCContentException class with a specified error message and a reference to the inner exception that is the cause of this exception. The error message that explains the reason for the exception. The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. Defines the Markup Compatibility Attributes. Gets or sets a whitespace-delimited list of prefixes, where each prefix identifies an ignorable namespace. Gets or sets a whitespace-delimited list of element-qualified names that identify the expanded names of elements. The content of the elements shall be processed, even if the elements themselves are ignored. Gets or sets a whitespace-delimited list of element qualified names that identify the expanded names of elements. The elements are suggested by a markup producer for preservation by markup editors, even if the elements themselves are ignored. Gets or sets a whitespace-delimited list of attribute qualified names that identify expanded names of attributes. The attributes were suggested by a markup producer for preservation by markup editors. Gets or sets a whitespace-delimited list of prefixes that identify a set of namespace names. This method is for MC validation use. Only push Ignorable and ProcessContent. This method is for MC validation use only. This method is called by ParseQNameList() and ParsePrefixList(). The value of the attribute. True to stop parsing; False to continue. This method is called by ParseIgnorable() and ParseProcessContent(). The value of the attribute. True to stop parsing; False to continue. The exception that is thrown for Markup Compatibility content errors. Initializes a new instance of the InvalidMCContentException class. Initializes a new instance of the InvalidMCContentException class with a specified error message. The message that describes the error. Initializes a new instance of the InvalidMCContentException class with serialized data. The SerializationInfo that holds the serialized object data about the exception being thrown. The StreamingContext that contains contextual information about the source or destination. Initializes a new instance of the InvalidMCContentException class with a specified error message and a reference to the inner exception that is the cause of this exception. The error message that explains the reason for the exception. The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. Represents an Open XML attribute. Initializes a new instance of the OpenXmlAttribute structure using the supplied qualified name, namespace URI, and text value. The qualified attribute name. The namespace URI of the attribute. The text value of the attribute. Initializes a new instance of the OpenXmlAttribute structure using the supplied namespace prefix, local name, namespace URI, and text value. The namespace prefix of the attribute. The local name of the attribute. The namespace URI of the attribute. The text value of the attribute. Gets the namespace URI of the current attribute. Gets the local name of the attribute. Gets the namespace prefix of the current attribute. Gets the text value of the attribute. Gets the qualified name of the attribute. Gets the qualified name of the current attribute. Determines if this instance of an OpenXmlAttribute structure is equal to the specified instance of an OpenXmlAttribute structure. An instance of an OpenXmlAttribute structure. Returns true if instances are equal; otherwise, returns false. Determines if two instances of OpenXmlAttribute structures are equal. The first instance of an OpenXmlAttribute structure. The second instance of an OpenXmlAttribute structure. Returns true if all corresponding members are equal; otherwise, returns false. Determines if two instances of OpenXmlAttribute structures are not equal. The first instance of an OpenXmlAttribute structure. The second instance of an OpenXmlAttribute structure. Returns true if some corresponding members are different; otherwise, returns false. Determines whether the specified Object is a OpenXmlAttribute structure and if so, indicates whether it is equal to this instance of an OpenXmlAttribute structure. An Object. Returns true if obj is an OpenXmlAttribute structure and it is equal to this instance of an OpenXmlAttribute structure; otherwise, returns false. Gets the hash code for this instance of an OpenXmlAttribute structure. The hash code for this instance of an OpenXmlAttribute structure. Represents the base class for composite elements. Initializes a new instance of the OpenXmlCompositeElement class. Initializes a new instance of the OpenXmlCompositeElement class using the supplied outer XML. The outer XML of the element. Initializes a new instance of the OpenXmlCompositeElement class using the supplied collection of OpenXmlElement elements. A collection of OpenXmlElement elements. Initializes a new instance of the OpenXmlCompositeElement using the supplied array of OpenXmlElement elements. An array of OpenXmlElement elements. Gets the first child of the current OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no such OpenXmlElement element. Gets the last child of the current OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no such OpenXmlElement element. Adds the specified element to the element if it is a known child. This adds the element in the correct location according to the schema. The OpenXmlElement element to append. A flag to indicate if the method should throw if the child could not be added. Success if the element was added, otherwise false. Removes all of the current element's child elements. Saves all of the current node's children to the specified XmlWriter. The XmlWriter at which to save the child nodes. Fires the ElementInserting event. The OpenXmlElement element to insert. Fires the ElementInserted event. The OpenXmlElement element to insert. Fires the ElementRemoving event. The OpenXmlElement element to remove. Fires the ElementRemoved event. The OpenXmlElement element to be removed. Populates the XML into a strong typed DOM tree. The XmlReader to read the XML content. Specifies a load mode that is either lazy or full. Represents the Open XML document reader class. Initializes a new instance of the OpenXmlDomReader class. The OpenXmlElement to read. Initializes a new instance of the OpenXmlDomReader class using the supplied OpenXmlElement and Boolean values. The OpenXmlElement to read. Specify false to indicate to the reader to skip all miscellaneous nodes. The default value is false. Gets the list of attributes of the current element. Gets the namespace declarations of the current element. Gets the type of the corresponding strong typed class of the current element. Move to next element true if the next element was read successfully; false if there are no more elements to read. Move to first child true if the first child element was read successfully; false if there are no child elements to read. Only can be called on element start. Current will move to the end tag if no child element. Move to next sibling element true if the next sibling element was read successfully; false if there are no more sibling elements to read. Current will move to the end tag of the parent if no more sibling element. Skips the children of the current node. Represents a base class that all elements in an Office Open XML document derive from. Annotations will not be cloned when calling and . Gets a for the current element. This feature collection will be read-only, but will inherit features from its parent part and package if available. Initializes a new instance of the OpenXmlElement class. Initializes a new instance of the OpenXmlElement class using the supplied outer XML of the element. The outer XML of the element. Gets or sets the next element in the linked list. Gets a value indicating whether the inner raw xml is parsed. Gets or sets the raw OuterXml. Gets an array of fixed attributes (attributes that are defined in the schema) without forcing any parsing of the element. If parsing is required, please use Gets an array of fixed attributes which will be parsed out if they are not yet parsed. If parsing is not required, please use . Gets the OpenXmlElementContext of the current element. Gets the OpenXmlElementContext from the root element. Gets the first child of the OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no such OpenXmlElement element. Gets the last child of the OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no such OpenXmlElement element. Gets a value indicating whether the current element has any attributes. Gets all extended attributes (attributes not defined in the schema) of the current element. Gets a value indicating whether the current element has any child elements. Gets all the child nodes of the current element. Gets the parent element of the current element. Gets the namespace URI of the current element. Gets the local name of the current element. Gets the namespace prefix of current element. Gets all the namespace declarations defined in the current element. Returns an empty enumerator if there is no namespace declaration. Gets the qualified name of the current element. Gets the qualified name of the current element. Gets or sets the concatenated values of the node and all of its children. Gets or sets the markup that represents only the child elements of the current element. Gets the markup that represents the current element and all of its child elements. Gets an Open XML attribute with the specified tag name and namespace URI. The tag name. The namespace URI. Returns a clone of the OpenXmlAttribute with local name equal to "localName" and namespace URI equal to "namespaceUri". When the "localName" is empty. When the element does not have the specified attribute. Gets a list that contains a copy of all the attributes. A list of attributes. Return an empty list if there are no attributes. The returned list is a non-live copy. Sets an attribute to the specified element. If the attribute is a known attribute, the value of the attribute is set. If the attribute is an extended attribute, the 'openxmlAttribute' is added to the extended attributes list. The attribute to be set on the element. Thrown when the LocalName of the "openxmlAttribute" parameter is null or empty. Thrown when an attempt to set a namespace declaration is made. Removes the attribute from the current element. The local name of the attribute. The namespace URI of the attribute. Thrown when the localName is empty. Sets a number of attributes to the element. If an attribute is a known attribute, the value of the attribute is set. If an attribute is an extended attribute, the 'openxmlAttribute' is added to the extended attributes list. The attributes to be set on the element. Clears all of the attributes, including both known attributes and extended attributes. Adds a namespace declaration to the current node. The prefix. The uri. Thrown if the prefix is already used in the current node. Removes the namespace declaration for the specified prefix. Removes nothing if there is no prefix. Finds the first child element in type T. Type of element. Gets the OpenXmlElement element that immediately precedes the current OpenXmlElement element. Returns null (Nothing in Visual Basic ) if there is no preceding OpenXmlElement element. The OpenXmlElement element that immediately precedes the current OpenXmlElement element. Gets the OpenXmlElement element with the specified type that precedes the current OpenXmlElement. Returns null (Nothing in Visual Basic) if there is no preceding OpenXmlElement element. The OpenXmlElement element with the specified type that precedes the current OpenXmlElement element. Gets the OpenXmlElement element that immediately follows the current OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no next OpenXmlElement element. The OpenXmlElement element that immediately follows the current OpenXmlElement element. Gets the OpenXmlElement element with the specified type that follows the current OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no next OpenXmlElement. The OpenXmlElement element with the specified type that follows the current OpenXmlElement element. Enumerates all of the current element's ancestors. An IEnumerable object that contains a list of the current OpenXmlElement element's ancestors. Enumerates only the current element's ancestors that have the specified type. The element type. An IEnumerable object that contains a list of the current OpenXmlElement element's ancestors. Enumerates only the current element's children that have the specified type. The element type. Enumerates all of the current element's children. Enumerate all of the current element's descendants of type T. The element type. Enumerates all of the current element's descendants. Enumerates all of the sibling elements that precede the current element and have the same parent as the current element. An IEnumerable object that contains a list of OpenXmlElement elements. Enumerates all of the sibling elements that follow the current element and have the same parent as the current element. An IEnumerable object that contains a list of OpenXmlElement elements. When overridden in a derived class, creates a duplicate of the node. True to recursively clone the subtree under the specified node; false to clone only the node itself. The cloned node. Saves the current node to the specified XmlWriter. The XmlWriter to which to save the current node. Appends each element from a list of elements to the end of the current element's list of child elements. The list that contains the OpenXmlElement elements to be appended. Appends each element from an array of elements to the end of the current element's list of child elements. The array of elements to be appended. Appends the specified element to the end of the current element's list of child nodes. The element to append. The element that was appended. Inserts the specified element immediately after the specified reference element. The element to insert. The reference element. is placed after . The element that was inserted. Inserts the specified element immediately before the specified reference element. The element to insert. The reference element. is placed before . The element that was inserted. Inserts the specified element immediately after the current element. The new element to insert. The inserted element. Thrown when the parameter is a null reference. Thrown when the parent is a null reference. Inserts the specified element immediately before the current element. The new element to insert. The inserted element. Thrown when the parameter is a null reference. Thrown when the parent is a null reference. Inserts the specified element at the specified index in the current element's list of child elements. The element to insert. The zero-based index where the element is to be inserted. The element that was inserted. Returns nullif equals null. Inserts the specified element at the beginning of the current element's list of child elements. The element to add. The element that was added. Removes the specified child element from the current element's list of child elements. The child element to remove. The element that was removed. Replaces a child element with another child element in the current element's list of child elements. The new child element to put in the list. The child element to replace in the list. The element that was replaced. Removes all of the current element's child elements. Remove all of the current element's child elements that are of type T. Removes the current element from its parent. Thrown when the parent is a null reference. Determines if the current element appears after a specified element in document order. The element to compare for order. Returns true if the current element appears after the specified element in document order; otherwise returns false. Determines if the current element appears before a specified element in document order. The element to compare for order. Returns true if the current element appears before the specified element in document order; otherwise returns false. Gets the order of the two specified elements in document order. The first element to compare for order. The second element to compare for order. Saves all of the children of the current node to the specified XmlWriter. The XmlWriter at which to save the child nodes. Attempts to set the attribute to a known attribute. true if the attribute is a known attribute. Reads MC attributes from the xmlReader and than pushes MC Context on needed. This xmlReader will keeps on the element start after this method. This method screen all attribute from xmlReader, and then set the xmlReader back to the element start. Returns true if a MCAttributes is pushed. If this is a normal node, check mustunderstand attribute at load time The XmlReader. The MarkupCompatibilityAttributes. The MarkupCompatibilityProcessSettings. If this is a node in ACB, check mustunderstand after load Gets a value that indicates the version in which the current element was introduced. For strong typed element, the return value will be generated according to the schema. For , always returns false For , always returns true Adds an object to the current OpenXmlElement element's list of annotations. The annotation to add to the current OpenXmlElement element. Get the first annotation object of the specified type from the current OpenXmlElement element. The type of the annotation to retrieve. The first annotation object of the specified type. Get the first annotation object of the specified type from the current OpenXmlElement element. The type of the annotation to retrieve. The first annotation object with the specified type. Gets a collection of annotations with the specified type for the current OpenXmlElement element. The type of the annotations to retrieve. An IEnumerable(T) object that contains the annotations for current OpenXmlElement element. Gets a collection of annotations with the specified type for the current OpenXmlElement element. The type of the annotations to retrieve. An IEnumerable(T) object that contains the annotations for the current OpenXmlElement element. Removes the annotations with the specified type from the current OpenXmlElement element. The type of the annotations to remove. Removes the annotations of the specified type from the current OpenXmlElement element. The type of the annotations to remove. Returns an enumerator that iterates through the child collection. An IEnumerator object that can be used to iterate through the child collection. Creates a duplicate of the current node. Cloning an OpenXmlNode copies all attributes and their values, including those generated by the XML processor to represent defaulted attributes. This method recursively clones the node and the subtree underneath it. Cloning is equivalent to calling CloneNode(true). The cloned node. Indicates whether the specified namespace uri equals @"http://www.w3.org/2000/xmlns/". The namespace uri. True if nsUri == @"http://www.w3.org/2000/xmlns/". Returns true when the specified element is not an OpenXmlUnknownElement and it is not an OpenXmlMiscNode. Gets or sets the markup compatibility attributes. Returns null if no markup compatibility attributes are defined for the current element. Loads the MC attributes from the xmlReader. This xmlReader will keeps on the element start after this method. This method screen all attribute from xmlReader, and then set the xmlReader back to the element start. Adds the MC attributes to the "attributes" collection. Finds the corresponding MC attribute from the attribute name. Resolves the namespace prefix in the context of the current node. The prefix to resolve. The resolved namespace. Returns null (Nothing in Visual Basic) if the prefix cannot be resolved. Finds the corresponding prefix for a namespace uri in the current element scope. The namespace uri. The corresponding prefix. Returns null (Nothing in Visual Basic) if no prefix is found. Returns the next sibling element that is not an OpenXmlMiscNode element. The next sibling element that is not an OpenXmlMiscNode element. Returns the first child element that is not an OpenXmlMiscNode element. The first child element that is not an OpenXmlMiscNode element. Gets the root element of the current OpenXmlElement element. Returns the root element if it is an OpenXmlPartRootElement element. Returns the current element if it is an OpenXmlPartRootElement element. Returns null (Nothing in Visual Basic) if the current element has no parent or the root element is not an OpenXmlPartRootElement element. Represents the OpenXml loading context. Gets the XmlReaderSettings to be used by internal XmlReader Gets or sets load mode Gets layers to be full populated, only effective when LoadMode==Lazy. Start from 0 (populate only the children layer). The magic number of 3 is currently used, but could potentially be made into a public property so a user can control this Determines whether the namespace uri equals @"http://www.w3.org/2000/xmlns/". The namespace uri. Returns true if nsUri equals @"http://www.w3.org/2000/xmlns/". Fires the ElementInserting event. The OpenXmlElement element to insert. The parent element. Fires the ElementInserted event. The inserted OpenXmlElement element. The parent element. Fires the ElementRemoving event. The OpenXmlElement element to remove. The parent element. Fires the ElementRemoved event. The removed OpenXmlElement element. The parent element. Occurs when an element is about to be inserted into the element hierarchy. Occurs when an element has been inserted into the element hierarchy. Occurs when an element is being removed from the element hierarchy. Occurs when an element has been removed from the element hierarchy. Static class to hold extension methods for OpenXmlElement. Get position index in same type in the ChildElements of it's parent element. The OpenxmlElement. The position index in same type element in parent. Get the part in which the element is in. The element. The part in which the element is in. Returns null if not in a part. Gets the URI of the part the element is in. The element. The URI of the part the element is in. Returns null if not in a part. Get attribute value of the specified attribute. Tries to create an OpenXmlElement from the specified namespace URI and local name. The parent element. The specified file format version. The namespace URI of the requested child element. The local name of the requested child element. A new OpenXmlElement if the parent element can contains a child with the specified namespace and local name. Otherwise, returns null. Provides extension methods for pure functional transformations. Adds child elements or attributes to the given element. The element type. The element. The content to be added to the element. The element with the content added to it. Adds child elements or attributes to the given element. The element type. The element. The content to be added to the element. The element with the content added to it. A struct that helps enumerate the child elements of an Creates an instance of . Gets a node at the specified index. Index to retrieve the element. The element if found. Gets the number of children the element has. Gets an for the collection. The enumerator. Gets the first item of type in the children. Type to search for. First instance if found. An enumerator used for . Gets the current for the enumerator. Moves the enumerator forward. true if it was moved, false otherwise. Represents the base class from which leaf elements are derived. Gets or sets represents a shadow element to hold child elements if there are any. Initializes a new instance of the OpenXmlLeafElement class. Represents the base class from which leaf elements that have text are derived. Initializes a new instance of the OpenXmlLeafTextElement class. Initializes a new instance of the OpenXmlLeafTextElement class using the supplied text. Convert the text into value (depends on the type defined in the schema). The text to convert. An OpenXmlSimpleType value. All generated classes that are derived from this class will generate this method. Gets or sets the text of the current element. OpenXmlLoadMode - load mode, default is Lazy Full - load all the OpenXmlElements recursively Lazy (default) - load N layer descendant elements from the current element, lazy load (cache OuterXml) for others default is populate 3 layers Load all the OpenXmlElements recursively Load only one layer element, cache OuterXml Represents an Open XML non element node (i.e. PT, Comments, Entity, Notation, XmlDeclaration). Initializes a new instance of the OpenXmlMiscNode class using the supplied XmlNodeType value. The XmlNodeType value. Initializes a new instance of the OpenXmlMiscNode class using the supplied XmlNodeType and outer XML values. The XmlNodeType value. The outer XML of the element. Gets the type of XML node. Load the out xml from the XmlReader. The XmlReader not be moved. Represents the Open XML part reader class. Initializes a new instance of the OpenXmlPartReader class using the supplied OpenXmlPart class. The OpenXmlPart to read. Initializes a new instance of the class. The to read. Options on how to read the part. Initializes a new instance of the OpenXmlPartReader class using the supplied OpenXmlPart and Boolean values. The OpenXmlPart to read. Specify false to indicate to the reader to skip all miscellaneous nodes. The default value is false. Initializes a new instance of the OpenXmlPartReader class using the supplied OpenXmlPart and Boolean values. The OpenXmlPart to read. Specify false to indicate to the reader to skip all miscellaneous nodes. Specify true to indicate to the reader to ignore insignificant white space. Initializes a new instance of the class. The stream for the part data. A feature collection used to identify what parts and elements to create. Options for how to read the . Gets the encoding of the XML file. Returns null if encoding is not specified in the XML file. Gets the standalone property of the XML file. Returns false if there is no "standalone" in the XML declaration stream. Gets the list of attributes of the current element. Gets the namespace declarations of the current element. Moves to next element true if the next element was read successfully; false if there are no more elements to read. Move to first child true if the first child element was read successfully; false if there are no child elements to read. Only can be called on element start. Current will move to the end tag if no child element. Move to next sibling element true if the next sibling element was read successfully; false if there are no more sibling elements to read. Current will move to the end tag of the parent if no more sibling element. Skips the children of the current node. A collection of options for reading part information. Gets or sets a value indicating whether miscellaneous nodes are read. Gets or sets the maximum characters allowed in a part. Gets or sets a value indicating whether whitespace will be ignored. Gets or sets a value indicating whether the stream should be closed on the part reader being closed. Represents a base class for all root elements. Initializes a new instance of the OpenXmlPartRootElement class. Initializes a new instance of the OpenXmlPartRootElement class using the supplied OpenXmlPart. The OpenXmlPart class. Initializes a new instance of the OpenXmlPartRootElement class using the supplied outer XML. The outer XML of the element. Initializes a new instance of the OpenXmlPartRootElement class using the supplied list of child elements. All child elements. Initializes a new instance of the OpenXmlPartRootElement class using the supplied array of child elements. All child elements Gets the OpenXmlElementContext. Load the DOM tree from the Open XML part. The part this root element to be loaded from. Thrown when the part contains an incorrect root element. Load the DOM tree from the Open XML part. The part this root element to be loaded from. The stream of the part. Returns true when the part stream is loaded successfully into this root element. Returns false when the part stream does not contain any xml element. Thrown when the part stream contains an incorrect root element. Save the DOM into the OpenXML part. Saves the DOM tree to the specified stream. The stream to which to save the XML. Gets the part that is associated with the DOM tree. It returns null when the DOM tree is not associated with a part. Saves the data in the DOM tree back to the part. This method can be called multiple times and each time it is called, the stream will be flushed. Call this method explicitly to save the changes in the DOM tree. Thrown when the tree is not associated with a part. Reloads the part content into an Open XML DOM tree. This method can be called multiple times and each time it is called, the tree will be reloaded and previous changes on the tree are abandoned. Thrown when the tree is not associated with a part. Saves the current node to the specified XmlWriter. The XmlWriter to which to save the current node. Gets a value indicating whether the Save method will try write all namespace declaration on the root element. Defines the OpenXmlPartWriter. Initializes a new instance of the OpenXmlPartWriter. The OpenXmlPart to be written to. Initializes a new instance of the OpenXmlPartWriter. The OpenXmlPart to be written to. The encoding for the XML stream. Initializes a new instance of the OpenXmlPartWriter. The given part stream. Initializes a new instance of the OpenXmlPartWriter. The given part stream. The encoding for the XML stream. Writes the XML declaration with the version "1.0". Writes the XML declaration with the version "1.0" and the standalone attribute. If true, it writes "standalone=yes"; if false, it writes "standalone=no". Writes out a start element tag of the current element of the OpenXmlReader. And write all the attributes of the element. The OpenXmlReader to read from. Writes out a start element tag of the current element of the OpenXmlReader. And write the attributes in attributes. The OpenXmlReader to read from. The attributes to be written, can be null if no attributes. Writes out a start element tag of the current element of the OpenXmlReader. And write the attributes in attributes. The OpenXmlReader to read from. The attributes to be written, can be null if no attributes. The namespace declarations to be written, can be null if no namespace declarations. Writes out a start tag of the element and all the attributes of the element. The OpenXmlElement object to be written. Writes out a start tag of the element. And write the attributes in attributes. The attributes of the element will be omitted. The OpenXmlElement object to be written. The attributes to be written. Writes out a start tag of the element. And write the attributes in attributes. The attributes of the element will be omitted. The OpenXmlElement object to be written. The attributes to be written. The namespace declarations to be written, can be null if no namespace declarations. Closes one element. Writes the given text content. The text to be written. Write the OpenXmlElement to the writer. The OpenXmlElement object to be written. Close the writer. Represents the Open XML reader class. Initializes a new instance of the OpenXmlReader class. Initializes a new instance of the OpenXmlReader class using the supplied Boolean value. Specify false to indicate to the reader to skip all miscellaneous nodes. The default value is false. Creates an OpenXmlReader from the specified OpenXmlPart. The OpenXmlPart to read. The newly created OpenXmlReader. Creates an OpenXmlReader from the specified OpenXmlPart and Boolean values. The OpenXmlPart to read. Specify false to indicate to the reader to skip all miscellaneous nodes. The default value is false. The newly created OpenXmlReader. Creates an OpenXmlReader from the specified OpenXmlPart and Boolean values. The OpenXmlPart to read. Specify false to indicate to the reader to skip all miscellaneous nodes. The default value is false. Specify true to indicate to the reader to ignore insignificant white space. The default value is true. The newly created OpenXmlReader. Creates an OpenXmlReader from the OpenXmlElement (travel the DOM tree). The OpenXmlElement to read. The newly created OpenXmlReader. Creates an OpenXmlReader from the OpenXmlElement (travel the DOM tree). The OpenXmlElement to read. Specify false to indicate to the reader to skip all miscellaneous nodes. The default value is false. The newly created OpenXmlReader. Gets a value indicating whether the OpenXmlReader will read or skip all miscellaneous nodes. Gets the encoding of the XML file. Returns null if the encoding is not specified in the XML file. Gets the standalone property in the XML declaration of the XML stream. The default value is null. Gets a value indicating whether the current node has any attributes. Gets the list of attributes of the current element. Gets the namespace declarations of the current element. Gets the type of the corresponding strongly typed class of the current element. Gets a value indicating whether the current node is a miscellaneous XML node (non element). and will be false when is true. Gets a value indicating whether the current node is an element start. Gets a value indicating whether the current node is an element end. Gets the depth of the current node in the XML document. The depth of the root element is 0. Gets a value indicating whether the reader is positioned at the end of the stream. Gets the local name of the current node. Gets the namespace URI (as defined in the W3C Namespace specification) of the node on which the reader is positioned. Gets the namespace prefix associated with the current node. Gets an instance of if available for the current reader. An object for obtaining information about line info Moves to read the next element. Returns true if the next element was read successfully; false if there are no more elements to read. Moves to read the first child element. Returns true if the first child element was read successfully; false if there are no child elements to read. This method can only be called on element start. At the current node, the reader will move to the end tag if there is no child element. Moves to read the next sibling element. Returns true if the next sibling element was read successfully; false if there are no more sibling elements to read. At the current node, the reader will move to the end tag of the parent node if there are no more sibling elements. Skips the child elements of the current node. Loads the element at current cursor. The OpenXmlElement that was loaded. Thrown when the current is the end element. The new current element is the end of the element after LoadCurrentElement(). Gets the text of the element if the element is an OpenXmlLeafTextElement. Returns String.Empty for other elements. The text of the element if the element is an OpenXmlLeafTextElement. Returns String.Empty for other elements. Closes the reader. Thrown if the object is disposed. Closes the reader, and releases all resources. Specify true to release both managed and unmanaged resources; false to release only unmanaged resources. Closes the reader, and releases all resources. Represents elements that are not defined in the Office Open XML ECMA standard. OpenXmlUnknownElement constructor Initializes a new instance of the OpenXmlUnknownElement class using the supplied element name. The element name. Initializes a new instance of the OpenXmlUnknownElement class using the supplied qualified element name and namespace URI. The qualified element name. The namespace URI of the element. Initializes a new instance of the OpenXmlUnknownElement class using the supplied prefix, local name, and namespace URI. The namespace prefix of the element. The local name of the element. The namespace URI of the element. Gets the text of the unknown element, only if the unknown element has only one child that is a text node. Extension methods for managing unknown elements Creates a new OpenXmlUnknownElement class by using the outer XML. Container to create unknown element from. The outer XML of the element. A new OpenXmlUnknownElement class. Defines the OpenXmlWriter. Initializes a new instance of the OpenXmlWriter. Create an OpenXmlWriter from the OpenXmlPart. The OpenXmlPart to be written. The created OpenXmlWriter instance. Create an OpenXmlWriter from the OpenXmlPart. The OpenXmlPart to be written. The encoding for the XML stream. The created OpenXmlWriter instance. Create an OpenXmlWriter on a given stream. The target stream. The created OpenXmlWriter instance. Create an OpenXmlWriter on given stream The target stream. The encoding for the XML stream. The created OpenXmlWriter instance. Writes the XML declaration with the version "1.0". Writes the XML declaration with the version "1.0" and the standalone attribute. If true, it writes "standalone=yes"; if false, it writes "standalone=no". Writes out a start element tag of the current element of the OpenXmlReader. And write all the attributes of the element. The OpenXmlReader to read from. Writes out a start element tag of the current element of the OpenXmlReader. And write the attributes in attributes. The OpenXmlReader to read from. The attributes to be written, can be null if no attributes. Writes out a start element tag of the current element of the OpenXmlReader. And write the attributes in attributes. The OpenXmlReader to read from. The attributes to be written, can be null if no attributes. The namespace declarations to be written, can be null if no namespace declarations. Writes out a start tag of the element and all the attributes of the element. The OpenXmlElement object to be written. Writes out a start tag of the element. And write the attributes in attributes. The attributes of the element will be omitted. The OpenXmlElement object to be written. The attributes to be written. Writes out a start tag of the element. And write the attributes in attributes. The attributes of the element will be omitted. The OpenXmlElement object to be written. The attributes to be written. The namespace declarations to be written, can be null if no namespace declarations. Closes one element. Write the OpenXmlElement to the writer. The OpenXmlElement object to be written. When overridden in a derived class, writes the given text content. The text to write. Close the writer. Throw if object is disposed. Closes the reader, and releases all resources. true to release both managed and unmanaged resources; false to release only unmanaged resources. Closes the writer, and releases all resources. Extensions to retrieve package details. Gets the current for the . Current package. The underlying . If is null. A strongly-typed resource class, for looking up localized strings, etc. Returns the cached ResourceManager instance used by this class. Overrides the current thread's CurrentUICulture property for all resource lookups using this strongly typed resource class. Looks up a localized string similar to The part cannot be added here.. Looks up a localized string similar to Schemas with ParticleType.Any is not supported. Looks up a localized string similar to Cannot change the document type.. Looks up a localized string similar to Cannot change the document type. The document may be corrupt.. Looks up a localized string similar to The element does not allow the specified attribute.. Looks up a localized string similar to Cannot load the root element from the part. The part contains invalid data.. Looks up a localized string similar to Cannot reload the DOM tree since this element is not associated with an OpenXmlPart.. Looks up a localized string similar to Cannot save DOM tree since this element is not associated with an OpenXmlPart.. Looks up a localized string similar to Cannot set XML namespace declaration here. Use AddNamespaceDeclaration method instead.. Looks up a localized string similar to The OpenXmlValidator cannot validate against AlternateContent, AlternateContentChoice and AlternateContentFallback.. Looks up a localized string similar to The OpenXmlValidator cannot validate against OpenXmlMiscNode.. Looks up a localized string similar to The OpenXmlValidator cannot validate against OpenXmlUnknownElement.. Looks up a localized string similar to A circular reference has been detected.. Looks up a localized string similar to The specified DataPart is referenced by other parts.. Looks up a localized string similar to The specified DataPartReferenceRelationship is not allowed with this parent.. Looks up a localized string similar to You should not validate document preprocessed based on FileFormatVersions.{0} against FileFormatVersions.{1} constraints. The preprocessing file format version is set in OpenSettings. Also check the file format version setting in the OpenXmlValidator.. Looks up a localized string similar to The document has exceeded the size limit. Its type cannot be changed.. Looks up a localized string similar to The prefix "{0}" is already defined in current node.. Looks up a localized string similar to The specified argument is not a child of this element.. Looks up a localized string similar to The validator is set to validate content based on Microsoft Office {0} rules. The passed in element is not defined in Microsoft Office {0}.. Looks up a localized string similar to Cannot insert the OpenXmlElement "newChild" because it is part of a tree. . Looks up a localized string similar to Empty collection.. Looks up a localized string similar to The contentType parameter has incorrect value.. Looks up a localized string similar to An ExtendedPart was encountered with a relationship type that starts with "http://schemas.openxmlformats.org". Expected a defined part instead based on the relationship type.. Looks up a localized string similar to ExtendedPart must be added by AddExtendedPart( ).. Looks up a localized string similar to The specified ExternalRelationship is not referenced by this part.. Looks up a localized string similar to Package could not be opened for stream. See inner exception for details and be aware that there are behavior differences in stream support between .NET Framework and Core.. Looks up a localized string similar to Feature {0} is not available in this collection.. Looks up a localized string similar to The specified FileFormatVersions parameter has an invalid value: {0}. Looks up a localized string similar to Could not find document. Looks up a localized string similar to The root XML element "{0}" in the part is incorrect. The expected root XML element is: "{1}".. Looks up a localized string similar to The specified DataPart is not in this document.. Looks up a localized string similar to The specified MediaDataPart is not in this document.. Looks up a localized string similar to The specified OpenXmlPart is not referenced by this part.. Looks up a localized string similar to The specified ExternalRelationship is not referenced by this part.. Looks up a localized string similar to Error in implicit conversion. Cannot convert null object.. Looks up a localized string similar to This OpenXmlElement's InnerXml cannot be set.. Looks up a localized string similar to The content type of the part is invalid. The expected content type is: {0}.. Looks up a localized string similar to The specified value is not valid according to the specified enum type.. Looks up a localized string similar to Cannot set the MainPartContentType property to this value because it is not valid for this type of document.. Looks up a localized string similar to The specified MarkupCompatibilityProcessSettings.TargetFileFormatVersions is invalid to process the extensibility markup.. Looks up a localized string similar to The XML has invalid content and cannot be constructed as an element.. Looks up a localized string similar to The XML has invalid content and cannot be constructed as an element.. Looks up a localized string similar to The specified package is not valid.. Looks up a localized string similar to The document cannot be opened because there is an invalid part with an unexpected content type. [Part Uri={0}], [Content Type={1}], [Expected Content Type={2}].. Looks up a localized string similar to Text string can only be written out in OpenXmlLeafTextElement.. Looks up a localized string similar to An invalid XML ID string. Looks up a localized string similar to This OpenXmlLeafElement's InnerXml can only be set to null or to an empty string.. Looks up a localized string similar to LocalName is null or empty.. Looks up a localized string similar to The part cannot be added to this package because its content type is not allowed in this type of document.. Looks up a localized string similar to The package contains malformed URI relationships. Please ensure the package is opened with a stream (that is seekable) or a file path to have the SDK automatically handle these scenarios.. Looks up a localized string similar to An Audio / Video part shall not have implicit or explicit relationships to other parts defined by Open XML Standard.. Looks up a localized string similar to There are more than one relationship references that target the specified part.. Looks up a localized string similar to Namespace ids are only available for namespaces for Office 2021 and before. Please use prefixes or URLs instead.. Looks up a localized string similar to The specified package is invalid. The main part is missing.. Looks up a localized string similar to Non-composite elements do not have child elements.. Looks up a localized string similar to The method or operation has not been implemented.. Looks up a localized string similar to No external relationship with the specified ID was found.. Looks up a localized string similar to No hyperlink relationship with the specified ID was found.. Looks up a localized string similar to No ReferenceRelationship with the specified ID was found.. Looks up a localized string similar to Current Markup Compatibility mode does not understand namespace prefix "{0}".. Looks up a localized string similar to Only one instance of the type is allowed for this parent.. Looks up a localized string similar to This operation requires that the document be opened with ReadWrite (or Write) access.. Looks up a localized string similar to This operation requires that the package be opened with Read access.. Looks up a localized string similar to Arguments openXmlPackage and its parent cannot be null at same time.. Looks up a localized string similar to The parent of this element is null.. Looks up a localized string similar to The specified part is already referenced as a target part by a relationship with a different ID.. Looks up a localized string similar to The part has been destroyed.. Looks up a localized string similar to The XML content is empty.. Looks up a localized string similar to The specified part is not allowed with this parent.. Looks up a localized string similar to The validator is set to validate content based on Microsoft Office {0} rules. The passed in part is not defined in Microsoft Office {0}.. Looks up a localized string similar to A relationship can only be created between two parts in a package.. Looks up a localized string similar to Cannot set the given root element to this part. The given part root element has already been associated with another OpenXmlPart.. Looks up a localized string similar to The XML content is unknown. Cannot create an OpenXmlReader on that content.. Looks up a localized string similar to The {0} property cannot be set when the {1} property is not null.. Looks up a localized string similar to The reader is now positioned at the end element tag.. Looks up a localized string similar to The reader is now positioned at EOF.. Looks up a localized string similar to The reader is now positioned before the first element. Call OpenXmlReader.Read() before this operation.. Looks up a localized string similar to The specified ReferenceRelationship is not referenced by this part.. Looks up a localized string similar to Id conflicts with the Id of an existing relationship.. Looks up a localized string similar to A required part is missing. The class name is stored in the PartClassName property.. Looks up a localized string similar to Root element is null.. Looks up a localized string similar to A shared part is referenced by multiple source parts with a different relationship type.. Looks up a localized string similar to The stream was not opened for writing.. Looks up a localized string similar to The stream was not opened for reading.. Looks up a localized string similar to ISO 29500 Strict formatted document can't be opened while edit operation is enabled.. Looks up a localized string similar to The string argument cannot be empty.. Looks up a localized string similar to The specified string is empty.. Looks up a localized string similar to The text value is not a valid enumeration value.. Looks up a localized string similar to The text value is invalid. It can be only 'true', 'false', 'on', 'off', '0', '1'.. Looks up a localized string similar to The text value is invalid. It can be only 'true', 'false', 't', 'f', ''.. Looks up a localized string similar to The text value is invalid. It can be only 'true', 'false', 't', 'f'.. Looks up a localized string similar to Encountered unexpected reentrancy while accessing part root. Please check if part root is loaded first by calling OpenXmlPart.IsRootElementLoaded. Looks up a localized string similar to There is invalid extensibility markup in "{0}".. Looks up a localized string similar to An unknown error occurred. Original message: '{0}'. Looks up a localized string similar to The specified package is unknown.. Looks up a localized string similar to Do not add hyperlink relationships through the AddExternalRelationship() method. Use AddHyperlinkRelationship() instead.. Looks up a localized string similar to The OpenXmlPackage.Validate method found an error in the document.. Represents the xsd:base64Binary value for attributes. Initializes a new instance of the class. Initializes a new instance of the class by deep copying the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Gets or sets the Base64 binary string value. The lexical forms of base64Binary values are limited to the 65 characters of the Base64 Alphabet defined in [RFC 2045], i.e., a-z, A-Z, 0-9, the plus sign (+), the forward slash (/) and the equal sign (=), together with the characters defined in [XML 1.0 (Second Edition)] as white space. No other characters are allowed. Implicitly converts the specified value to a value. The object to convert. The base64Binary string. Returns null when is null. Initializes a new instance of a class using the supplied string. The specified base64Binary value. A new instance with the value. Returns a new object that was created from a value. A value to use to create a new object. A that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified value to a value. The to convert. The converted value. Thrown when is null. Initializes a new instance of the class by implicitly converting the supplied value. The value. A new instance with the value. Returns a new object that was created by using the supplied value. A value to use to create a new object. A that corresponds to the value parameter. Returns the representation of a object. A object to retrieve a representation. A value that represents a object. Represents the byte value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified value to a value. The to convert. The converted value. Thrown when is null. Initializes a new instance of the class by implicitly converting the supplied value. The value. A new instance with the value. Returns a new object created from a value. A value to create a new object from. A that corresponds to the value parameter. Returns the value representation of a object. A object to retrieve a value representation. A value that represents a object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Convert the text to meaningful value. Implicitly converts the specified value to a value. The object to convert. The converted value. Thrown when is null. Initializes a new instance of the class by implicitly converting the supplied value. The value. A new instance with the value. Returns a new object that was created from a value. A value to use to create a new object. A object that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. Represents the decimal value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified value to a value. The to convert. The converted value. Thrown when is null. Initializes a new instance of the class by implicitly converting the supplied value. The value. A new instance with the value. Returns a new object that was created from a value. A value to use to create a new object. A object that corresponds to the value parameter. Returns the representation of a object. A object to use to retrieve a representation. A value that represents a object. Represents the double value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the by deep copying the supplied value. The source class. Implicitly converts the specified value to a value. The object to convert. The converted value. Thrown when is null. Initializes a new instance of the class by implicitly converting the supplied value. The value. A new instance with the value. Returns a new object created from a value. A value to use to create a new object. A object that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. Represents the enum value for attributes. Type of enum. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value of type T. The value of type T. Initializes a new instance of the by deep copying the supplied class. The source class. Implicitly converts the specified value to an enum. The to convert. The converted enum value. Thrown when is null. Initializes a new class by converting the supplied enum value. The specified value. A new instance corresponding to the value. Implicitly converts the specified value to a String value. The value to convert. The converted string. Represent the xsd:hexBinary value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied string. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. hexBinary has a lexical representation where each binary octet is encoded as a character tuple, consisting of two hexadecimal digits ([0-9a-fA-F]) representing the octet code. For example, "0FB7" is a hex encoding for the 16-bit integer 4023 (whose binary representation is 111110110111). Gets or sets the hex binary value Attempts to retrieve the bytes associated with this if available. The bytes if successfully written. Whether bytes where successfully written. Attempts to write the bytes associated with this if available. A buffer to write to Whether bytes where successfully written. Returns a new object that was created from . A byte array to use to create a new object. A object that corresponds to the value parameter. Returns a new object that was created from . A byte array to use to create a new object. A object that corresponds to the value parameter. Implicitly converts the specified value to a value. The object to convert. The converted HexBinary string. Returns null when is null. Implicitly converts the specified value to a object. The specified hexBinary value. A new instance with the value. Returns a new object that was created from a value. A value to use to create a new object. A object that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. A factory of hex strings. Returns a new hex string that was created from . A byte array to use to create a new hex string. A hex string that corresponds to the value parameter. Returns a new hex string that was created from . A byte array to use to create a new hex string. A hex string that corresponds to the value parameter. A definition of an OpenXml enum value Gets a value indicating whether the current value is valid. Gets the version this type was introduced in. Gets the value of the enum. Factory to create a new enum value of the specified type. Type to create enum. Creates an enum value with the supplied value. Value of enum Constructed enum. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the by deep copying the supplied IntValue class. The source class. Implicitly converts the specified value to an value. The to convert. The converted value. Thrown when is null. Implicitly converts an value to a instance. The specified value. A new instance with the value. Returns a new object that was created from an value. An value to use to create a new object. An that corresponds to the value parameter. Returns an representation of an object. An object to retrieve an representation. An value that represents an object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the by deep copying the supplied class. The source class. Implicitly converts the specified value to an value. The to convert. The converted value. Thrown when is null. Implicitly converts an value to a specified instance. The specified value. A new instance with the value. Returns a new object that was created from an value. An value to use to create a new object. An that corresponds to the value parameter. Returns the representation of an object. An object to use to retrieve an representation. An value that represents an object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the by deep copying the supplied class. The source class. Implicitly converts the specified to an value. The to convert. The converted value. Thrown when is null. Implicitly converts an value to an value. The specified value. A new instance with the value. Returns a new object that was created from an value. An value to use to create a new object. An that corresponds to the value parameter. Returns the representation of an object. An object used to retrieve an representation. An value that represents an object. Represents the xsd:integer value for attributes. Integer is derived from decimal by fixing the value of fractionDigits to be 0 and disallowing the trailing decimal point. The value space of integer is the infinite set {...,-2,-1,0,1,2,...}. The base type of integer is decimal. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified to an value. The to convert. The converted value. Thrown when is null. Implicitly converts the specified value to an class. The specified value. A new instance with the value. Returns a new object created from an value. An value to use to create a new object. An that corresponds to the value parameter. Returns the representation of an object. An object used to retrieve an representation. An value that represents an object. Represents the list value attributes (xsd:list). Initializes a new instance of the class. Initializes a new instance of the class using the supplied list of values. The list of the values. Initializes a new instance of the class by deep copying the supplied class. The source class. Gets the values. Convert the text to meaningful value. Convert the text to meaningful value. Gets or sets the inner XML text. Defines an data type for attributes that have enum values that are values that represent: 'true' or 'false', 'on' or 'off', or '0' or '1'. Initializes a new instance of class. Initializes a new instance of class using the supplied value. The value. Initializes a new instance of class using the supplied class. The source class. Gets the real text value of the text value. The text value which could be 'true', 'false', 'on', 'off', '0', or '1'. True for 'true', 'on', '0', or '1'. Gets the default text value. The boolean value. "1" for true, "0" for false. Implicitly converts the specified object to a value. The object to convert. The converted value. Implicitly converts a value to an value. The value to convert. The converted . Returns a new object created from a value. A value that is used to create a new object. A that corresponds to the value parameter. Returns the internal representation of a object. A object to retrieve an internal representation. A value that represents a object. Represents a comparable and equatable reference. The type of the value. Creates a new instance of . Initializes a new instance of the class by deep copying the supplied value. The source instance. Gets or sets the value of this instance. Determines whether the specified operands are equal. The left operand, or null. The right operand, or null. True if the operands are equal; otherwise, false. Determines whether the specified operands are not equal. The left operand, or null. The right operand, or null. True if the operands are not equal; otherwise, false. Determines whether the left operand is less than the right operand. The left operand, or null. The right operand, or null. True if the left operand is less than the right operand; otherwise, false. Determines whether the left operand is less than or equal to the right operand. The left operand, or null. The right operand, or null. True if the left operand is less than or equal to the right operand; otherwise, false. Determines whether the left operand is greater than the right operand. The left operand, or null. The right operand, or null. True if the left operand is greater than the right operand; otherwise, false. Determines whether the left operand is greater than or equal to the right operand. The left operand, or null. The right operand, or null. True if the left operand is greater than or equal to the right operand; otherwise, false. Represents a comparable and equatable value. The type of the value. Creates a new instance of . Creates a new instance of . The value in type T. Initializes a new instance of the class by deep copying the supplied value. The source instance. Determines whether the specified operands are equal. The left operand, or null. The right operand, or null. True if the operands are equal; otherwise, false. Determines whether the specified operands are not equal. The left operand, or null. The right operand, or null. True if the operands are not equal; otherwise, false. Determines whether the left operand is less than the right operand. The left operand, or null. The right operand, or null. True if the left operand is less than the right operand; otherwise, false. Determines whether the left operand is less than or equal to the right operand. The left operand, or null. The right operand, or null. True if the left operand is less than or equal to the right operand; otherwise, false. Determines whether the left operand is greater than the right operand. The left operand, or null. The right operand, or null. True if the left operand is greater than the right operand; otherwise, false. Determines whether the left operand is greater than or equal to the right operand. The left operand, or null. The right operand, or null. True if the left operand is greater than or equal to the right operand; otherwise, false. Represents the abstract base class for all simple types that are used in attributes. Initializes a new instance of the OpenXmlSimpleType class. Initializes a new instance of the OpenXmlSimpleType class. The source OpenXmlSimpleType. Gets or sets the internal raw text value. DO NOT use this property. Only for OpenXmlSimpleType.cs internal use. Gets a value indicating whether the underneath text value is a valid value. Gets or sets the inner XML text. Returns a String that represents the current value. A String that represents the current value. Creates a duplicate of the current value. This method is a deep copy clone. The cloned value. Implicitly converts a specified attribute value to a String value. The OpenXmlSimpleType instance. The converted string value. Test whether the value is allowed in the specified file format version. Only for EnumValue. The file format version. True if the value is defined in the specified file format version. Method to support enum validation in schema validation. Represents a generic value for simple value types (such as , , , etc). The type of the value. Initializes a new instance of the OpenXmlSimpleValue class. Initializes a new instance of the OpenXmlSimpleValue class. The value in type T. Initializes a new instance of the OpenXmlSimpleValue class by deep copying the supplied OpenXmlSimpleValue class. The source OpenXmlSimleValue class. Gets or sets the value of the simple value. Convert the text to meaningful value. Convert the text to meaningful value with no exceptions Implicitly converts the specified value to T. The OpenXmlSimpleValue instance. The internal value in the OpenXmlSimpleValue class. Thrown when xmlAttribute is null. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the by deep copying the supplied class. The source class. Implicitly converts the specified to an value. The to convert. The converted value. Thrown when is null. Implicitly converts the specified value to an instance. The specified value. A new instance with the value. Returns a new object created from a Byte value. An value to use to create a new object. An that corresponds to the value parameter. Returns the representation of an object. An object to retrieve an representation. An value that represents an object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified object to a value. The to convert. The converted value. Thrown when is null. Implicitly converts the specified value to a object. The specified value. A new instance with the value. Returns a new object that was created from a value. A value to use to create a new object. A object that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. Represents the string value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied string. The string value. Initializes a new instance of the class by deep copying the supplied class. The source class. Gets or sets the string value. Implicitly converts the specified value to a value. The to convert. The converted value. Returns nullwhen is null. Implicitly converts the specified value to a object. The specified value. A new instance with the value. Returns a new object that was created from a value. A value to use to create a new object. A that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. Represents the data type for attributes that have enum values that are values that represent 't' or 'f', or 'true' or 'false'. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class using the supplied class. The source class. Implicitly converts a object to a value. The source to convert. The converted value. Implicitly converts a value to a TrueFalsBlankValue value. The source value to convert. The converted value. Returns a new object created from a value. A value to create a new object from. A that corresponds to the value parameter. Returns the internal representation of a object. A object to retrieve an internal representation. A value that represents a object. Gets the real boolean value of the text value. The text value which could be 't', 'f', 'true', 'false', ''. True on text value is 't', 'true'; False on text value is 'f', 'false', '' Gets the text value. The boolean value. "t" for True, "f" for false. Represents the data type for attributes that have enum values that are values that represent 't' or 'f', or 'true' or 'false'. Initializes a new instance of class. Initializes a new instance of class using the supplied value. The value. Initializes a new instance of the class using the supplied class. The source class. Implicitly converts a class to a value. The to convert. The converted value. Implicitly converts a value to a instance. The value to convert. The converted value. Returns a new object that was created from a value. A value to use to create a new object. A that corresponds to the value parameter. Returns the internal representation of a object. A object to retrieve an internal representation. A value that represents a object. Gets the real boolean value of the text value. The text value which could be 't', 'f', 'true', 'false'. True on text value is 't', 'true'; False on text value is 'f', 'false'. Gets the default text value. The boolean value. "t" false true, "f" for false. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified object to a value. The to convert. The converted value. Thrown when is null. Implicitly converts a value to a class. The specified value. A new instance with the value. Returns a new object created from a value. A value to use to create a new object. A that corresponds to the value parameter. Returns the representation of a object. A object to retrieve a representation. A value that represents a object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the supplied class. The source class. Implicitly converts the specified class to a value. The class to convert. The converted value. Thrown when is null. Implicitly converts a specified value to a class. The specified value. A new instance with the value. Returns a new object created from a value. A value to use to create a new object. A class that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a value representation. A value that represents a object. Represents the value for attributes. Initializes a new instance of the class. Initializes a new instance of the class using the supplied value. The value. Initializes a new instance of the class by deep copying the class. The source class. Implicitly converts the specified object to a value. The object to convert. The converted value. Thrown when is null. Implicitly converts a specified value to a class. The specified value. A new instance with the value. Returns a new object created from a value. A value to use to create a new object. A that corresponds to the value parameter. Returns the value representation of a object. A object used to retrieve a representation. A value that represents a object. DocumentValidator - defines a base class for document validator. Initializes a new instance of the DocumentValidator. The shared validation cache. Validate the specified document. The document to be validated. The settings to be used during validation. Return results in ValidationResult. Validate the specified part. The OpenXmlPart to be validated. The settings to be used during validation. Gets all the parts needs to be validated. Defines the OpenXmlValidator. Initializes a new instance of the . Defaults to . Initializes a new instance of the . The target file format to be validated against. Thrown when the parameter is not a known format. Gets the target file format to be validated against. Gets or sets the maximum number of errors the OpenXmlValidator will return. Default is 1000. A 0 value means no limitation. Throw when the value set is less than zero. Validates the specified document. The target . A set of validation errors. Thrown when the parameter is null. Validates the specified document. The target . Cancellation token A set of validation errors. Thrown when the parameter is null. Validates the specified content in the . The target OpenXmlPart. A set of validation errors. Thrown when the parameter is null. Throw when the specified part is not a defined part in the specified version. Validates the specified content in the . The target OpenXmlPart. Cancellation token A set of validation errors. Thrown when the parameter is null. Throw when the specified part is not a defined part in the specified version. Validates the specified element. The target OpenXmlElement. A set of validation errors. Thrown when the parameter is null. Thrown when the is type of , , , or . Thrown when the is not defined in the specified . Validates the specified element. The target OpenXmlElement. Cancellation token A set of validation errors. Thrown when the parameter is null. Thrown when the is type of , , , or . Thrown when the is not defined in the specified . Defines the base class for OpenXmlPackage and OpenXmlPart. Validate against a given version Version to validate against The validation errors Validates the package (do not validate the xml content in each part). The Open XML container to validate Version to validate against Parts already processed. All particle validator. Initializes a new instance of the AllParticleValidator. Try match the particle. The context information for validation. Try match the particle once. The context information for validation. xsd:all can only contain xsd:element children and maxOccurs of each children can only be 1 Validator for MarkupCompatibility feature - AlternateContent. See Ecma376 "Part 5: Markup Compatibility and Extensibility" for reference. Validate ACB syntax - AlternateContent, Choice, Fallback and their attributes. Validate attributes on AlternateContent, Choice and Fallback element. The element to be validated. Test whether the attribute is "xml:space" or "xml:lang". The attribute to be tested. True if the attribute is "xml:space" or "xml:lang". Particle constraint data for particle which type is ParticleType.Any. xsd:any can contains only one namespace. If there are multiple namespace in the original xsd, it will be split into multiple xsd:any in binary database. Initializes a new instance of the AnyParticle. Gets the value of the xsd:any@namespace. Any particle validator. Initializes a new instance of the AnyParticleValidator. Try match this element once. The context information for validation. Try match this element. The context information for validation. Get the required elements - elements which minOccurs > 0. True if there are required elements in this particle. Get the required elements - elements which minOccurs > 0. Required elements in this particle. Get the expected elements - elements which minOccurs >= 0. True if there are expected elements in this particle. Get the expected elements - elements which minOccurs >= 0. Expected elements in this particle. Choice particle validator. Initializes a new instance of the ChoiceParticleValidator. Try match the particle once. The context information for validation. Get the required elements - elements which minOccurs > 0. True if there are required elements in this particle. Compatibility-Rule Attributes Validate compatibility rule attributes - Ignorable, ProcessContent, PreserveElements, PreserveAttributes, MustUnderstand. The validation context. Validate QName list in PreserveElements, PreserveAttributes, ProcessContent. The QName list to be validated. The ignorable namespaces. The QName that is not valid. Particle constraint for sequence, choice, all, and group. Initializes a new instance of the CompositeParticle. Gets the children particles. Base class for composite particle - sequence, choice, all, group. Defines some common functions. Gets the constraint to be validated. Initializes a new instance of the CompositeParticleValidator. Be called on root particle of complex type. Try match the particle. The context information for validation. Get the required elements - elements which minOccurs > 0. True if there are required elements in this particle. Get the expected elements - elements which minOccurs >= 0. True if there are expected elements in this particle. Particle constraint data for particle which type is ParticleType.Element. Initializes a new instance of the ElementParticle. Hold expected children for error reporting. Add a known element of the child. Add namespace string of xsd:any child. Add all expected children from another ExpectedChildren. Gets the count of required children elements. Returns the list of expected children message used in error reporting. The parent element. Used to map ElementTypeId to element name for child element. The Fmt_ListOfPossibleElements sub string to be used in error reporting. Group particle validator. Initializes a new instance of the ChoiceParticleValidator. Try match the particle once. The context information for validation. Defines methods to validate particles. Try match the particle once. The context information for validation. Try match the particle, The context information for validation. Get the required elements - elements which minOccurs > 0. True if there are required elements in this particle. Get the required elements - elements which minOccurs > 0. Required elements in this particle. Get the expected elements - elements which minOccurs >= 0. True if there are expected elements in this particle. Get the expected elements - elements which minOccurs >= 0. Expected elements in this particle. Static class to hold extension methods for OpenXmlElement. Gets the next child (skip all MC elements (skip ACB layer, skip Ignorable element.)). The logic parent element. The child element to be tested. Markup Compatibility context. Targeting file format (Office2007 or Office201). The logic child (when we apply a MC preprocessor). A constraint data item for complex type. The ParticleType, MinOccurs, MaxOccurs means the constraint of this particle in the parent. Initializes a new instance of the ParticleConstraint. Gets the type of the particle. Gets the minOccurs constraint. Gets the maxOccurs constraint. 0 means "unbounded". Gets a value indicating whether the maxOccurs is unbounded. Gets a value indicating whether maxOccurs is unbounded or maxOccurs > 1 Test whether the count is valid. The count of the occurs. Returns true if maxOccurs="unbounded" or this.MaxOccurs>count. Gets a ParticleValidator for this particle constraint. Particle match result. Information about particle match. Initializes a new instance of the ParticleMatchInfo. Initializes a new instance of the ParticleMatchInfo. Gets or sets particle match result. Gets the start element to be matched by a particle rule. Gets or sets the last element matched by the particle match. Gets or sets message on match error TODO: how can this be decoupled from the validator? Gets the element type ids of expected children. Fill this field on partial match. Will be null if matched or not matched. Will contains the expected child element types if partial match. Purpose: Reuse this.ExpectedChildren data field. Avoid this.ExpectedChildren be referenced by more than one object (so "this.ExpectedChildren = other.ExpectedChildren" is not allowed). Particle type. Base class for particle validator. Initializes a new instance of the ParticleValidator. Be called on root particle of complex type. Try match the particle once. The context information for validation. Try match the particle. The context information for validation. Get the required elements - elements which minOccurs > 0. True if there are required elements in this particle. Get the required elements - elements which minOccurs > 0. Required elements in this particle. Get the expected elements - elements which minOccurs >= 0. True if there are expected elements in this particle. Get the expected elements - elements which minOccurs >= 0. Expected elements in this particle. AnyURI (xsd:anyURI) based simple type constraint. anyURI represents a Uniform Resource Identifier Reference (URI). An anyURI value can be absolute or relative, and may have an optional fragment identifier (i.e., it may be a URI Reference). This type should be used to specify the intention that the value fulfills the role of a URI as defined by [RFC 2396], as amended by [RFC 2732]. QName (xsd:QName) based simple type constraint. QName represents XML qualified names. The ·value space· of QName is the set of tuples {namespace name, local part}, where namespace name is an anyURI and local part is an NCName. The ·lexical space· of QName is the set of strings that ·match· the QName production of [Namespaces in XML]. Token (xsd:token) based simple type constraint. token represents tokenized strings. The ·value space· of token is the set of strings that do not contain the carriage return (#xD), line feed (#xA) nor tab (#x9) characters, that have no leading or trailing spaces (#x20) and that have no internal sequences of two or more spaces. The ·lexical space· of token is the set of strings that do not contain the carriage return (#xD), line feed (#xA) nor tab (#x9) characters, that have no leading or trailing spaces (#x20) and that have no internal sequences of two or more spaces. The ·base type· of token is normalizedString In Ecma376, most token are enumerations. An implementation of XmlConvert.VerifyTOKEN(string) as it is not available cross platform and throws if fails Validate an OpenXmlElement based on the schema. Only validation whether the children elements are valid according to this type's constraint defined in schema. The validation context. Validate the attributes constraint. The validation context. empty CT, OpenXmlLeafElement empty CT, but used as part root element, OpenXmlPartRootElement simple content CT, OpenXmlLeafTextElement Composite CT Sequence particle validator. Initializes a new instance of the SequenceParticleValidator. Try match the particle once. The context information for validation. Get the required elements - elements which minOccurs > 0. True if there are required elements in this particle. Get the expected elements - elements which minOccurs >= 0. True if there are expected elements in this particle. ##any - Elements from any namespace can be present. ##other - Elements from any namespace that is not the target namespace of the parent element containing this element can be present. #local - Elements that are not qualified with a namespace can be present. ##targetNamespace - Elements from the target namespace of the parent element containing this element can be present. Get corresponding namespace string for Any, Other, Local and TargetNamespace. One of the Any, Other, Local and TargetNamespace. ##any, ##other, ##local or ##targetNamespace. All simple types built in to xml schema. 1.15 attribute should be absent if another attribute not equals some value 1.14 attribute should be absent if another attribute equals some value One attribute value must no bigger than another's. Attribute value should be number. 1.16 only one of a group attributes can exist Two attributes of one element must appear as a pair. 1.18 attribute is required if another attribute equals some value 1.19 attribute should be of some value if another attribute is of some value 1.12 Attribute value length must be in specified range. 1.17 value of one attribute must be less than or equal another's 1.2 Attribute value should follow specified regular expression 1.3 Attribute value is a number, it must (or must not) in range of min to max. If valid/invalid values are not numbers or not contiguous, AttributeValueSetConstraint should be used. 1.4/1.10 Attribute value must (or must not) in specified value set. If valid/invalid values are numbers and contiguous, AttributeValueRangeConstraint should be used. 3.2 Class for package-level constraint "indexed element must exist". Element's parent must be/not be of a specified type 3.1 Class for package-level constraint "referenced element must exist". Base class for each semantic constraint category. Semantic validation logic return null if validation succeed 2.3 Element's attribute value should be unique within specified type of element. Add a text value and track whether it has been seen before or not. Clear the tracking set to free up space Checks if a duplicate was detected. Once a duplicate is checked, subsequent calls will result in false so we only raise the error once. Method to get or create a cached value. To minimize allocations, the key should track everything that is required to generate the item in the factory. If so, then a static lambda can be used to ensure nothing else is required and that the key will be correct. Type of the value produced. Type of the key provided. Provided key that should identify the cached value uniquely. A factory method to create the value. The created or cached value. Gets target file format. If a is used and is canceled, this will throw. Otherwise, it will check the number of errors against the . true if error count is too high. Gets used to track MC context. Gets or sets a value indicating whether collect ExpectedChildren or not. Get the first child of this.Element according to the MC Mode. The first child in the MC mode. Get the next child of this.Element according to the MC Mode. The child after which the next child going to be retrieved. The next child after the specified child in the MC mode. Gets the maximum number of errors. A zero (0) value means no limitation. When the errors >= MaxNumberOfErrors, errors will not be recorded, and MaxNumberOfErrorsEvent will be fired. An implementation of for validation error event. Gets or sets the validation error. Defines the ValidationErrorInfo. Gets the unique identifier of this error. Gets the type of this error. Gets the description and the suggestion on how to resolve the errors. Gets the XmlPath information of this error. Gets the OpenXmlElement of the invalid node. Gets the part which the invalid element is in. Gets elements related with the invalid node. Gets parts related with the invalid node. The type of the validation error. Schema validation error. Semantic validation error. Package structure validation error. Markup Compatibility validation error. A strongly-typed resource class, for looking up localized strings, etc. Returns the cached ResourceManager instance used by this class. Overrides the current thread's CurrentUICulture property for all resource lookups using this strongly typed resource class. Looks up a localized string similar to Inner exception: {0}.. Looks up a localized string similar to any element in namespace '{0}'. Looks up a localized string similar to <{0}:{1}>. Looks up a localized string similar to ,. Looks up a localized string similar to List of possible elements expected: {0}.. Looks up a localized string similar to The attribute '{0}' needs to specify a proper prefix when defined on an AlternateContent element.. Looks up a localized string similar to The Ignorable attribute is invalid - The value '{0}' contains an invalid prefix that is not defined.. Looks up a localized string similar to The MustUnderstand attribute is invalid - The value '{0}' contains an invalid prefix that is not defined.. Looks up a localized string similar to The PreserveAttributes attribute is invalid - The value '{0}' contains invalid qualified names. The ProcessAttributes attribute value cannot reference any attribute name that does not belong to a namespace that is identified by the Ignorable attribute of the same element.. Looks up a localized string similar to The PreserveElements attribute is invalid - The value '{0}' contains invalid qualified names. The PreserveElements attribute value cannot reference any element name that does not belong to a namespace that is identified by the Ignorable attribute of the same element.. Looks up a localized string similar to The ProcessContent attribute is invalid - The value '{0}' contains invalid qualified names. The ProcessContent attribute value cannot reference any element name that does not belong to a namespace that is identified by the Ignorable attribute of the same element.. Looks up a localized string similar to The Requires attribute is invalid - The value '{0}' contains an invalid prefix that is not defined.. Looks up a localized string similar to The {0} element should not have an xml:lang or xml:space attribute.. Looks up a localized string similar to An element should not have an xml:lang or xml:space attribute and also be identified by a ProcessContent attribute.. Looks up a localized string similar to All Choice elements must have a Requires attribute whose value contains a whitespace delimited list of namespace prefixes.. Looks up a localized string similar to An AlternateContent element must contain one or more Choice child elements, optionally followed by a Fallback child element.. Looks up a localized string similar to An AlternateContent element cannot be the child of an AlternateContent element.. Looks up a localized string similar to Invalid document error: more than one part retrieved for one URI.. Looks up a localized string similar to The package/part '{0}' cannot have a relationship that targets '{1}'.. Looks up a localized string similar to An ExtendedPart '{0}' was encountered with a relationship type that starts with "http://schemas.openxmlformats.org". Expected a defined part instead based on the relationship type.. Looks up a localized string similar to The package/part '{0}' can only have one instance of relationship that targets part '{1}'.. Looks up a localized string similar to The package/part '{0}' cannot have a relationship that targets part '{1}'.. Looks up a localized string similar to A required part '{0}' is missing.. Looks up a localized string similar to Element '{0}' cannot appear more than once if content model type is "all".. Looks up a localized string similar to The '{0}' attribute is invalid - The value '{1}' is not valid according to any of the memberTypes of the union.. Looks up a localized string similar to The attribute '{0}' has invalid value '{1}'.{2}. Looks up a localized string similar to The '{0}' element is invalid - The value '{1}' is not valid according to any of the memberTypes of the union.. Looks up a localized string similar to The element '{0}' has invalid value '{1}'.{2}. Looks up a localized string similar to The attribute value cannot be empty.. Looks up a localized string similar to The text value cannot be empty.. Looks up a localized string similar to The Enumeration constraint failed.. Looks up a localized string similar to The element has incomplete content.{0}. Looks up a localized string similar to The element '{0}' is a leaf element and cannot contain children.. Looks up a localized string similar to The element has invalid child element '{0}'.{1}. Looks up a localized string similar to The element has child element '{0}' of invalid type '{1}'.. Looks up a localized string similar to The actual length according to data type '{0}' is not equal to the specified length. The expected length is {1}.. Looks up a localized string similar to The MaxExclusive constraint failed. The value must be less than {0}.. Looks up a localized string similar to The MaxInclusive constraint failed. The value must be less than or equal to {0}.. Looks up a localized string similar to The actual length according to data type '{0}' is greater than the MaxLength value. The length must be smaller than or equal to {1}.. Looks up a localized string similar to The MinExclusive constraint failed. The value must be greater than {0}.. Looks up a localized string similar to The MinInclusive constraint failed. The value must be greater than or equal to {0}.. Looks up a localized string similar to The actual length according to data type '{0}' is less than the MinLength value. The length must be bigger than or equal to {1}.. Looks up a localized string similar to The required attribute '{0}' is missing.. Looks up a localized string similar to The Pattern constraint failed. The expected pattern is {0}.. Looks up a localized string similar to The string '{0}' is not a valid '{1}' value.. Looks up a localized string similar to The TotalDigits constraint failed. The expected number of digits is {0}.. Looks up a localized string similar to The '{0}' attribute is not declared.. Looks up a localized string similar to The element has unexpected child element '{0}'.{1}. Looks up a localized string similar to Attribute '{0}' should be absent when the value of attribute '{1}' is not {2}.. Looks up a localized string similar to Attribute '{0}' should be absent when the value of attribute '{1}' is {2}.. Looks up a localized string similar to Attribute '{0}' and '{1}' cannot be present at the same time. Only one of these attributes '{2}' can be present at a given time.. Looks up a localized string similar to Attribute '{0}' should be present when the value of attribute '{1}' is '{2}'.. Looks up a localized string similar to Attribute '{0}' should have value(s) {1} when attribute '{2}' has value(s) {3}. Current value of attribute '{4}' is '{5}'.. Looks up a localized string similar to The attribute '{0}' has invalid value '{1}'.{2}. Looks up a localized string similar to Attribute '{0}' has value '{1}'. It should be less than or equal to the value of attribute '{2}' which is '{3}'.. Looks up a localized string similar to Attribute '{0}' has value '{1}'. It should be less than the value of attribute '{2}' which is '{3}'.. Looks up a localized string similar to Attribute '{0}' should have unique value in the whole document. Its current value '{1}' duplicates with others.. Looks up a localized string similar to Cell contents have invalid value '{0}' for type '{1}'.. Looks up a localized string similar to Relationship '{0}' referenced by attribute '{1}' has incorrect type. Its type should be '{2}'.. Looks up a localized string similar to The relationship '{0}' referenced by attribute '{1}' does not exist.. Looks up a localized string similar to The actual length is greater than the MaxLength value. The length must be smaller than or equal to {0}.. Looks up a localized string similar to The actual length is less than the MinLength value. The length must be bigger than or equal to {0}.. Looks up a localized string similar to Element '{0}' referenced by '{1}@{2}' does not exist in part '{3}'. The index is '{4}'.. Looks up a localized string similar to Element '{0}' referenced by '{1}@{2}' does not exist in part '{3}'. The reference value is '{4}'.. Looks up a localized string similar to Attribute '{0}' should have unique value. Its current value '{1}' duplicates with others.. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:base64Binary. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:hexBinary. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:ID. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:integer. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:language. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:NCName. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:nonNegativeInteger. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:positiveInteger. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:QName. Looks up a localized string similar to http://www.w3.org/2001/XMLSchema:token. Settings for validation. Initializes a new instance of the ValidationSettings. The target file format. Gets the target file format. Gets or sets the maximum number of errors the OpenXmlValidator will return. Default is 1000. A zero (0) value means no limitation. Enumerate all the descendants elements of this element and do validating. Preorder traversing. The delegate method to do the validating. Defines the XmlConvertingReader - This XmlReader tries to replace the Strict namespaces with equivalent Transitional namespaces. Creates an instance of Gets the inner Gets a value indicating whether strict translation is enabled. Defines the XmlConvertingReaderFactory. Defines XPath like information for OpenXmlElement. Initializes a new instance of the from the specified . The . Initializes a new instance of the from the specified . The . Gets the namespace definitions used in Gets the XPath string. Gets the internal URI of the part relative to the package root. Gets XmlPath information of the specified OpenXmlElement. The OpenXmlElement. XmlPath to this element from root element. Indicates that an API is experimental and it may change in the future. This attribute allows call sites to be flagged with a diagnostic that indicates that an experimental feature is used. Authors can use this attribute to ship preview features in their assemblies. Initializes a new instance of the class, specifying the ID that the compiler will use when reporting a use of the API the attribute applies to. The ID that the compiler will use when reporting a use of the API the attribute applies to. Gets the ID that the compiler will use when reporting a use of the API the attribute applies to. The unique diagnostic ID. The diagnostic ID is shown in build output for warnings and errors. This property represents the unique ID that can be used to suppress the warnings or errors, if needed. Gets or sets the URL for corresponding documentation. The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID. The format string that represents a URL to corresponding documentation. An example format string is https://contoso.com/obsoletion-warnings/{0}.