SVG to bypass GraphViz and Cytoscape

I am trying to elaborate whether SVG is only a hacker tool,
or maybe it has some serious applications that could give
Prolog an additional exciting visual “voice”.

Especially since all chat bots I have encountered in recent
days offer me some SVG generation. What would you use
in Prolog to generate directly from within SWI-WASM

the following browser display. There should be also an option
to output into a file, with the same “logic” that generates
for SWI-WASM. Input a category hierarchy:

Example Input:

- variable
    - marked
      - natively generated
      - named singleton
    - unmarked 

Output a Diagram. The Diagram is CSS animated, best seen if you
open the graphic in a separate tab, you can then reload the page
to see the animation multiple times:

Example Output:
venn

The above SVG was crafted by DeepSeek after like 5 prompts.