У меня есть данные XML, извлеченные из устаревшего приложения Lotus Notes. XML имеет встроенные двоичные данные. Я предполагаю, основываясь на информации на веб-сайте IBM Lotus Notes, что он закодирован в формате base64, но я не уверен в этом. Некоторые двоичные данные выглядят как изображения, в то время как некоторые из них, как представляется, являются встроенными документами MS Word. Я использую Saxon XSLT-процессор. Как я могу декодировать эти двоичные данные с помощью XSLT?Как декодировать двоичные данные, встроенные в XML, используя XSLT?
Данные выглядит примерно так:
<objectref version='2' name='EXT12682' class='Word.Document.8'
displayformat='metafile' description='Microsoft Word Document' classid='{00020906-0000-0000-c000-000000000046}'
storageformat='structstorage'><picture height='289px' width='625px' scaledheight='3.0104in'
scaledwidth='6.5104in'><notesbitmap>illegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygook</notesbitmap></picture></objectref>
<file hosttype='bytearraypage'
compression='none' flags='storedindoc' name='STG12172'>
<created><datetime dst='true'>20080924T171730,05-04</datetime></created>
<modified><datetime dst='true'>20080924T171730,05-04</datetime></modified><filedata>illegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygookillegiblegobbledygook</filedata></file>
Коммерческие издания Saxon имеют определенную поддержку для обработки данных с кодировкой base64, см. функции 'base64Binary-to-string/octets', документированные на http://saxonica.com/html/documentation/ функции/саксонской /. Существует также http://saxonica.com/html/documentation/functions/expath%2Dbinary/ модуль. –
Спасибо за информацию ... Похоже, мне еще нужен дополнительный шаг, чтобы просмотреть результат как изображение или документ Word. – b00kgrrl