The solution ended up being a bit of a hack. I used Platypus to make a small app out of a script that calls emacsclient
on the path part of the URI. The benefit of Platypus is that I was able to register the app with an emacs
URI scheme handler. I updated my XSL to generate buttons that link to that URI scheme.