GeoServer sld svg support

Hi. we are running GeoServer 2.24.0 and having problems displaying svg symbology within a point style: Syntax is valid. The image is displayed as a grey square. Similar support queries have needed to edit the svg file and replace ellipses with circles, but I think all tools I have tried must produce ellipses, or there is some other issue.

The svg symbols created all appear correctly when opened in chrome and inkscape.

Replacing the svg reference with equivalent png image works fine. Is there an issue with the version of svg supported? In note the docs reference SVG 1.0 (W3C recommendation 2001), but newer versions have been available for a very long time - SVG 1.1 (W3C recommendation 2003) & SVG 2.0 was available as a draft in 2018.

The sld code snippet is:

        <Graphic>
          <ExternalGraphic>
            <OnlineResource xlink:type="simple" xlink:href="img/cross_section.svg"/>
            <Format>image/svg+xml</Format>
          </ExternalGraphic>

Thanks for any assistance provided.

The library we use for SVG is Apache(tm) Batik SVG Toolkit - a Java-based toolkit for applications or applets that want to use images in the Scalable Vector Graphics (SVG)
It looks like we use version 1.17, which is the latest release. Perhaps if you read on that website you can determine what version and features of SVG are supported?

I have had success with very simple SVG graphics drawn in tools like sketch, Inkscape and others.

aside: A graphic can be defined in order of preference: external graphic: svg > external graphic: png :mark: circle. Although the approach is not used often it does make your style more portable