surname = parts[0]
names = []
elif len(parts) != 2:
- raise ValueError("Invalid person name. There should be at most one comma: \"%s\"." % text)
+ raise ValueError("Invalid person name. There should be at most one comma: \"%s\"." % text.encode('utf-8'))
else:
surname = parts[0]
if len(parts[1]) == 0:
# there is no non-whitespace data after the comma
raise ValueError("Found a comma, but no names given: \"%s\" -> %r." % (text, parts))
- names = [name for name in parts[1].split() if len(name)] # all non-whitespace tokens
+ names = parts[1].split()
return cls(surname, *names)
def readable(self):
Field(DCNS('date'), 'created_at'),
Field(DCNS('date.pd'), 'released_to_public_domain_at', as_date, required=False),
- Field(DCNS('publisher'), 'publisher'),
+ Field(DCNS('publisher'), 'publisher', multiple=True),
Field(DCNS('language'), 'language'),
Field(DCNS('description'), 'description', required=False),