API Reference
InvoiceSourceDocument
Immutable CII/UBL source XML for bounded edits that retain unmapped extensions. Loading does not establish standards or business-rule compliance.
Inheritance
- Object
- InvoiceSourceDocument
Usage
This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.
Returned or exposed by
- Method InvoiceSourceDocument.Load
- Method InvoiceSourceDocument.Load
- Method InvoiceSourceDocument.Load
- Property InvoiceSourceEditResult.Document
Accepted by parameters
- Method InvoiceSourceEditor.Apply
Methods
public static InvoiceSourceDocument Load(Byte[] xml) #InvoiceSourceDocumentCaptures a defensive copy of supported source XML with DTDs/external entities disabled and size, depth, node and attribute limits.
Parameters
- xml System.Byte[]
public static InvoiceSourceDocument Load(Stream stream) #InvoiceSourceDocumentReads from the current stream position, leaves the stream open, and consumes at most the byte limit plus one byte.
Parameters
- stream System.IO.Stream
public static InvoiceSourceDocument Load(String path) #InvoiceSourceDocumentLoads a file under the same source limits.
Parameters
- path System.String
public Byte[] ToBytes() #Byte[]Returns a defensive copy. Unedited documents are byte-identical; edited documents retain XML content using UTF-8, without preserving original lexical formatting.
Inherited Methods
public override Boolean Equals(Object obj) #BooleanParameters
- obj Object
Properties
public InvoiceSyntax Syntax { get; } #Source syntax. UBL includes Invoice and CreditNote roots.
public Boolean IsUblCreditNote { get; } #Whether the source root is a UBL credit note.
public Boolean HasXmlSignature { get; } #Whether XML Signature content is present. Signatures are not verified.
public String Number { get; } #Existing invoice number, or null when missing. Ambiguous or nested fields are rejected.
public String TypeCode { get; } #Declared document type, without establishing compliance.
public String GuidelineId { get; } #Declared profile guideline/customization identifier.
public String Currency { get; } #Declared invoice currency, without validating its monetary amounts.
public Nullable<DateTime> IssueDate { get; } #Issue date for a format-102 CII date or plain ISO UBL date; null for other representations.
public Nullable<DateTime> DueDate { get; } #Existing payment due date in the supported date representation. UBL credit notes have no supported due-date edit contract.
public String BuyerReference { get; } #Existing buyer reference.
public String PaymentReference { get; } #Existing remittance reference. Multiple UBL payment-means occurrences are ambiguous and rejected.
Fields
public const Int32 MaximumXmlBytes #Maximum accepted and edited XML bytes, including a byte order mark.
16777216public const Int32 MaximumXmlNodes #Maximum XML nodes accepted before tree materialization.
100000public const Int32 MaximumXmlAttributes #Maximum XML attributes accepted before tree materialization.
200000