diff --git a/src/filters/rclsoff-flat.py b/src/filters/rclsoff-flat.py
index 4971e524..471979f2 100755
--- a/src/filters/rclsoff-flat.py
+++ b/src/filters/rclsoff-flat.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
-# Copyright (C) 2014 J.F.Dockes
+# Copyright (C) 2014-2018 J.F.Dockes
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -16,15 +16,11 @@
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
######################################
-from __future__ import print_function
-
import sys
import rclexecm
-import rclxslt
-from zipfile import ZipFile
-from rclbasehandler import RclBaseHandler
+import rclgenxslt
-stylesheet_meta = '''
+stylesheet = '''
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
- exclude-result-prefixes="office xlink meta ooo dc"
+ xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
+ exclude-result-prefixes="office xlink meta ooo dc text"
>
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
- abstract
-
-
-
-
-
-
-
-
-
- keywords
-
-
-
-
-
-
-
-
-
- author
-
-
-
-
-
-
-
-
-
- keywords
-
-
-
-
-
-
-
-
-'''
-
-stylesheet_content = '''
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
+
-
-
-
-
+
+
+ abstract
+
+
+
+
+
+
-
-
-
+
+
+ keywords
+
+
+
+
+
+
-
-
-
+
+
+ author
+
+
+
+
+
+
-
-
-
+
+
+ keywords
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
'''
-class OOExtractor(RclBaseHandler):
- def __init__(self, em):
- super(OOExtractor, self).__init__(em)
-
- def html_text(self, fn):
- f = open(fn, 'rb')
- data = f.read()
- f.close()
-
- docdata = b'\n
\n\n'
-
- try:
- res = rclxslt.apply_sheet_data(stylesheet_meta, data)
- docdata += res
- except:
- # To be checked. I'm under the impression that I get this when
- # nothing matches?
- #self.em.rclog("no/bad metadata in %s" % fn)
- pass
-
- docdata += b''
-
- res = rclxslt.apply_sheet_data(stylesheet_content, data)
- docdata += res
- docdata += b''
-
- return docdata
-
-
if __name__ == '__main__':
proto = rclexecm.RclExecM()
- extract = OOExtractor(proto)
+ extract = rclgenxslt.XSLTExtractor(proto, stylesheet)
rclexecm.main(proto, extract)