fnp
/
librarian.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixes for edge cases
[librarian.git]
/
src
/
librarian
/
dcparser.py
diff --git
a/src/librarian/dcparser.py
b/src/librarian/dcparser.py
index
7a11788
..
2edba6c
100644
(file)
--- a/
src/librarian/dcparser.py
+++ b/
src/librarian/dcparser.py
@@
-15,14
+15,13
@@
import lxml.etree as etree
from lxml.etree import XMLSyntaxError
from librarian.meta.types.bool import BoolValue
from lxml.etree import XMLSyntaxError
from librarian.meta.types.bool import BoolValue
-from librarian.meta.types.date import DateValue
from librarian.meta.types.person import Person
from librarian.meta.types.wluri import WLURI
from librarian.meta.types.person import Person
from librarian.meta.types.wluri import WLURI
-from librarian.meta.types
.text import TextValue
+from librarian.meta.types
import text
class Field(object):
class Field(object):
- def __init__(self, uri, attr_name, value_type=TextValue,
+ def __init__(self, uri, attr_name, value_type=
text.
TextValue,
multiple=False, salias=None, **kwargs):
self.uri = uri
self.name = attr_name
multiple=False, salias=None, **kwargs):
self.uri = uri
self.name = attr_name
@@
-121,7
+120,7
@@
class WorkInfo(six.with_metaclass(DCInfo, object)):
Field(DCNS('contributor.thanks'), 'thanks', required=False),
Field(DCNS('date'), 'created_at'),
Field(DCNS('contributor.thanks'), 'thanks', required=False),
Field(DCNS('date'), 'created_at'),
- Field(DCNS('date.pd'), 'released_to_public_domain_at',
DateValue,
+ Field(DCNS('date.pd'), 'released_to_public_domain_at',
required=False),
Field(DCNS('publisher'), 'publisher', multiple=True),
required=False),
Field(DCNS('publisher'), 'publisher', multiple=True),
@@
-353,17
+352,17
@@
class WorkInfo(six.with_metaclass(DCInfo, object)):
class BookInfo(WorkInfo):
FIELDS = (
class BookInfo(WorkInfo):
FIELDS = (
- Field(DCNS('audience'), 'audiences', salias='audience', multiple=True,
+ Field(DCNS('audience'), 'audiences',
text.Audience,
salias='audience', multiple=True,
required=False),
required=False),
- Field(DCNS('subject.period'), 'epochs', salias='epoch', multiple=True,
+ Field(DCNS('subject.period'), 'epochs',
text.Epoch,
salias='epoch', multiple=True,
required=False),
required=False),
- Field(DCNS('subject.type'), 'kinds', salias='kind', multiple=True,
+ Field(DCNS('subject.type'), 'kinds',
text.Kind,
salias='kind', multiple=True,
required=False),
required=False),
- Field(DCNS('subject.genre'), 'genres', salias='genre', multiple=True,
+ Field(DCNS('subject.genre'), 'genres',
text.Genre,
salias='genre', multiple=True,
required=False),
required=False),
- Field(WLNS('category.legimi'), 'legimi', required=False),
-
+ Field(WLNS('category.legimi'), 'legimi',
text.LegimiCategory,
required=False),
+ Field(WLNS('category.thema'), 'thema', text.ThemaCategory, required=False, multiple=True),
Field(DCNS('subject.location'), 'location', required=False),
Field(DCNS('contributor.translator'), 'translators',
Field(DCNS('subject.location'), 'location', required=False),
Field(DCNS('contributor.translator'), 'translators',