I have written scripts for loading .jmax files and writing .pd files; they use gridflow's internal object model (GridFlow::FObject) as an intermediate representation.
The .jmax loader itself is a nice little ~140 line program. The .pd saver is ~80 lines but much less complete.
http://www.artengine.ca/cgi-bin/cvsweb.cgi/~checkout~/extra/jmax_format.rb?rev=1.3&content-type=text/plain
http://www.artengine.ca/cgi-bin/cvsweb.cgi/~checkout~/extra/puredata_format.rb?rev=1.2&content-type=text/plain
The following (hello-world.pd) is the first jMax patch I converted with my program. I'm still trying to convert other, more difficult patches ;-) (this patch requires GridFlow)
http://www.artengine.ca/cgi-bin/cvsweb.cgi/~checkout~/pd_examples/hello-world.pd?rev=1.1&content-type=text/plain
Mathieu Bouchard http://artengine.ca/matju