Trans: ESpace translator, updated by Rintze Zelle
This commit is contained in:
parent
0584ee6b52
commit
633180075a
|
@ -1,14 +1,14 @@
|
||||||
{
|
{
|
||||||
"translatorID":"176948f7-9df8-4afc-ace7-4c1c7318d426",
|
"translatorID":"176948f7-9df8-4afc-ace7-4c1c7318d426",
|
||||||
"translatorType":4,
|
|
||||||
"label":"ESpacenet",
|
"label":"ESpacenet",
|
||||||
"creator":"Gilles Poulain",
|
"creator":"Gilles Poulain and Rintze Zelle",
|
||||||
"target":"http://v3.espacenet.com/",
|
"target":"http://v3.espacenet.com/",
|
||||||
"minVersion":"1.0.0b4.r5",
|
"minVersion":"1.0.0b4.r5",
|
||||||
"maxVersion":"",
|
"maxVersion":"",
|
||||||
"priority":100,
|
"priority":100,
|
||||||
"inRepository":true,
|
"inRepository":"1",
|
||||||
"lastUpdated":"2009-10-08 17:40:00"
|
"translatorType":4,
|
||||||
|
"lastUpdated":"2010-10-17 10:38:50"
|
||||||
}
|
}
|
||||||
|
|
||||||
function detectWeb(doc, url) {
|
function detectWeb(doc, url) {
|
||||||
|
@ -83,7 +83,7 @@ function scrape(doc,url) {
|
||||||
//Get Applicant
|
//Get Applicant
|
||||||
var xpath = "//table[1]/tbody/tr/td[1]/table/tbody/tr[4]/td[2]";
|
var xpath = "//table[1]/tbody/tr/td[1]/table/tbody/tr[4]/td[2]";
|
||||||
if(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext()){
|
if(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext()){
|
||||||
var applicant = Zotero.Utilities.cleanString(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext().textContent);
|
var applicantField = Zotero.Utilities.cleanString(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext().textContent);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Get application number
|
//Get application number
|
||||||
|
@ -133,7 +133,7 @@ function scrape(doc,url) {
|
||||||
//Get Creators
|
//Get Creators
|
||||||
var xpath = "//table[1]/tbody/tr/td[1]/table/tbody/tr[3]/td[2]";
|
var xpath = "//table[1]/tbody/tr/td[1]/table/tbody/tr[3]/td[2]";
|
||||||
if(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext()){
|
if(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext()){
|
||||||
var author = Zotero.Utilities.cleanString(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext().textContent);
|
var inventorField = Zotero.Utilities.cleanString(doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null).iterateNext().textContent);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Create Zotero Ref
|
//Create Zotero Ref
|
||||||
|
@ -142,34 +142,44 @@ function scrape(doc,url) {
|
||||||
newArticle.title = title;
|
newArticle.title = title;
|
||||||
newArticle.date = date;
|
newArticle.date = date;
|
||||||
newArticle.abstractNote = abstract;
|
newArticle.abstractNote = abstract;
|
||||||
newArticle.assignee = applicant;
|
|
||||||
newArticle.patentNumber = pnumber;
|
newArticle.patentNumber = pnumber;
|
||||||
newArticle.priorityNumbers = prnumber;
|
newArticle.priorityNumbers = prnumber;
|
||||||
newArticle.applicationNumber = anumber;
|
newArticle.applicationNumber = anumber;
|
||||||
newArticle.extra = "CIB: " + CIBnumber + "\nECLA: " + ECLAnumber
|
newArticle.extra = "CIB: " + CIBnumber + "\nECLA: " + ECLAnumber
|
||||||
|
|
||||||
var author1 = author.split("; ");
|
if (applicantField) {
|
||||||
;
|
var applicant = reorganizeNames(applicantField).join("; ");
|
||||||
for (var m = 0; m< author1.length; m++) {
|
newArticle.assignee = applicant;
|
||||||
|
|
||||||
if (author1[m].match(/\(/)) {
|
|
||||||
author1[m] = author1[m].substr(0, author1[m].length-5);
|
|
||||||
}
|
|
||||||
words = author1[m].split(/\s/);
|
|
||||||
|
|
||||||
for (var j in words) {
|
|
||||||
words[j] = words[j][0].toUpperCase() + words[j].substr(1).toLowerCase();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var inventor = '';
|
var inventors = reorganizeNames(inventorField);
|
||||||
for (var k = 1; k < words.length; k++) {
|
for (var m = 0; m< inventors.length; m++) {
|
||||||
inventor = inventor +words[k] + " ";
|
newArticle.creators.push(Zotero.Utilities.cleanAuthor(inventors[m], "inventor", true));
|
||||||
if (k == words.length-1) {
|
|
||||||
inventor = inventor +words[0];
|
|
||||||
newArticle.creators.push(Zotero.Utilities.cleanAuthor(inventor, "inventor"));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
newArticle.complete();
|
newArticle.complete();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function reorganizeNames(nameField) {
|
||||||
|
var nameCollection = nameField.split("(")[1].split(")")[0];
|
||||||
|
var nameParts = nameCollection.split(" ");
|
||||||
|
for (var j in nameParts) {
|
||||||
|
nameParts[j] = nameParts[j][0].toUpperCase() + nameParts[j].substr(1).toLowerCase();
|
||||||
|
}
|
||||||
|
nameCollection = nameParts.join(" ");
|
||||||
|
|
||||||
|
var nameArray = nameCollection.split(", ; ");
|
||||||
|
|
||||||
|
for (var m = 0; m< nameArray.length; m++) {
|
||||||
|
if (nameArray[m].match(",")) {
|
||||||
|
var nameParts = "";
|
||||||
|
nameParts = nameArray[m].split(", ");
|
||||||
|
nameParts[0] = nameParts[0].concat(",");
|
||||||
|
nameArray[m] = nameParts.join(" ");
|
||||||
|
} else {
|
||||||
|
nameArray[m] = nameArray[m].replace(" ", ", ");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nameArray;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user