sectionsymbol = sectionnode.find("classification-symbol").text section = session.query(Section).filter(Section.symbol == sectionsymbol).first(); sectionid = section.id; check = session.query(Subsection).filter(Subsection.section_id == sectionid); if(check.count()): print "This document is already indexed. script stopping..." sys.exit() subsectionlist = sectionnode.findall('classification-item') for sub in subsectionlist: # symbol subsectionsymbol = sub.find('classification-symbol').text # description titlenode = utils.getFirstDescendant(sub, "class-title") titletext = getTitleText(titlenode) # create a new subsection subsection = Subsection(subsectionsymbol, titletext) # many to one rela section.subsections.append(subsection) classlist = sub.findall('classification-item') for clas in classlist: classsymbol = clas.find("classification-symbol").text classtitle = clas.find('class-title') classdesc = getTitleText(classtitle) print classdesc newclass = Class(classsymbol, classdesc)
if (subclass is None): updatemissingsubclass(code) continue patent.subclasses.append(subclass) subclass.count += 1 session.add(subclass) # get assignees assignees = list(root.iter("assignee")) assigneesList = [] # print "Num of assignees: ", len(assignees) if (len(assignees) == 0): applicants = list(root.iter("us-applicant")) # print "Num of applicants: ", len(applicants) for app in applicants: attributes = app.attrib orgname = utils.getFirstDescendant(app, "orgname") if (orgname is not None): name = utils.getElementAsciiText(orgname) else: lastnameNode = utils.getFirstDescendant(app, "last-name") lastname = utils.getElementAsciiText(lastnameNode) firstnameNode = utils.getFirstDescendant(app, "first-name") firstname = utils.getElementAsciiText(firstnameNode) name = firstname + " " + lastname countryNode = utils.getFirstDescendant(app, "country") country = utils.getElementAsciiText(countryNode) cityNode = utils.getFirstDescendant(app, "city") city = utils.getElementAsciiText(cityNode) tempAssignee = session.query(Assignee).filter( Assignee.orgname == name, Assignee.city == city,
section = session.query(Section).filter( Section.symbol == sectionsymbol).first() sectionid = section.id check = session.query(Subsection).filter(Subsection.section_id == sectionid) if (check.count()): print "This document is already indexed. script stopping..." sys.exit() subsectionlist = sectionnode.findall('classification-item') for sub in subsectionlist: # symbol subsectionsymbol = sub.find('classification-symbol').text # description titlenode = utils.getFirstDescendant(sub, "class-title") titletext = getTitleText(titlenode) # create a new subsection subsection = Subsection(subsectionsymbol, titletext) # many to one rela section.subsections.append(subsection) classlist = sub.findall('classification-item') for clas in classlist: classsymbol = clas.find("classification-symbol").text classtitle = clas.find('class-title') classdesc = getTitleText(classtitle) print classdesc newclass = Class(classsymbol, classdesc)
if(subclass is None): updatemissingsubclass(code) continue; patent.subclasses.append(subclass) subclass.count+=1 session.add(subclass) # get assignees assignees = list(root.iter("assignee")) assigneesList = [] # print "Num of assignees: ", len(assignees) if(len(assignees) == 0): applicants = list(root.iter("us-applicant")) # print "Num of applicants: ", len(applicants) for app in applicants: attributes = app.attrib orgname = utils.getFirstDescendant(app, "orgname") if(orgname is not None): name = utils.getElementAsciiText(orgname) else: lastnameNode = utils.getFirstDescendant(app, "last-name") lastname = utils.getElementAsciiText(lastnameNode) firstnameNode = utils.getFirstDescendant(app, "first-name") firstname = utils.getElementAsciiText(firstnameNode) name = firstname + " " + lastname; countryNode = utils.getFirstDescendant(app, "country") country = utils.getElementAsciiText(countryNode) cityNode = utils.getFirstDescendant(app, "city") city = utils.getElementAsciiText(cityNode) tempAssignee = session.query(Assignee).filter(Assignee.orgname == name, Assignee.city == city, Assignee.country == country) if(tempAssignee.count()==0):