Constructs the Concierge Request Header lxml object to be used as the
        '_soapheaders' argument for WSDL methods.

def construct_concierge_header(self, url):
        """
        Constructs the Concierge Request Header lxml object to be used as the
        '_soapheaders' argument for WSDL methods.
        """
        concierge_request_header = (
            etree.Element(
                etree.QName(XHTML_NAMESPACE, "ConciergeRequestHeader"),
                nsmap={'sch': XHTML_NAMESPACE}))

        if self.session_id:
            session = (
                etree.SubElement(concierge_request_header,
                                 etree.QName(XHTML_NAMESPACE, "SessionId")))
            session.text = self.session_id

        access_key = (
            etree.SubElement(concierge_request_header,
                             etree.QName(XHTML_NAMESPACE, "AccessKeyId")))
        access_key.text = self.access_key

        association_id = (etree.SubElement(concierge_request_header,
                                           etree.QName(XHTML_NAMESPACE,
                                                       "AssociationId")))
        association_id.text = self.association_id

        signature = (
            etree.SubElement(concierge_request_header,
                             etree.QName(XHTML_NAMESPACE, "Signature")))
        signature.text = self.get_hashed_signature(url=url)

        return concierge_request_header