Пользовательские метаданные (UUID) на уровне абзаца / текста в docx

Вкратце: я ищу способ связать (известный) UUID с абзацем и / или запуском текста.

Я использую dolanmiu / docxjs для экспорта docx и расширяю Paragraph и TextRuns, чтобы добавить свои собственные метаданные (uuids) при экспорте. И пусть они остаются в docx после сохранения в MS Word, Google Docs, LibreOffice.

У меня есть контроль над экспортированным xml, а при импорте конвертирую docx в xml для синтаксического анализа. Но я могу контролировать, какой редактор использовать между экспортом и импортом для редактирования docx.

Я пробовал настраиваемые / произвольные метаданные на уровне абзаца / текста. А также пользовательские типы узлов, но все они, кажется, удаляются при сохранении.

Решение не обязательно должно быть встроено в document.xml, так как я видел несколько статей о том, что отдельный custom.xml данных должен быть частью docx, но я не уверен, как связать TextRun с ним. uuid в отдельном файле (особенно с учетом синтаксиса в document.xml).

Я наткнулся на эту ссылку: Возможно ли добавить данные в документ Word?, но, похоже, это метаданные на уровне документа, а не более детализированные для узлов абзаца / текста.

Вещи, которые я пробовал:

  • попытался добавить произвольное произвольное пространство имен (возможно, сделал это неправильно), удаленное при сохранении
  • попытался добавить настраиваемые узлы: раздели
  • попытался добавить настраиваемые атрибуты: лишился
  • попытался использовать bookmarkStart / bookmarkEnd: некоторые разделили, некоторые переместили, некоторые не разрешили текст между началом и концом, некоторые изменили идентификатор (который я использовал в качестве значения uuid)
  • попробовал настроить OOXML, но он был удален: http://ooxmlisdefectivebydesign.blogspot.com/2008/03/custom-xml-what-custom-xml.html https://c-rex.net/projects/samples/ooxml/e1/Part4/OOXML_P4_DOCX_Custom_topic_ID0E3FBS.html

Есть ли способ добавить эти настраиваемые метаданные на уровне абзаца / текста в docx, которые не будут удалены при редактировании и сохранении текстовым процессором?


person theProf    schedule 03.12.2020    source источник