Click or drag to resize

ChildDocument Class

Represents an attachment or embedded item that is extracted from another document such as an email, document container (e.g., archive or media image), or word processing document.
Inheritance Hierarchy
SystemObject
  OpenDiscoverSDK.Interfaces.ContentChildDocument

Namespace: OpenDiscoverSDK.Interfaces.Content
Assembly: OpenDiscoverSDK.Interfaces (in OpenDiscoverSDK.Interfaces.dll) Version: 2025.4.4.0 (2025.4.4)
Syntax
C#
[DataContractAttribute]
public class ChildDocument

The ChildDocument type exposes the following members.

Constructors
 NameDescription
Public methodChildDocument Constructor.
Public methodChildDocument(Byte, Int64) Constructor.
Public methodChildDocument(Byte, String, Int64) Constructor.
Top
Properties
 NameDescription
Public propertyArchiveBlock Archive block index this child document resides in. This property is only valid for child documents in 'solid' compressed archives such as RAR or 7-zip.
Public propertyContainerComment Parent container comment associated with this contained document. Some archive container types support user comments for container items.
Public propertyContainerRelativePath Relative path of the child document inside its parent document container.
Public propertyCreationTimeFileSystem Document's file system creation time. If this value is not set for the child (embedded/contained) document then the value could not be retrieved from the parent container document.
Public propertyDocumentBytes Document's (file) bytes. This value is the child document in memory as a byte array.
Public propertyEncryptedInContainer If true, this child document is encrypted inside of its parent container. This property only applies to archive child documents. Some archive types can have different passwords for each encrypted child document.
Public propertyEntryId Entry ID for Outlook PST/OST extracted message objects in hexadecimal string format.
Public propertyErrorMessage Extraction error message. This value will be non-null if property HasError is true.
Public propertyExtension Document file extension (if it exists).
Public propertyFormatId Document file format identification result.
Public propertyHasError Error extracting document from parent. See property ErrorMessage for the error message.
Public propertyIndex Zero-offset index of the document in the order it is found embedded in its parent container document or for special cases like Microsoft Outlook PSTs, the internal node Id of the message object.
Public propertyInlineImageContentId If IsInlineEmailImage is true; then if it exists, this property contains the "Content-ID" header value of the inline image.
Public propertyIsEmbedded If true, this child document is embedded in a Microsoft Office document.
Public propertyIsInlineEmailImage If true, this child document is an email inline image attachment.
Public propertyLastAccessTimeFileSystem Document's file system last access time. If this value is not set for the child (embedded/contained) document then the value could not be retrieved from the parent container document.
Public propertyLastModifiedTimeFileSystem Document's file system last modified time. If this value is not set for the child (embedded/contained) document then the value could not be retrieved from the parent container document.
Public propertyName File name of the child document as stored inside its parent container document with extension.
Public propertyNodeId Node ID of child item, if it is defined. NodeId will only be defined for some child items like children of Outlook PST/OST mail stores or any other container format that has an internal and accessible child item unique identifier.
Public propertyOriginalFilePath Embedded document original file path. Some embedded documents with container wrappers store the location from where the embedded child document was originally located on the file system before being embedded into the parent container. For most child documents, this value will be null.
Public propertyPackedSize Document's packed size, in bytes, within its parent archive container. If the item is compressed in the parent container then this value is the compressed size. This property only applies to archive child documents and to the archive formats that store this item metadata.
Public propertySize Document's size, in bytes. If child document is an archive item then this is the expanded size of the item.
Public propertyTag Associates a user object with this child document object.
Public propertyTestedResult RESERVED for user. This property is reserved for archive items that have been tested for extraction and actual expanded size (see also TestedSize) by user. This property and the related property TestedSize are not set by SDK and are reserved for user to set after testing archive items. See methods TestItem(Int32, Int64, String) and TestSolidBlockItems(ItemTestFinishedCallback, String) for more information on testing archives.
Public propertyTestedSize RESERVED for user. This property is reserved for archive items that have been tested for expanded (de-compressed) size (see also TestedResult) by user. This property and the related property TestedResult are not set by SDK and are reserved for user to set after testing archive items. See methods TestItem(Int32, Int64, String) and TestSolidBlockItems(ItemTestFinishedCallback, String) for more information on testing archives.
Top
Methods
 NameDescription
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Remarks

To get the content of each child document make an SDK API call to OpenDiscoverSDK.ContentExtractorFactory.GetContentExtractor for each child document.

The maximum attachment or embedded item size that can be extracted from a non-container (archive or mail store) is slightly less than 2GB. The maximum index in any .NET single array dimension is 2,147,483,591 (0x7FFFFFC7) for byte arrays, so this is the exact maximum item size in bytes. The child item will be marked with an error (see HasError) and the item's raw data will not be contained by the DocumentBytes property.

NOTE: archives (.7z, .zip, .rar, etc.), media images, and mail stores (.pst, .ost, .mbox, etc.) have special use cases for ChildDocument. See ChildDocuments remarks for these special use cases.

See Also