{ "translatorID": "92d4ed84-8d0-4d3c-941f-d4b9124cfbb", "label": "IEEE Xplore", "creator": "Simon Kornblith, Michael Berkowitz, Bastian Koenings, and Avram Lyon", "target": "^https?://([^/]+\\.)?ieeexplore\\.ieee\\.org/([^#]+[&?]arnumber=\\d+|(abstract/)?document/|search/(searchresult|selected)\\.jsp|xpl/(mostRecentIssue|tocresult)\\.jsp\\?|xpl/conhome/\\d+/proceeding)", "minVersion": "4.0", "maxVersion": "", "priority": 100, "inRepository": true, "translatorType": 4, "browserSupport": "gcsibv", "lastUpdated": "2020-03-25 18:03:44" } function detectWeb(doc, url) { if (doc.defaultView !== doc.defaultView.top) return false; if (/[?&]arnumber=(\d+)/i.test(url) || /\/document\/\d+/i.test(url)) { var firstBreadcrumb = ZU.xpathText(doc, '(//div[contains(@class, "breadcrumbs")]//a)[1]'); if (firstBreadcrumb == "Conferences") { return "conferencePaper"; } return "journalArticle"; } // Issue page var results = doc.getElementById('results-blk'); if (results) { return getSearchResults(doc, true) ? "multiple" : false; } // Search results if (url.includes("/search/searchresult.jsp")) { return "multiple"; } // conference list results if (url.includes("xpl/conhome") && url.includes("proceeding")) { return "multiple"; } // more generic method for other cases (is this still needed?) /* var scope = ZU.xpath(doc, '//div[contains(@class, "ng-scope")]')[0]; if (!scope) { Zotero.debug("No scope"); return; } Z.monitorDOMChanges(scope, {childList: true}); if (getSearchResults(doc, true)) { return "multiple"; } */ return false; } function getSearchResults(doc, checkOnly) { var items = {}; var found = false; var rows = ZU.xpath(doc, '//*[contains(@class, "article-list") or contains(@class, "List-results-items")]//h2/a|//*[@id="results-blk"]//*[@class="art-abs-url"]'); for (var i = 0; i < rows.length; i++) { var href = rows[i].href; var title = ZU.trimInternal(rows[i].textContent); if (!href || !title) continue; if (checkOnly) return true; found = true; items[fixUrl(href)] = title; } return found ? items : false; } // Some pages don't show the metadata we need (http://forums.zotero.org/discussion/16283) // No data: http://ieeexplore.ieee.org/search/srchabstract.jsp?tp=&arnumber=1397982 // No data: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1397982 // Data: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1397982 // Also address issue of saving from PDF itself, I hope // URL like http://ieeexplore.ieee.org/ielx4/78/2655/00080767.pdf?tp=&arnumber=80767&isnumber=2655 // Or: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1575188&tag=1 function fixUrl(url) { var arnumber = url.match(/arnumber=(\d+)/); if (arnumber) { return url.replace(/\/(?:search|stamp|ielx[45])\/.*$/, "/xpls/abs_all.jsp?arnumber=" + arnumber[1]); } else { return url; } } function doWeb(doc, url) { if (detectWeb(doc, url) == "multiple") { Zotero.selectItems(getSearchResults(doc), function (items) { if (!items) { return; } var articles = []; for (var i in items) { articles.push(i); } ZU.processDocuments(articles, scrape); }); } else if (url.includes("/search/") || url.includes("/stamp/") || url.includes("/ielx4/") || url.includes("/ielx5/")) { ZU.processDocuments([fixUrl(url)], scrape); } else { scrape(doc, url); } } function scrape(doc, url) { var arnumber = (url.match(/arnumber=(\d+)/) || url.match(/\/document\/(\d+)/))[1]; var pdf = "/stamp/stamp.jsp?tp=&arnumber=" + arnumber; // Z.debug("arNumber = " + arnumber); var script = ZU.xpathText(doc, '//script[@type="text/javascript" and contains(., "global.document.metadata")]'); if (script) { var dataRaw = script.split("global.document.metadata")[1] .replace(/^=/, '').replace(/};[\s\S]*$/m, '}'); try { var data = JSON.parse(dataRaw); } catch (e) { Z.debug("Error parsing JSON data:"); Z.debug(e); } } var post = "recordIds=" + arnumber + "&fromPage=&citations-format=citation-abstract&download-format=download-bibtex"; ZU.doPost('/xpl/downloadCitations', post, function (text) { text = ZU.unescapeHTML(text.replace(/(&[^\s;]+) and/g, '$1;')); // remove empty tag - we can take this out once empty tags are ignored text = text.replace(/(keywords=\{.+);\}/, "$1}"); var earlyaccess = false; if (text.search(/^@null/) != -1) { earlyaccess = true; text = text.replace(/^@null/, "@article"); } var translator = Zotero.loadTranslator("import"); // Calling the BibTeX translator translator.setTranslator("9cb70025-a888-4a29-a210-93ec52da40d4"); translator.setString(text); translator.setHandler("itemDone", function (obj, item) { item.notes = []; var res; // Rearrange titles, per http://forums.zotero.org/discussion/8056 // If something has a comma or a period, and the text after comma ends with // "of", "IEEE", or the like, then we switch the parts. Prefer periods. if (item.publicationTitle.includes(".")) { res = item.publicationTitle.trim().match(/^(.*)\.(.*(?:of|on|IEE|IEEE|IET|IRE))$/); } else { res = item.publicationTitle.trim().match(/^(.*),(.*(?:of|on|IEE|IEEE|IET|IRE))$/); } if (res) { item.publicationTitle = res[2] + " " + res[1]; } item.proceedingsTitle = item.conferenceName = item.publicationTitle; if (earlyaccess) { item.volume = "Early Access Online"; item.issue = ""; item.pages = ""; } if (data && data.authors && data.authors.length == item.creators.length) { item.creators = []; for (let author of data.authors) { item.creators.push({ firstName: author.firstName, lastName: author.lastName, creatorType: "author" }); } } if (!item.ISSN && data && data.issn) { item.ISSN = data.issn.map(el => el.value).join(", "); } if (item.ISSN && !ZU.fieldIsValidForType('ISSN', item.itemType)) { item.extra = "ISSN: " + item.ISSN; } item.attachments.push({ document: doc, title: "IEEE Xplore Abstract Record" }); if (pdf) { ZU.doGet(pdf, function (src) { // Either the PDF is embedded in the page, or (e.g. for iOS) // the page has a redirect to the full-page PDF // // As of 3/2020, embedded PDFs via a web-based proxy are // being served as getPDF.jsp, so support that in addition // to direct .pdf URLs. var m = /", "issue": "1", "itemID": "80767", "libraryCatalog": "IEEE Xplore", "pages": "76-84", "publicationTitle": "IEEE Transactions on Signal Processing", "volume": "39", "attachments": [ { "title": "IEEE Xplore Full Text PDF", "mimeType": "application/pdf" }, { "title": "IEEE Xplore Abstract Record" } ], "tags": [ { "tag": "Array signal processing" }, { "tag": "Background noise" }, { "tag": "Direction of arrival estimation" }, { "tag": "Interference cancellation" }, { "tag": "Jamming" }, { "tag": "Noise cancellation" }, { "tag": "Optimization methods" }, { "tag": "Sensor arrays" }, { "tag": "Signal to noise ratio" }, { "tag": "Steady-state" }, { "tag": "adaptive filters" }, { "tag": "adaptive implementation" }, { "tag": "array processing" }, { "tag": "eigenanalysis methods" }, { "tag": "eigenvalues and eigenfunctions" }, { "tag": "fast converging algorithm" }, { "tag": "filtering and prediction theory" }, { "tag": "interference cancellation" }, { "tag": "interference suppression" }, { "tag": "signal processing" } ], "notes": [], "seeAlso": [] } ] }, { "type": "web", "url": "https://ieeexplore.ieee.org/abstract/document/7696113/?reload=true", "items": [ { "itemType": "conferencePaper", "title": "3D flexible antenna realization process using liquid metal and additive technology", "creators": [ { "firstName": "Mathieu", "lastName": "Cosker", "creatorType": "author" }, { "firstName": "Fabien", "lastName": "Ferrero", "creatorType": "author" }, { "firstName": "Leonardo", "lastName": "Lizzi", "creatorType": "author" }, { "firstName": "Robert", "lastName": "Staraj", "creatorType": "author" }, { "firstName": "Jean-Marc", "lastName": "Ribero", "creatorType": "author" } ], "date": "June 2016", "DOI": "10.1109/APS.2016.7696113", "abstractNote": "This paper presents a method to design 3D flexible antennas using liquid metal and additive technology (3D printer based on Fused Deposition Modeling (FDM) technology). The fabricated antennas present flexible properties. The design method is first presented and validated using the example of a simple inverted F antenna (IFA) in Ultra High Frequency (UHF) band. The design, the fabrication and the obtained measured results are discussed.", "conferenceName": "2016 IEEE International Symposium on Antennas and Propagation (APSURSI)", "extra": "ISSN: 1947-1491", "itemID": "7696113", "libraryCatalog": "IEEE Xplore", "pages": "809-810", "proceedingsTitle": "2016 IEEE International Symposium on Antennas and Propagation (APSURSI)", "attachments": [ { "title": "IEEE Xplore Full Text PDF", "mimeType": "application/pdf" }, { "title": "IEEE Xplore Abstract Record" } ], "tags": [ { "tag": "3D flexible antenna design" }, { "tag": "3D flexible antenna realization process" }, { "tag": "3D printer" }, { "tag": "3D printer" }, { "tag": "Antenna measurements" }, { "tag": "Antenna radiation patterns" }, { "tag": "FDM technology" }, { "tag": "IFA" }, { "tag": "IFA antenna" }, { "tag": "Liquids" }, { "tag": "Metals" }, { "tag": "Printers" }, { "tag": "Three-dimensional displays" }, { "tag": "UHF antennas" }, { "tag": "UHF band" }, { "tag": "additive technology" }, { "tag": "additives" }, { "tag": "antenna fabrication" }, { "tag": "fused deposition modeling technology" }, { "tag": "inverted F antenna" }, { "tag": "liquid metal" }, { "tag": "liquid metal and additive technology" }, { "tag": "liquid metals" }, { "tag": "planar inverted-F antennas" }, { "tag": "rapid prototyping (industrial)" }, { "tag": "ultra high frequency band" } ], "notes": [], "seeAlso": [] } ] } ] /** END TEST CASES **/