Open VladimirAlexiev opened 3 months ago
I have sometimes found a need to add very specific commands to the output of rdfpuml, and did this with a hack: arguments "addtext" and "addtextend" to the org-babel block rdfpumlblock
. I need to look for some examples, otherwise I guess this will not make a lot of sense .. this is just to mention that there may be a need in some cases to add explicit plantuml statements.
rdfpuml
features:prologue
and I guess :epilogue
as shown in https://github.com/johanwk/elot/issues/6#issuecomment-1976191761 ?rdfpuml
instructions (triples in the puml:
namespace), when these need to be shared between code blocks (models), I've been putting them in prefixes.ttl
or a separate puml.ttl
that is prepended.I'll be more than happy to give the details of the hacks I needed to get IDO diagrams right!
Maybe the most important is to not inline some cases of rdf:type, for cases where I want to draw attention to "this individual is a member of this class and that class".
:prologue
and :epilogue
aren't suitable for these cases, since (as I've found) the hacks require addition to the puml code, which is only available after rdfpuml has done its job, and I don't usually want to have puml blocks in the document.
If we have time tomorrow, we can look at the rdfpuml-block
code block in elot-lob
, which I think will make it easy to see what I've been up to. I have parameters for adding to the start of the puml code, and at the end (iirc, adding to the end is for overriding defaults).
For rdfpuml configuration, there's an org-babel block rdfpuml-config
in elot-lob
where the settings for coloured circles, etc. is written. There's some variant configs as well.
Ok @johanwk , that's https://github.com/VladimirAlexiev/rdf2rml/issues/14 and I'll try to do it in the next few days. Fixing it in the puml is way too hard (or as we say "dentistry through the ass": no wonder Bulgarians used it be called Vulgars in historic times :-)
rdfpuml can already tweak arrow direction, length and appearance; and node stereotypes. Eg here's an example from a Crunchbase model. I keep it in a separate
puml.ttl
that I concat to the real model.