//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.4963
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace Nehta.VendorLibrary.PCEHR.RegisterPCEHR
{
    
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/wsp/xsd/StandardError/2010")]
    public partial class StandardErrorType
    {
        
        private StandardErrorCodeType errorCodeField;
        
        private string messageField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public StandardErrorCodeType errorCode
        {
            get
            {
                return this.errorCodeField;
            }
            set
            {
                this.errorCodeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string message
        {
            get
            {
                return this.messageField;
            }
            set
            {
                this.messageField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/wsp/xsd/StandardError/2010")]
    public enum StandardErrorCodeType
    {
        
        /// <remarks/>
        servicePermanentUnavailable,
        
        /// <remarks/>
        serviceTemporaryUnavailable,
        
        /// <remarks/>
        certificateSkiMissing,
        
        /// <remarks/>
        certificateKeyUsage,
        
        /// <remarks/>
        invalidCredentials,
        
        /// <remarks/>
        notAuthenticated,
        
        /// <remarks/>
        notAuthorised,
        
        /// <remarks/>
        badParam,
        
        /// <remarks/>
        badlyFormedMsg,
        
        /// <remarks/>
        badTimestamp,
        
        /// <remarks/>
        badSignature,
        
        /// <remarks/>
        badEncryption,
        
        /// <remarks/>
        badSigEncOrder,
        
        /// <remarks/>
        badCertificateTransmitted,
        
        /// <remarks/>
        badWsaAction,
        
        /// <remarks/>
        badWsaMessageId,
        
        /// <remarks/>
        badWsaTo,
        
        /// <remarks/>
        badAlgorithmDataEncryption,
        
        /// <remarks/>
        badAlgorithmKeyEncryption,
        
        /// <remarks/>
        badAlgorithmC14N,
        
        /// <remarks/>
        badAlgorithmDigest,
        
        /// <remarks/>
        badAlgorithmSignature,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class responseStatusType
    {
        
        private string codeField;
        
        private string descriptionField;
        
        private string detailsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public string code
        {
            get
            {
                return this.codeField;
            }
            set
            {
                this.codeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string description
        {
            get
            {
                return this.descriptionField;
            }
            set
            {
                this.descriptionField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public string details
        {
            get
            {
                return this.detailsField;
            }
            set
            {
                this.detailsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class contactDetailsType
    {
        
        private string mobilePhoneNumberField;
        
        private string emailAddressField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public string mobilePhoneNumber
        {
            get
            {
                return this.mobilePhoneNumberField;
            }
            set
            {
                this.mobilePhoneNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string emailAddress
        {
            get
            {
                return this.emailAddressField;
            }
            set
            {
                this.emailAddressField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class nameTypeSupp
    {
        
        private nameTitle nameTitleField;
        
        private bool nameTitleFieldSpecified;
        
        private string familyNameField;
        
        private string[] givenNameField;
        
        private nameSuffix nameSuffixField;
        
        private bool nameSuffixFieldSpecified;
        
        private usage usageField;
        
        private bool usageFieldSpecified;
        
        private preferred preferredField;
        
        private bool preferredFieldSpecified;
        
        private conditionalUse conditionalUseField;
        
        private bool conditionalUseFieldSpecified;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public nameTitle nameTitle
        {
            get
            {
                return this.nameTitleField;
            }
            set
            {
                this.nameTitleField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool nameTitleSpecified
        {
            get
            {
                return this.nameTitleFieldSpecified;
            }
            set
            {
                this.nameTitleFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string familyName
        {
            get
            {
                return this.familyNameField;
            }
            set
            {
                this.familyNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("givenName", Order=2)]
        public string[] givenName
        {
            get
            {
                return this.givenNameField;
            }
            set
            {
                this.givenNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=3)]
        public nameSuffix nameSuffix
        {
            get
            {
                return this.nameSuffixField;
            }
            set
            {
                this.nameSuffixField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool nameSuffixSpecified
        {
            get
            {
                return this.nameSuffixFieldSpecified;
            }
            set
            {
                this.nameSuffixFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=4)]
        public usage usage
        {
            get
            {
                return this.usageField;
            }
            set
            {
                this.usageField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool usageSpecified
        {
            get
            {
                return this.usageFieldSpecified;
            }
            set
            {
                this.usageFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=5)]
        public preferred preferred
        {
            get
            {
                return this.preferredField;
            }
            set
            {
                this.preferredField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool preferredSpecified
        {
            get
            {
                return this.preferredFieldSpecified;
            }
            set
            {
                this.preferredFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=6)]
        public conditionalUse conditionalUse
        {
            get
            {
                return this.conditionalUseField;
            }
            set
            {
                this.conditionalUseField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool conditionalUseSpecified
        {
            get
            {
                return this.conditionalUseFieldSpecified;
            }
            set
            {
                this.conditionalUseFieldSpecified = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum nameTitle
    {
        
        /// <remarks/>
        ABBOT,
        
        /// <remarks/>
        AB,
        
        /// <remarks/>
        ADML,
        
        /// <remarks/>
        ACM,
        
        /// <remarks/>
        AIRCDRE,
        
        /// <remarks/>
        AM,
        
        /// <remarks/>
        AVM,
        
        /// <remarks/>
        AC,
        
        /// <remarks/>
        ACW,
        
        /// <remarks/>
        ALD,
        
        /// <remarks/>
        AMBSR,
        
        /// <remarks/>
        ARCHBISHOP,
        
        /// <remarks/>
        ARCHDEACON,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("ASSOC PROF")]
        ASSOCPROF,
        
        /// <remarks/>
        BARON,
        
        /// <remarks/>
        BARONESS,
        
        /// <remarks/>
        BISHOP,
        
        /// <remarks/>
        BDR,
        
        /// <remarks/>
        BRIG,
        
        /// <remarks/>
        BR,
        
        /// <remarks/>
        CDT,
        
        /// <remarks/>
        CANON,
        
        /// <remarks/>
        CAPT,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("CAPT, RAN")]
        CAPTRAN,
        
        /// <remarks/>
        CARDNL,
        
        /// <remarks/>
        CHAP,
        
        /// <remarks/>
        CPO,
        
        /// <remarks/>
        COL,
        
        /// <remarks/>
        CMDR,
        
        /// <remarks/>
        CMM,
        
        /// <remarks/>
        CDRE,
        
        /// <remarks/>
        CONST,
        
        /// <remarks/>
        CONSUL,
        
        /// <remarks/>
        CPL,
        
        /// <remarks/>
        COUNT,
        
        /// <remarks/>
        COUNTESS,
        
        /// <remarks/>
        DAME,
        
        /// <remarks/>
        DEACON,
        
        /// <remarks/>
        DEACONESS,
        
        /// <remarks/>
        DEAN,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("DEPUTY SUPT")]
        DEPUTYSUPT,
        
        /// <remarks/>
        DIRECTOR,
        
        /// <remarks/>
        DR,
        
        /// <remarks/>
        EARL,
        
        /// <remarks/>
        ENGR,
        
        /// <remarks/>
        FR,
        
        /// <remarks/>
        FLTLT,
        
        /// <remarks/>
        FSGT,
        
        /// <remarks/>
        FLGOFF,
        
        /// <remarks/>
        GEN,
        
        /// <remarks/>
        GOV,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("GP CAPT")]
        GPCAPT,
        
        /// <remarks/>
        HON,
        
        /// <remarks/>
        JUDGE,
        
        /// <remarks/>
        JUSTICE,
        
        /// <remarks/>
        LADY,
        
        /// <remarks/>
        LBDR,
        
        /// <remarks/>
        LCPL,
        
        /// <remarks/>
        LAC,
        
        /// <remarks/>
        LACW,
        
        /// <remarks/>
        LS,
        
        /// <remarks/>
        LT,
        
        /// <remarks/>
        LEUT,
        
        /// <remarks/>
        LTCOL,
        
        /// <remarks/>
        LCDR,
        
        /// <remarks/>
        LTGEN,
        
        /// <remarks/>
        LTGOV,
        
        /// <remarks/>
        LORD,
        
        /// <remarks/>
        MADAM,
        
        /// <remarks/>
        MADAME,
        
        /// <remarks/>
        MAJ,
        
        /// <remarks/>
        MAJGEN,
        
        /// <remarks/>
        MGR,
        
        /// <remarks/>
        MSTR,
        
        /// <remarks/>
        MAYOR,
        
        /// <remarks/>
        MAYORESS,
        
        /// <remarks/>
        MIDN,
        
        /// <remarks/>
        MISS,
        
        /// <remarks/>
        MR,
        
        /// <remarks/>
        MON,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("MOST REV")]
        MOSTREV,
        
        /// <remarks/>
        MTHR,
        
        /// <remarks/>
        MRS,
        
        /// <remarks/>
        MS,
        
        /// <remarks/>
        NURSE,
        
        /// <remarks/>
        OCDT,
        
        /// <remarks/>
        PASTOR,
        
        /// <remarks/>
        PO,
        
        /// <remarks/>
        PLTOFF,
        
        /// <remarks/>
        PTE,
        
        /// <remarks/>
        PROF,
        
        /// <remarks/>
        RABBI,
        
        /// <remarks/>
        RADM,
        
        /// <remarks/>
        RECTOR,
        
        /// <remarks/>
        RSM,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("RSM-A")]
        RSMA,
        
        /// <remarks/>
        REV,
        
        /// <remarks/>
        RTHON,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("RT REV")]
        RTREV,
        
        /// <remarks/>
        SMN,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("2LT")]
        Item2LT,
        
        /// <remarks/>
        SEN,
        
        /// <remarks/>
        SNR,
        
        /// <remarks/>
        SGT,
        
        /// <remarks/>
        SIR,
        
        /// <remarks/>
        SR,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("SISTER SUP")]
        SISTERSUP,
        
        /// <remarks/>
        SQNLDR,
        
        /// <remarks/>
        SCDT,
        
        /// <remarks/>
        SSGT,
        
        /// <remarks/>
        SM,
        
        /// <remarks/>
        SBLT,
        
        /// <remarks/>
        SUPT,
        
        /// <remarks/>
        SWAMI,
        
        /// <remarks/>
        VADM,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("VCE CMNDR")]
        VCECMNDR,
        
        /// <remarks/>
        VISCOUNT,
        
        /// <remarks/>
        WOFF,
        
        /// <remarks/>
        WO,
        
        /// <remarks/>
        WO1,
        
        /// <remarks/>
        WO2,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("WOFF-AF")]
        WOFFAF,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("WO-N")]
        WON,
        
        /// <remarks/>
        WCDR,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum nameSuffix
    {
        
        /// <remarks/>
        BM,
        
        /// <remarks/>
        BEM,
        
        /// <remarks/>
        COMDC,
        
        /// <remarks/>
        CH,
        
        /// <remarks/>
        AC,
        
        /// <remarks/>
        CV,
        
        /// <remarks/>
        DCMG,
        
        /// <remarks/>
        DCB,
        
        /// <remarks/>
        DBE,
        
        /// <remarks/>
        DCVO,
        
        /// <remarks/>
        AD,
        
        /// <remarks/>
        DFM,
        
        /// <remarks/>
        DSC,
        
        /// <remarks/>
        DSM,
        
        /// <remarks/>
        VIII,
        
        /// <remarks/>
        ESQ,
        
        /// <remarks/>
        V,
        
        /// <remarks/>
        I,
        
        /// <remarks/>
        IV,
        
        /// <remarks/>
        GC,
        
        /// <remarks/>
        JNR,
        
        /// <remarks/>
        JP,
        
        /// <remarks/>
        KB,
        
        /// <remarks/>
        KCMG,
        
        /// <remarks/>
        KCB,
        
        /// <remarks/>
        KBE,
        
        /// <remarks/>
        KCVO,
        
        /// <remarks/>
        KG,
        
        /// <remarks/>
        AK,
        
        /// <remarks/>
        KT,
        
        /// <remarks/>
        MD,
        
        /// <remarks/>
        OAM,
        
        /// <remarks/>
        MP,
        
        /// <remarks/>
        MHA,
        
        /// <remarks/>
        MHR,
        
        /// <remarks/>
        MLA,
        
        /// <remarks/>
        MLC,
        
        /// <remarks/>
        AM,
        
        /// <remarks/>
        MBE,
        
        /// <remarks/>
        MC,
        
        /// <remarks/>
        IX,
        
        /// <remarks/>
        OC,
        
        /// <remarks/>
        AO,
        
        /// <remarks/>
        OBE,
        
        /// <remarks/>
        OM,
        
        /// <remarks/>
        QC,
        
        /// <remarks/>
        II,
        
        /// <remarks/>
        SNR,
        
        /// <remarks/>
        VII,
        
        /// <remarks/>
        VI,
        
        /// <remarks/>
        SC,
        
        /// <remarks/>
        X,
        
        /// <remarks/>
        III,
        
        /// <remarks/>
        VC,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum usage
    {
        
        /// <remarks/>
        M,
        
        /// <remarks/>
        N,
        
        /// <remarks/>
        O,
        
        /// <remarks/>
        B,
        
        /// <remarks/>
        L,
        
        /// <remarks/>
        R,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum preferred
    {
        
        /// <remarks/>
        @true,
        
        /// <remarks/>
        @false,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum conditionalUse
    {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("1")]
        Item1,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("2")]
        Item2,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("3")]
        Item3,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("4")]
        Item4,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class individualTypeSupp
    {
        
        private nameTypeSupp nameField;
        
        private sex sexField;
        
        private System.DateTime dateOfBirthField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public nameTypeSupp name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public sex sex
        {
            get
            {
                return this.sexField;
            }
            set
            {
                this.sexField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)]
        public System.DateTime dateOfBirth
        {
            get
            {
                return this.dateOfBirthField;
            }
            set
            {
                this.dateOfBirthField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum sex
    {
        
        /// <remarks/>
        M,
        
        /// <remarks/>
        F,
        
        /// <remarks/>
        I,
        
        /// <remarks/>
        N,
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/svc/RegisterPCEHR/2.0", ConfigurationName="Nehta.VendorLibrary.PCEHR.RegisterPCEHR.RegisterPCEHRPortType")]
    public interface RegisterPCEHRPortType
    {
        
        // CODEGEN: Generating message contract since the operation registerPCEHR is neither RPC nor document wrapped.
        [System.ServiceModel.OperationContractAttribute(Action="http://ns.electronichealth.net.au/pcehr/svc/RegisterPCEHR/2.0/RegisterPCEHRPortTy" +
            "pe/registerPCEHRRequest", ReplyAction="http://ns.electronichealth.net.au/pcehr/svc/RegisterPCEHR/2.0/RegisterPCEHRPortTy" +
            "pe/registerPCEHRResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(Nehta.VendorLibrary.PCEHR.RegisterPCEHR.StandardErrorType), Action="http://ns.electronichealth.net.au/pcehr/svc/RegisterPCEHR/2.0/RegisterPCEHRPortTy" +
            "pe/Fault/standardError", Name="standardError", Namespace="http://ns.electronichealth.net.au/wsp/xsd/StandardError/2010")]
        [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(individualTypeSupp))]
        Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRResponse1 registerPCEHR(Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRRequest request);
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class timestampType
    {
        
        private System.DateTime createdField;
        
        private System.DateTime expiresField;
        
        private bool expiresFieldSpecified;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public System.DateTime created
        {
            get
            {
                return this.createdField;
            }
            set
            {
                this.createdField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public System.DateTime expires
        {
            get
            {
                return this.expiresField;
            }
            set
            {
                this.expiresField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool expiresSpecified
        {
            get
            {
                return this.expiresFieldSpecified;
            }
            set
            {
                this.expiresFieldSpecified = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class signatureContainerType
    {
        
        private SignatureType signatureField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)]
        public SignatureType Signature
        {
            get
            {
                return this.signatureField;
            }
            set
            {
                this.signatureField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class SignatureType
    {
        
        private SignedInfoType signedInfoField;
        
        private SignatureValueType signatureValueField;
        
        private KeyInfoType keyInfoField;
        
        private ObjectType[] objectField;
        
        private string idField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public SignedInfoType SignedInfo
        {
            get
            {
                return this.signedInfoField;
            }
            set
            {
                this.signedInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public SignatureValueType SignatureValue
        {
            get
            {
                return this.signatureValueField;
            }
            set
            {
                this.signatureValueField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public KeyInfoType KeyInfo
        {
            get
            {
                return this.keyInfoField;
            }
            set
            {
                this.keyInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)]
        public ObjectType[] Object
        {
            get
            {
                return this.objectField;
            }
            set
            {
                this.objectField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
        public string Id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class SignedInfoType
    {
        
        private CanonicalizationMethodType canonicalizationMethodField;
        
        private SignatureMethodType signatureMethodField;
        
        private ReferenceType[] referenceField;
        
        private string idField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public CanonicalizationMethodType CanonicalizationMethod
        {
            get
            {
                return this.canonicalizationMethodField;
            }
            set
            {
                this.canonicalizationMethodField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public SignatureMethodType SignatureMethod
        {
            get
            {
                return this.signatureMethodField;
            }
            set
            {
                this.signatureMethodField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)]
        public ReferenceType[] Reference
        {
            get
            {
                return this.referenceField;
            }
            set
            {
                this.referenceField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
        public string Id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class CanonicalizationMethodType
    {
        
        private System.Xml.XmlNode[] anyField;
        
        private string algorithmField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        public System.Xml.XmlNode[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                this.anyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Algorithm
        {
            get
            {
                return this.algorithmField;
            }
            set
            {
                this.algorithmField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class SignatureMethodType
    {
        
        private string hMACOutputLengthField;
        
        private System.Xml.XmlNode[] anyField;
        
        private string algorithmField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)]
        public string HMACOutputLength
        {
            get
            {
                return this.hMACOutputLengthField;
            }
            set
            {
                this.hMACOutputLengthField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)]
        public System.Xml.XmlNode[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                this.anyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Algorithm
        {
            get
            {
                return this.algorithmField;
            }
            set
            {
                this.algorithmField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class ReferenceType
    {
        
        private TransformType[] transformsField;
        
        private DigestMethodType digestMethodField;
        
        private byte[] digestValueField;
        
        private string idField;
        
        private string uRIField;
        
        private string typeField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(Order=0)]
        [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)]
        public TransformType[] Transforms
        {
            get
            {
                return this.transformsField;
            }
            set
            {
                this.transformsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public DigestMethodType DigestMethod
        {
            get
            {
                return this.digestMethodField;
            }
            set
            {
                this.digestMethodField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)]
        public byte[] DigestValue
        {
            get
            {
                return this.digestValueField;
            }
            set
            {
                this.digestValueField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
        public string Id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string URI
        {
            get
            {
                return this.uRIField;
            }
            set
            {
                this.uRIField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class TransformType
    {
        
        private object[] itemsField;
        
        private string[] textField;
        
        private string algorithmField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string[] Text
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Algorithm
        {
            get
            {
                return this.algorithmField;
            }
            set
            {
                this.algorithmField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class DigestMethodType
    {
        
        private System.Xml.XmlNode[] anyField;
        
        private string algorithmField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        public System.Xml.XmlNode[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                this.anyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Algorithm
        {
            get
            {
                return this.algorithmField;
            }
            set
            {
                this.algorithmField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class SignatureValueType
    {
        
        private string idField;
        
        private byte[] valueField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
        public string Id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")]
        public byte[] Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class KeyInfoType
    {
        
        private object[] itemsField;
        
        private ItemsChoiceType2[] itemsElementNameField;
        
        private string[] textField;
        
        private string idField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType2[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string[] Text
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
        public string Id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class KeyValueType
    {
        
        private object itemField;
        
        private string[] textField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string[] Text
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class DSAKeyValueType
    {
        
        private byte[] pField;
        
        private byte[] qField;
        
        private byte[] gField;
        
        private byte[] yField;
        
        private byte[] jField;
        
        private byte[] seedField;
        
        private byte[] pgenCounterField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)]
        public byte[] P
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)]
        public byte[] Q
        {
            get
            {
                return this.qField;
            }
            set
            {
                this.qField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)]
        public byte[] G
        {
            get
            {
                return this.gField;
            }
            set
            {
                this.gField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)]
        public byte[] Y
        {
            get
            {
                return this.yField;
            }
            set
            {
                this.yField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)]
        public byte[] J
        {
            get
            {
                return this.jField;
            }
            set
            {
                this.jField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)]
        public byte[] Seed
        {
            get
            {
                return this.seedField;
            }
            set
            {
                this.seedField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)]
        public byte[] PgenCounter
        {
            get
            {
                return this.pgenCounterField;
            }
            set
            {
                this.pgenCounterField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class RSAKeyValueType
    {
        
        private byte[] modulusField;
        
        private byte[] exponentField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)]
        public byte[] Modulus
        {
            get
            {
                return this.modulusField;
            }
            set
            {
                this.modulusField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)]
        public byte[] Exponent
        {
            get
            {
                return this.exponentField;
            }
            set
            {
                this.exponentField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class PGPDataType
    {
        
        private object[] itemsField;
        
        private ItemsChoiceType1[] itemsElementNameField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType1[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)]
    public enum ItemsChoiceType1
    {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("##any:")]
        Item,
        
        /// <remarks/>
        PGPKeyID,
        
        /// <remarks/>
        PGPKeyPacket,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class RetrievalMethodType
    {
        
        private TransformType[] transformsField;
        
        private string uRIField;
        
        private string typeField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(Order=0)]
        [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)]
        public TransformType[] Transforms
        {
            get
            {
                return this.transformsField;
            }
            set
            {
                this.transformsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string URI
        {
            get
            {
                return this.uRIField;
            }
            set
            {
                this.uRIField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class SPKIDataType
    {
        
        private object[] itemsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class X509DataType
    {
        
        private object[] itemsField;
        
        private ItemsChoiceType[] itemsElementNameField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)]
        [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class X509IssuerSerialType
    {
        
        private string x509IssuerNameField;
        
        private string x509SerialNumberField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public string X509IssuerName
        {
            get
            {
                return this.x509IssuerNameField;
            }
            set
            {
                this.x509IssuerNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)]
        public string X509SerialNumber
        {
            get
            {
                return this.x509SerialNumberField;
            }
            set
            {
                this.x509SerialNumberField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)]
    public enum ItemsChoiceType
    {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("##any:")]
        Item,
        
        /// <remarks/>
        X509CRL,
        
        /// <remarks/>
        X509Certificate,
        
        /// <remarks/>
        X509IssuerSerial,
        
        /// <remarks/>
        X509SKI,
        
        /// <remarks/>
        X509SubjectName,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)]
    public enum ItemsChoiceType2
    {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("##any:")]
        Item,
        
        /// <remarks/>
        KeyName,
        
        /// <remarks/>
        KeyValue,
        
        /// <remarks/>
        MgmtData,
        
        /// <remarks/>
        PGPData,
        
        /// <remarks/>
        RetrievalMethod,
        
        /// <remarks/>
        SPKIData,
        
        /// <remarks/>
        X509Data,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")]
    public partial class ObjectType
    {
        
        private System.Xml.XmlNode[] anyField;
        
        private string idField;
        
        private string mimeTypeField;
        
        private string encodingField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]
        public System.Xml.XmlNode[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                this.anyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
        public string Id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string MimeType
        {
            get
            {
                return this.mimeTypeField;
            }
            set
            {
                this.mimeTypeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")]
        public string Encoding
        {
            get
            {
                return this.encodingField;
            }
            set
            {
                this.encodingField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class PCEHRHeader
    {
        
        private PCEHRHeaderUser userField;
        
        private string ihiNumberField;
        
        private PCEHRHeaderProductType productTypeField;
        
        private PCEHRHeaderClientSystemType clientSystemTypeField;
        
        private PCEHRHeaderAccessingOrganisation accessingOrganisationField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public PCEHRHeaderUser User
        {
            get
            {
                return this.userField;
            }
            set
            {
                this.userField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string ihiNumber
        {
            get
            {
                return this.ihiNumberField;
            }
            set
            {
                this.ihiNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public PCEHRHeaderProductType productType
        {
            get
            {
                return this.productTypeField;
            }
            set
            {
                this.productTypeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=3)]
        public PCEHRHeaderClientSystemType clientSystemType
        {
            get
            {
                return this.clientSystemTypeField;
            }
            set
            {
                this.clientSystemTypeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=4)]
        public PCEHRHeaderAccessingOrganisation accessingOrganisation
        {
            get
            {
                return this.accessingOrganisationField;
            }
            set
            {
                this.accessingOrganisationField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class PCEHRHeaderUser
    {
        
        private PCEHRHeaderUserIDType iDTypeField;
        
        private string idField;
        
        private string roleField;
        
        private string userNameField;
        
        private bool useRoleForAuditField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public PCEHRHeaderUserIDType IDType
        {
            get
            {
                return this.iDTypeField;
            }
            set
            {
                this.iDTypeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string ID
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public string role
        {
            get
            {
                return this.roleField;
            }
            set
            {
                this.roleField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=3)]
        public string userName
        {
            get
            {
                return this.userNameField;
            }
            set
            {
                this.userNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=4)]
        public bool useRoleForAudit
        {
            get
            {
                return this.useRoleForAuditField;
            }
            set
            {
                this.useRoleForAuditField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum PCEHRHeaderUserIDType
    {
        
        /// <remarks/>
        HPII,
        
        /// <remarks/>
        PortalUserIdentifier,
        
        /// <remarks/>
        LocalSystemIdentifier,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class PCEHRHeaderProductType
    {
        
        private string vendorField;
        
        private string productNameField;
        
        private string productVersionField;
        
        private string platformField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public string vendor
        {
            get
            {
                return this.vendorField;
            }
            set
            {
                this.vendorField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string productName
        {
            get
            {
                return this.productNameField;
            }
            set
            {
                this.productNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public string productVersion
        {
            get
            {
                return this.productVersionField;
            }
            set
            {
                this.productVersionField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=3)]
        public string platform
        {
            get
            {
                return this.platformField;
            }
            set
            {
                this.platformField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public enum PCEHRHeaderClientSystemType
    {
        
        /// <remarks/>
        CIS,
        
        /// <remarks/>
        CSP,
        
        /// <remarks/>
        CRP,
        
        /// <remarks/>
        HI,
        
        /// <remarks/>
        Medicare,
        
        /// <remarks/>
        CPP,
        
        /// <remarks/>
        CCP,
        
        /// <remarks/>
        Other,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
    public partial class PCEHRHeaderAccessingOrganisation
    {
        
        private string organisationIDField;
        
        private string organisationNameField;
        
        private string alternateOrganisationNameField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public string organisationID
        {
            get
            {
                return this.organisationIDField;
            }
            set
            {
                this.organisationIDField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public string organisationName
        {
            get
            {
                return this.organisationNameField;
            }
            set
            {
                this.organisationNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public string alternateOrganisationName
        {
            get
            {
                return this.alternateOrganisationNameField;
            }
            set
            {
                this.alternateOrganisationNameField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHR
    {
        
        private registerPCEHRRepresentative representativeField;
        
        private registerPCEHRIndividual individualField;
        
        private registerPCEHRAssertions assertionsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRRepresentative representative
        {
            get
            {
                return this.representativeField;
            }
            set
            {
                this.representativeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public registerPCEHRIndividual individual
        {
            get
            {
                return this.individualField;
            }
            set
            {
                this.individualField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public registerPCEHRAssertions assertions
        {
            get
            {
                return this.assertionsField;
            }
            set
            {
                this.assertionsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRRepresentative
    {
        
        private string ihiNumberField;
        
        private registerPCEHRRepresentativeDemographics demographicsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", Order=0)]
        public string ihiNumber
        {
            get
            {
                return this.ihiNumberField;
            }
            set
            {
                this.ihiNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public registerPCEHRRepresentativeDemographics demographics
        {
            get
            {
                return this.demographicsField;
            }
            set
            {
                this.demographicsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRRepresentativeDemographics : individualTypeSupp
    {
        
        private string medicareCardNumberField;
        
        private string medicareIRNField;
        
        private string dvaFileNumberField;
        
        private string militaryHealthNumberField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="token", Order=0)]
        public string medicareCardNumber
        {
            get
            {
                return this.medicareCardNumberField;
            }
            set
            {
                this.medicareCardNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="integer", Order=1)]
        public string medicareIRN
        {
            get
            {
                return this.medicareIRNField;
            }
            set
            {
                this.medicareIRNField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="token", Order=2)]
        public string dvaFileNumber
        {
            get
            {
                return this.dvaFileNumberField;
            }
            set
            {
                this.dvaFileNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", Order=3)]
        public string militaryHealthNumber
        {
            get
            {
                return this.militaryHealthNumberField;
            }
            set
            {
                this.militaryHealthNumberField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRIndividual
    {
        
        private registerPCEHRIndividualDemographics demographicsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRIndividualDemographics demographics
        {
            get
            {
                return this.demographicsField;
            }
            set
            {
                this.demographicsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRIndividualDemographics : individualTypeSupp
    {
        
        private string medicareCardNumberField;
        
        private string medicareIRNField;
        
        private string dvaFileNumberField;
        
        private string militaryHealthNumberField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="token", Order=0)]
        public string medicareCardNumber
        {
            get
            {
                return this.medicareCardNumberField;
            }
            set
            {
                this.medicareCardNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="integer", Order=1)]
        public string medicareIRN
        {
            get
            {
                return this.medicareIRNField;
            }
            set
            {
                this.medicareIRNField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="token", Order=2)]
        public string dvaFileNumber
        {
            get
            {
                return this.dvaFileNumberField;
            }
            set
            {
                this.dvaFileNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", Order=3)]
        public string militaryHealthNumber
        {
            get
            {
                return this.militaryHealthNumberField;
            }
            set
            {
                this.militaryHealthNumberField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRAssertions
    {
        
        private registerPCEHRAssertionsIdentity identityField;
        
        private registerPCEHRAssertionsDocument[] documentConsentField;
        
        private registerPCEHRAssertionsIvcCorrespondence ivcCorrespondenceField;
        
        private bool acceptedTermsAndConditionsField;
        
        private bool representativeDeclarationField;
        
        private bool representativeDeclarationFieldSpecified;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRAssertionsIdentity identity
        {
            get
            {
                return this.identityField;
            }
            set
            {
                this.identityField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(Order=1)]
        [System.Xml.Serialization.XmlArrayItemAttribute("document", IsNullable=false)]
        public registerPCEHRAssertionsDocument[] documentConsent
        {
            get
            {
                return this.documentConsentField;
            }
            set
            {
                this.documentConsentField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public registerPCEHRAssertionsIvcCorrespondence ivcCorrespondence
        {
            get
            {
                return this.ivcCorrespondenceField;
            }
            set
            {
                this.ivcCorrespondenceField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=3)]
        public bool acceptedTermsAndConditions
        {
            get
            {
                return this.acceptedTermsAndConditionsField;
            }
            set
            {
                this.acceptedTermsAndConditionsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=4)]
        public bool representativeDeclaration
        {
            get
            {
                return this.representativeDeclarationField;
            }
            set
            {
                this.representativeDeclarationField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool representativeDeclarationSpecified
        {
            get
            {
                return this.representativeDeclarationFieldSpecified;
            }
            set
            {
                this.representativeDeclarationFieldSpecified = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRAssertionsIdentity
    {
        
        private registerPCEHRAssertionsIdentityEvidenceOfIdentity evidenceOfIdentityField;
        
        private registerPCEHRAssertionsIdentityIndigenousStatus indigenousStatusField;
        
        private byte[] signedConsentFormField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRAssertionsIdentityEvidenceOfIdentity evidenceOfIdentity
        {
            get
            {
                return this.evidenceOfIdentityField;
            }
            set
            {
                this.evidenceOfIdentityField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public registerPCEHRAssertionsIdentityIndigenousStatus indigenousStatus
        {
            get
            {
                return this.indigenousStatusField;
            }
            set
            {
                this.indigenousStatusField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)]
        public byte[] signedConsentForm
        {
            get
            {
                return this.signedConsentFormField;
            }
            set
            {
                this.signedConsentFormField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRAssertionsIdentityEvidenceOfIdentity
    {
        
        private registerPCEHRAssertionsIdentityEvidenceOfIdentityType typeField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRAssertionsIdentityEvidenceOfIdentityType type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public enum registerPCEHRAssertionsIdentityEvidenceOfIdentityType
    {
        
        /// <remarks/>
        IdentityVerificationMethod1,
        
        /// <remarks/>
        IdentityVerificationMethod2,
        
        /// <remarks/>
        IdentityVerificationMethod3,
        
        /// <remarks/>
        IdentityVerificationMethod4,
        
        /// <remarks/>
        IdentityVerificationMethod5,
        
        /// <remarks/>
        IdentityVerificationMethod6,
        
        /// <remarks/>
        IdentityVerificationMethod7,
        
        /// <remarks/>
        IdentityVerificationMethod8,
        
        /// <remarks/>
        IdentityVerificationMethod9,
        
        /// <remarks/>
        IdentityVerificationMethod10,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public enum registerPCEHRAssertionsIdentityIndigenousStatus
    {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("1")]
        Item1,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("2")]
        Item2,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("3")]
        Item3,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("4")]
        Item4,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("9")]
        Item9,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRAssertionsDocument
    {
        
        private registerPCEHRAssertionsDocumentType typeField;
        
        private registerPCEHRAssertionsDocumentStatus statusField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRAssertionsDocumentType type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public registerPCEHRAssertionsDocumentStatus status
        {
            get
            {
                return this.statusField;
            }
            set
            {
                this.statusField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public enum registerPCEHRAssertionsDocumentType
    {
        
        /// <remarks/>
        MBS,
        
        /// <remarks/>
        ACIR,
        
        /// <remarks/>
        AODR,
        
        /// <remarks/>
        PBSPastAssimilation,
        
        /// <remarks/>
        MBSPastAssimilation,
        
        /// <remarks/>
        PBS,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public enum registerPCEHRAssertionsDocumentStatus
    {
        
        /// <remarks/>
        ConsentGiven,
        
        /// <remarks/>
        ConsentNotGiven,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRAssertionsIvcCorrespondence
    {
        
        private registerPCEHRAssertionsIvcCorrespondenceChannel channelField;
        
        private contactDetailsType contactDetailsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public registerPCEHRAssertionsIvcCorrespondenceChannel channel
        {
            get
            {
                return this.channelField;
            }
            set
            {
                this.channelField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public contactDetailsType contactDetails
        {
            get
            {
                return this.contactDetailsField;
            }
            set
            {
                this.contactDetailsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public enum registerPCEHRAssertionsIvcCorrespondenceChannel
    {
        
        /// <remarks/>
        email,
        
        /// <remarks/>
        sms,
        
        /// <remarks/>
        response,
        
        /// <remarks/>
        mail,
        
        /// <remarks/>
        none,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRResponse
    {
        
        private responseStatusType responseStatusField;
        
        private registerPCEHRResponseIndividual individualField;
        
        private registerPCEHRResponseIvcDetails ivcDetailsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public responseStatusType responseStatus
        {
            get
            {
                return this.responseStatusField;
            }
            set
            {
                this.responseStatusField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public registerPCEHRResponseIndividual individual
        {
            get
            {
                return this.individualField;
            }
            set
            {
                this.individualField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=2)]
        public registerPCEHRResponseIvcDetails ivcDetails
        {
            get
            {
                return this.ivcDetailsField;
            }
            set
            {
                this.ivcDetailsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRResponseIndividual
    {
        
        private string ihiNumberField;
        
        private registerPCEHRResponseIndividualDemographics demographicsField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", Order=0)]
        public string ihiNumber
        {
            get
            {
                return this.ihiNumberField;
            }
            set
            {
                this.ihiNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=1)]
        public registerPCEHRResponseIndividualDemographics demographics
        {
            get
            {
                return this.demographicsField;
            }
            set
            {
                this.demographicsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRResponseIndividualDemographics : individualTypeSupp
    {
        
        private string medicareCardNumberField;
        
        private string medicareIRNField;
        
        private string dvaFileNumberField;
        
        private string militaryHealthNumberField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="token", Order=0)]
        public string medicareCardNumber
        {
            get
            {
                return this.medicareCardNumberField;
            }
            set
            {
                this.medicareCardNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="integer", Order=1)]
        public string medicareIRN
        {
            get
            {
                return this.medicareIRNField;
            }
            set
            {
                this.medicareIRNField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", DataType="token", Order=2)]
        public string dvaFileNumber
        {
            get
            {
                return this.dvaFileNumberField;
            }
            set
            {
                this.dvaFileNumberField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0", Order=3)]
        public string militaryHealthNumber
        {
            get
            {
                return this.militaryHealthNumberField;
            }
            set
            {
                this.militaryHealthNumberField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.2152")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0")]
    public partial class registerPCEHRResponseIvcDetails
    {
        
        private string codeField;
        
        private System.DateTime expiryDateField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Order=0)]
        public string code
        {
            get
            {
                return this.codeField;
            }
            set
            {
                this.codeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)]
        public System.DateTime expiryDate
        {
            get
            {
                return this.expiryDateField;
            }
            set
            {
                this.expiryDateField = value;
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    [System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
    public partial class registerPCEHRRequest
    {
        
        [System.ServiceModel.MessageHeaderAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.timestampType timestamp;
        
        [System.ServiceModel.MessageHeaderAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.signatureContainerType signature;
        
        [System.ServiceModel.MessageHeaderAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.PCEHRHeader PCEHRHeader;
        
        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0", Order=0)]
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHR registerPCEHR;
        
        public registerPCEHRRequest()
        {
        }
        
        public registerPCEHRRequest(Nehta.VendorLibrary.PCEHR.RegisterPCEHR.timestampType timestamp, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.signatureContainerType signature, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.PCEHRHeader PCEHRHeader, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHR registerPCEHR)
        {
            this.timestamp = timestamp;
            this.signature = signature;
            this.PCEHRHeader = PCEHRHeader;
            this.registerPCEHR = registerPCEHR;
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    [System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
    public partial class registerPCEHRResponse1
    {
        
        [System.ServiceModel.MessageHeaderAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/common/CommonCoreElements/1.0")]
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.signatureContainerType signature;
        
        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://ns.electronichealth.net.au/pcehr/xsd/interfaces/RegisterPCEHR/2.0", Order=0)]
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRResponse registerPCEHRResponse;
        
        public registerPCEHRResponse1()
        {
        }
        
        public registerPCEHRResponse1(Nehta.VendorLibrary.PCEHR.RegisterPCEHR.signatureContainerType signature, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRResponse registerPCEHRResponse)
        {
            this.signature = signature;
            this.registerPCEHRResponse = registerPCEHRResponse;
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    public interface RegisterPCEHRPortTypeChannel : Nehta.VendorLibrary.PCEHR.RegisterPCEHR.RegisterPCEHRPortType, System.ServiceModel.IClientChannel
    {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    public partial class RegisterPCEHRPortTypeClient : System.ServiceModel.ClientBase<Nehta.VendorLibrary.PCEHR.RegisterPCEHR.RegisterPCEHRPortType>, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.RegisterPCEHRPortType
    {
        
        public RegisterPCEHRPortTypeClient()
        {
        }
        
        public RegisterPCEHRPortTypeClient(string endpointConfigurationName) : 
                base(endpointConfigurationName)
        {
        }
        
        public RegisterPCEHRPortTypeClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress)
        {
        }
        
        public RegisterPCEHRPortTypeClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress)
        {
        }
        
        public RegisterPCEHRPortTypeClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress)
        {
        }
        
        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
        Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRResponse1 Nehta.VendorLibrary.PCEHR.RegisterPCEHR.RegisterPCEHRPortType.registerPCEHR(Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRRequest request)
        {
            return base.Channel.registerPCEHR(request);
        }
        
        public Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRResponse registerPCEHR(Nehta.VendorLibrary.PCEHR.RegisterPCEHR.timestampType timestamp, ref Nehta.VendorLibrary.PCEHR.RegisterPCEHR.signatureContainerType signature, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.PCEHRHeader PCEHRHeader, Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHR registerPCEHR1)
        {
            Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRRequest inValue = new Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRRequest();
            inValue.timestamp = timestamp;
            inValue.signature = signature;
            inValue.PCEHRHeader = PCEHRHeader;
            inValue.registerPCEHR = registerPCEHR1;
            Nehta.VendorLibrary.PCEHR.RegisterPCEHR.registerPCEHRResponse1 retVal = ((Nehta.VendorLibrary.PCEHR.RegisterPCEHR.RegisterPCEHRPortType)(this)).registerPCEHR(inValue);
            signature = retVal.signature;
            return retVal.registerPCEHRResponse;
        }
    }
}
