def _serialize_node_search(node):
    title = node.title
    if node.is_registration:
        title += ' (registration)'

    first_author = node.visible_contributors[0]

    return {
        'id': node._id,
        'title': title,
        'firstAuthor': first_author.family_name or first_author.given_name or first_author.full_name,
        'etal': len(node.visible_contributors) > 1,
    }
Read one corpus file.
dataset/ETHPy150Open CenterForOpenScience/osf.io/website/project/views/node.py/_serialize_node_search--crossover with--dataset/ETHPy150Open aalto-speech/morfessor/morfessor/io.py/MorfessorIO.read_corpus_file