       attachments = item.getAttachments() or []
       attachments = Zotero.Items.get(attachments) if attachments.length != 0
     Zotero.OPDS.log("'#{item.getDisplayTitle(true)}' has #{attachments.length} attachments")
-    attachments = (a for a in attachments when a.attachmentMIMEType? != "text/html")
+    attachments = (a for a in attachments when a.attachmentLinkMode != Zotero.Attachments.LINK_MODE_LINKED_URL && a.attachmentMIMEType? != "text/html")
     Zotero.OPDS.log("'#{item.getDisplayTitle(true)}' has #{attachments.length} supported attachments")
 
     return if attachments.length == 0

    Zotero.Server.DataListener.prototype._generateResponse = ((original) ->
      return (status, contentType, body) ->
        response = original.apply(this, arguments)
        if Zotero.MIME.isTextType(contentType) || !body || !contentType
          return response
        else
          return {contentType: contentType, response: response}

  document: Components.classes["@mozilla.org/xul/xul-document;1"].getService(Components.interfaces.nsIDOMDocument)
  serializer: Components.classes["@mozilla.org/xmlextras/xmlserializer;1"].createInstance(Components.interfaces.nsIDOMSerializer)
  parser: Components.classes["@mozilla.org/xmlextras/domparser;1"].createInstance(Components.interfaces.nsIDOMParser)
  MIMEService: Components.classes['@mozilla.org/uriloader/external-helper-app-service;1'].getService(Components.interfaces.nsIMIMEService)
  # xslt: Components.classes["@mozilla.org/document-transformer;1?type=xslt"].createInstance(Components.interfaces.nsIXSLTProcessor)

  clients:
