def make_from_json(jsonData, filename, removeOld=False): if removeOld: try: os.remove(filename) except (OSError): pass # create the document document = Document(filename) # set up a mock example trn = document.database.transaction() with trn: document.database.root['documentType'] = jsonData['documentType'] document.database.root['variety'] = jsonData['variety'] for i, spanData in enumerate(jsonData['spans']): span = Document.persistenceSchema.classes.Span( externalID=i, info=spanData['spanInfo']) for i, token in enumerate(spanData['tokens']): token = Document.persistenceSchema.classes.Token(token) try: token.gloss = spanData['lemmas'][i] except: pass span.addToken(token) document.addSpan(span) trn.commit() document.close()
def makeMockDocument(): try: os.remove(testfile) except(OSError): pass document = Document(testfile) # set up a mock example trn = document.database.transaction() with trn: for spandata in MockData: span = Document.persistenceSchema.classes.Span(externalID = spandata['id'], info = spandata['info']) for tok in spandata['tokens']: span.addToken(Document.persistenceSchema.classes.Token(tok)) document.addSpan(span) # make some constituents, cause why not phrase = Document.persistenceSchema.classes.Constituent() phrase.add(document.spans[0].tokens[3]) phrase.add(document.spans[0].tokens[2]) phrase.add(document.spans[0].tokens[4]) phrase = Document.persistenceSchema.classes.Constituent() phrase.add(document.spans[0].tokens[0]) phrase.add(document.spans[0].tokens[1]) phrase.add(document.spans[0].tokens[3]) phrase.add(document.spans[0].tokens[4]) phrase = Document.persistenceSchema.classes.Constituent() print phrase.refmark phrase.add(document.spans[1].tokens[1]) phrase.add(document.spans[1].tokens[0]) x = Document.persistenceSchema.classes.DependencyRelation(document.spans[0].constituents[0], document.spans[0].tokens[5]) x = Document.persistenceSchema.classes.DependencyRelation(document.spans[0].tokens[1], document.spans[0].tokens[1]) document.spans[0].tokens[0].variables['PoS'] = 'Noun' document.spans[0].tokens[0].variables['Number'] = 'singular' document.spans[0].tokens[0].variables['Gender'] = 'masculine' document.spans[0].tokens[0].variables['Focus'] = 'yes' mm = Document.persistenceSchema.classes.ReferenceMark() document.spans[0].tokens[0].refmark = mm document.spans[1].tokens[0].refmark = mm phrase.refmark = mm document.spans[0].tokens[4].refmark = Document.persistenceSchema.classes.ReferenceMark() trn.commit() return document
def makeMockDocument1(): try: os.remove(testfile) except(OSError): pass document = Document(testfile) # set up a mock example trn = document.database.transaction() with trn: for spandata in MockData1: span = Document.persistenceSchema.classes.Span(externalID = spandata['id'], info = spandata['info']) for tok in spandata['tokens']: span.addToken(Document.persistenceSchema.classes.Token(tok)) document.addSpan(span) trn.commit() return document