Is GXL file format supported?

The 2014 “Using Graphviz as a Library” by Emden R. Gansner mentions GXL (Graph eXchange Language) output format. But when I run DOT it rejects it as not one of the supported file formats.

Has it been dropped?

I also see PSD (Adobe Photoshop) is not in the list of formats. Pity.

I don’t know, but we have:

Thanks. I would need it as a linkable library.

I think we never supported GXL as an output format. From the document:

Various graph drawing and manipulation packages either use GXL or GML as their main graph language, or provide a translator. In this, Graphviz is no different. We supply the programs gv2gxl, gxl2gv,gv2gml and gml2gv for converting between the DOT and these formats. Thus, if an application is XMLbased, to use the Graphviz tools, it needs to insert these filters as appropriate between its I/O and the Graphviz layout programs.

(my highligthing)

You’re right. I should have read the document more closely. It’s not a problem, I’m not familiar with any apps that use GXL, it just sounded like an industry standard. If necessary, I can probably crank out GXL directly from my app.

I think you’re the first person we’ve heard talk about GXL in a long time. I’m curious what your use case is?

Photoshop PSD is in the list of formats:
https://graphviz.org/docs/outputs/psd/

I’m not familiar with GXL, but it sounded like a popular format, there’s a long list of impressive organizations involved. My program is used by others, and I want to provide them with maximum flexibility as to what they do with the output.

It’s funny, if you click on the link for the GXL website, it goes to a German university, and you need special authorization to access. Not encouraging.

If I do:

dot -Tpsd

I get an error:

Format: "psd" not recognized. Use one of: bmp canon cmap cmapx cmapx_np dot dot_json emf emfplus eps fig gd gd2 gif gv imap imap_np ismap jpe jpeg jpg json json0 kitty kittyz metafile pdf pic plain plain-ext png pov ps ps2 svg svg_inline svgz tif tiff tk vrml vt vt-24bit vt-4up vt-6up vt-8up wbmp webp xdot xdot1.2 xdot1.4 xdot_json

Hmm, looking at the code, PSD might only be available on macOS via Quartz:

Quartz is apple’s graphics layer: https://en.wikipedia.org/wiki/Quartz_(graphics_layer)

OK, I understand. It’s not a big deal, it’s probably beyond the scope of most of my users. It would be cool, though.

I will be able to map Graphviz’ X/Y coordinates onto my internal structures, and use my own logic to preview the chart. That is really cool.

  • GXL seems to be one of several (dead) graphics “standards” that were created back when SGML and HTML were new and shiny; pdf was locked-up tight; and SVG was a standard that had no useful implementations
  • PSD (photoshop) seems to be a multi-layer, raster (bitmapped) format (I prefer vector file formats like SVG)
  • gimp and imagemagick seem to be able to convert other formats to PSD
    • not sure if this can be done at library level
    • not sure if PSD layers can be supported
    • note that Graphviz does support layers at a high level (see FAQ | Graphviz)

Driving Graphviz from another system:
Graphviz can explicitly position nodes, edges, and labels based on pos input values (see FAQ | Graphviz)

I thought PSD was the native Adobe Photoshop project file format, containing all the information to edit a drawing. This would enable a user to output a graph with Graphviz, then further modify it or incorporate other elements with Photoshop.

Adobe PSD files

[note: I am not an expert regarding Photoshop or PSD or PSB files]
I think we are pretty much in agreement: