kind, genre, epoch not required
authorRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Thu, 19 Jan 2012 14:56:10 +0000 (15:56 +0100)
committerRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Thu, 19 Jan 2012 14:56:10 +0000 (15:56 +0100)
librarian/dcparser.py
scripts/book2html

index a0eaa04..f64317a 100644 (file)
@@ -347,9 +347,12 @@ class BookInfo(WorkInfo):
         Field( DCNS('audience'), 'audiences', salias='audience', multiple=True,
                 required=False),
 
-        Field( DCNS('subject.period'), 'epochs', salias='epoch', multiple=True),
-        Field( DCNS('subject.type'), 'kinds', salias='kind', multiple=True),
-        Field( DCNS('subject.genre'), 'genres', salias='genre', multiple=True),
+        Field( DCNS('subject.period'), 'epochs', salias='epoch', multiple=True,
+                required=False),
+        Field( DCNS('subject.type'), 'kinds', salias='kind', multiple=True,
+                required=False),
+        Field( DCNS('subject.genre'), 'genres', salias='genre', multiple=True,
+                required=False),
                 
         Field( DCNS('contributor.translator'), 'translators', \
             as_person,  salias='translator', multiple=True, default=[]),
@@ -358,9 +361,9 @@ class BookInfo(WorkInfo):
         Field( DCNS('relation.isVariantOf'), 'variant_of', 
             WLURI, strict=as_wluri_strict, required=False),
 
-        Field( DCNS('relation.cover_image.url'), 'cover_url', required=False),
-        Field( DCNS('relation.cover_image.attribution'), 'cover_by', required=False),
-        Field( DCNS('relation.cover_image.source'), 'cover_source', required=False),
+        Field( DCNS('relation.coverImage.url'), 'cover_url', required=False),
+        Field( DCNS('relation.coverImage.attribution'), 'cover_by', required=False),
+        Field( DCNS('relation.coverImage.source'), 'cover_source', required=False),
     )
 
 
index 1e88823..8adeb38 100755 (executable)
@@ -22,6 +22,8 @@ if __name__ == '__main__':
         help='print status messages to stdout')
     parser.add_option('-i', '--ignore-dublin-core', action='store_false', dest='parse_dublincore', default=True,
         help='don\'t try to parse dublin core metadata')
+    parser.add_option('-r', '--raw', action='store_false', dest='full_page', default=True,
+        help='outpu raw text for use in templates')
 
     options, input_filenames = parser.parse_args()
 
@@ -38,7 +40,8 @@ if __name__ == '__main__':
         try:
             doc = WLDocument.from_file(input_filename,
                 parse_dublincore=options.parse_dublincore)
-            html = doc.as_html(flags=('full-page',))
+            flags = ('full-page',) if options.full_page else None
+            html = doc.as_html(flags=flags)
             doc.save_output_file(html, output_path=output_filename)
         except ParseError, e:
             print '%(file)s:%(name)s:%(message)s' % {