Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

PdfCiiInvoiceDocument

Namespace OfficeIMO.Pdf
Assembly OfficeIMO.Pdf
Source revision 72073ff5010e with working tree changes
Modifiers sealed

An immutable CII namespace-100 XML document with bounded header editing. Loading does not establish schema, business-rule, tax, or profile compliance.

Inheritance

  • Object
  • PdfCiiInvoiceDocument

Usage

Explore 4 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Accepted by parameters 1

Methods

Load 3 overloads
public static PdfCiiInvoiceDocument Load(Byte[] xml) #
Returns: PdfCiiInvoiceDocument

Loads a defensive copy of CII XML. DTDs, external entities and excessive size, depth, nodes and attributes are rejected. Unknown content is retained; namespace prefixes may vary.

Parameters

xml System.Byte[] requiredposition: 0
public static PdfCiiInvoiceDocument Load(String path) #
Returns: PdfCiiInvoiceDocument

Loads existing CII invoice XML from a file, applying the same limits as byte-array loading.

Parameters

path System.String requiredposition: 0
public static PdfCiiInvoiceDocument Load(Stream stream) #
Returns: PdfCiiInvoiceDocument

Loads existing CII invoice XML from the stream's current position to its end. Reads at most the size limit plus one byte and leaves the caller's stream open.

Parameters

stream System.IO.Stream requiredposition: 0
Save 2 overloads
public Void Save(Stream stream) #
Returns: Void

Writes the stored XML bytes at the current position and leaves the caller's stream open.

Parameters

stream System.IO.Stream requiredposition: 0
public Void Save(String path) #
Returns: Void

Saves the stored XML bytes to a file, replacing any existing contents.

Parameters

path System.String requiredposition: 0
public Byte[] ToBytes() #
Returns: Byte[]

Returns stored XML bytes as a defensive copy. Unedited documents retain byte identity; edited documents use UTF-8 and preserve XML content rather than original lexical formatting.

public PdfCiiInvoiceDocument WithDocumentId(String documentId) #
Returns: PdfCiiInvoiceDocument

Replaces one existing, unambiguous plaintext invoice identifier. Other fields and visible PDF content are retained. Signed, structured or missing fields are rejected.

Parameters

documentId System.String requiredposition: 0
public PdfCiiInvoiceDocument WithIssueDate(DateTime issueDate) #
Returns: PdfCiiInvoiceDocument

Replaces one existing format-102 issue date. Time/timezone and other dates are retained. Signed XML, ambiguous fields and other date representations are rejected.

Parameters

issueDate System.DateTime requiredposition: 0

Properties

public String? DocumentId { get; } #

Invoice identifier from the direct exchanged-document header, if present.

public String? TypeCode { get; } #

Declared document type code, without interpreting its profile validity.

public String? GuidelineId { get; } #

Declared guideline identifier, without claiming that its requirements are satisfied.

public String? CurrencyCode { get; } #

Declared invoice currency, without validating code lists or monetary amounts.

public DateTime? IssueDate { get; } #

Issue date for a valid format-102 calendar date; null for missing or other date representations.

public Boolean HasXmlSignature { get; } #

Whether an XML Signature element is present. Signatures are not verified by this model.

Fields

public const Int32 MaximumXmlBytes #

Maximum accepted XML byte length, including any byte order mark.

Value: 16777216
public const Int32 MaximumXmlNodes #

Maximum XML nodes retained by the invoice tree.

Value: 100000
public const Int32 MaximumXmlAttributes #

Maximum XML attributes retained by the invoice tree.

Value: 200000