public XElement Serialize()
 {
     return(new XElement(UblNames.Cac + nameof(DocumentReference),
                         ID.Serialize(nameof(ID)),
                         CopyIndicator.Serialize(nameof(CopyIndicator)),
                         UUID.Serialize(nameof(UUID)),
                         IssueDate.Serialize(nameof(IssueDate)),
                         IssueTime.Serialize(nameof(IssueTime)),
                         DocumentTypeCode.Serialize(nameof(DocumentTypeCode)),
                         DocumentType.Serialize(nameof(DocumentType)),
                         XPath.Serialize(nameof(XPath)),
                         LanguageID.Serialize(nameof(LanguageID)),
                         LocaleCode.Serialize(nameof(LocaleCode)),
                         VersionID.Serialize(nameof(VersionID)),
                         DocumentStatusCode.Serialize(nameof(DocumentStatusCode)),
                         DocumentDescription.Serialize(nameof(DocumentDescription)),
                         Attachment?.Serialize(),
                         ValidityPeriod?.Serialize(nameof(ValidityPeriod)),
                         IssuerParty?.Serialize(nameof(IssuerParty))
                         ));
 }