RDF metadata XML

Thorsten Behrens thb at libreoffice.org
Wed Aug 26 10:17:19 UTC 2020


Hi Rosemarie,

interesting initiative, some comments inline -

Rosemarie Haberecht wrote:
> Requirements for Libre-Office are:
> - internal RDF Metadata tag logic/visualization in layout
>
Yep, that's missing sadly - Dennis already referenced tdf#30709,
though perhaps would be good to specify a bit more what kind of UI you
actually need here (if you have mockups like for the other
features?). Depending on whether that's what the submitter of
tdf#30709 meant, those UX mockups/examples can go to that enhancement
task, or rather need a new bug report.

> - a status bar, a task pane and a customized menu, as well as key
>   combinations
>
Ilmari answered that - reasonably straight-forward to implement that
as part of a LibreOffice extension (who can additionally
customise/modify UI).

> - a status bar: arranging buttons
>   https://mobileguides.de/downloads/libreOffice/Statusbar.png
>
Can't easily tweak the existing status bar, but if adding an extra
statusbar (essentially just a toolbar by all intends and purposes)
would cut it - that's also quickly doable.

> - a task pane: arranging GUI for the visualization of additional attributes
>   for a metadata object
>   https://mobileguides.de/downloads/libreOffice/Taskpane.png
>
LibreOffice supports extending the sidebar panel from Extension code,
you have comparatively large screen real estate there, and the stuff
can be context-sensitive. If you need pointers how to implement custom
sidebar content, let us know.

One rather complex example of what's doable is the WollMux extension,
code is here: https://github.com/WollMux/wollmux-core

> - customized menus for quick functions
>
See above, that's easily doable.

> - Key combinations for ingest and tagging functions
> 
Same.

> Now we ask ourselves the question which parts of the requirement can be done
> where?
> 
> Kernel - visualization of the tags, interface to access the metadata
> objects
>
Yeah, let's call it core - that's indeed changes that need doing
inside Writer c++ code. RDF metadata API is already available though.

> Plugin - Taskpane extension?
> Extension - Addon when is what used, is it the same?
> Macros - Basic internal macro functions controllable via menu
> 
The above would be subsumed under one or more LibreOffice extensions
(see link from Ilmari for how to get started there).

Implementation language is certainly a matter of taste & personal
preference; from a tech stack perspective, Basic is probably the worst
possible choice though - not the least because there's very little
support libraries available.

Personally, I would use either Java or Python for extension - they're
both cross-platform, have a vast ecosystem of tools & libraries, and
feature 1st-level support in LibreOffice. Python has the slight upside in
that it's built-in for _every_ LibreOffice installation; for Java, an
additional JRE install is usually required.

Hope that helps, all the best,

-- Thorsten
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 1032 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20200826/89f5dfae/attachment.sig>


More information about the LibreOffice mailing list