docs: def to_xml(self):
          # pylint: disable=R0912
          """
          Converts object into an XML string.
          """
          xml = ''
          for asset in self.assets:
              xml += '<asset filename="%s" ' % \
                  os.path.basename(asset['filename'])
              xml += ' refid="%(refid)s"' % asset
              xml += ' size="%(size)s"' % asset
              xml += ' hash-code="%s"' % asset['hash-code']
              xml += ' type="%(type)s"' % asset
              if asset.get('encoding-rate', None):
                  xml += ' encoding-rate="%s"' % asset['encoding-rate']
              if asset.get('frame-width', None):
                  xml += ' frame-width="%s"' % asset['frame-width']
              if asset.get('frame-height', None):
                  xml += ' frame-height="%s"' % asset['frame-height']
              if asset.get('display-name', None):
                  xml += ' display-name="%s"' % asset['display-name']
              if asset.get('encode-to', None):
                  xml += ' encode-to="%s"' % asset['encode-to']
              if asset.get('encode-multiple', None):
                  xml += ' encode-multiple="%s"' % asset['encode-multiple']
              if asset.get('h264-preserve-as-rendition', None):
                  xml += ' h264-preserve-as-rendition="%s"' % \
                      asset['h264-preserve-as-rendition']
              if asset.get('h264-no-processing', None):
                  xml += ' h264-no-processing="%s"' % asset['h264-no-processing']
              xml += ' />\n'
          xml += '<title name="%(name)s" refid="%(referenceId)s" active="TRUE" '
          if self.start_date:
              xml += 'start-date="%(start_date)s" '
          if self.end_date:
              xml += 'end-date="%(end_date)s" '
          for asset in self.assets:
              if asset.get('encoding-rate', None) == None:
                  choice = enums.AssetTypeEnum
                  if asset.get('type', None) == choice.VIDEO_FULL:
                      xml += 'video-full-refid="%s" ' % asset.get('refid')
                  if asset.get('type', None) == choice.THUMBNAIL:
                      xml += 'thumbnail-refid="%s" ' % asset.get('refid')
                  if asset.get('type', None) == choice.VIDEO_STILL:
                      xml += 'video-still-refid="%s" ' % asset.get('refid')
                  if asset.get('type', None) == choice.FLV_BUMPER:
                      xml += 'flash-prebumper-refid="%s" ' % asset.get('refid')
          xml += '>\n'
          if self.short_description:
              xml += '<short-description><![CDATA[%(shortDescription)s]]>'
              xml += '</short-description>\n'
          if self.long_description:
              xml += '<long-description><![CDATA[%(longDescription)s]]>'
              xml += '</long-description>\n'
          for tag in self.tags:
              xml += '<tag><![CDATA[%s]]></tag>\n' % tag
          for asset in self.assets:
              if asset.get('encoding-rate', None):
                  xml += '<rendition-refid>%s</rendition-refid>\n' % \
                      asset['refid']
          for meta in self.metadata:
              xml += '<custom-%s-value name="%s">%s</custom-%s-value>' % \
                  (meta['type'], meta['key'], meta['value'], meta['type'])
          xml += '</title>'
          xml = xml % self._to_dict()
          return xml