The makeBibliography() method accepts filtering conditions, so as far
as citeproc-js is concerned, you can output the bibliography in three
separate segments. As far as I know, no clients yet support this
feature, though, so unless you are running citeproc-js independently,
clients will produce only a single bibliography, with items in the
order you get from a Unicode sort on the relevant keys.
If you are running in Zotero, and your style does not apply year-
suffix disambiguation, the least burdensome workaround is to set up a
collection for each language, drop the relevant items into each
collection, and then select all within each, generate a bibliography
in Zotero, and paste the result into the document.
In Zotero, at least, Implementing partitioned bibliography support
will require changes in both the word processor plugins and in Zotero
itself. With the extensive changes happening to implement Zotero
Everywhere, it will surely be awhile before anything happens on this
front. The window for implementation is probably a year or so down the
road. Meanwhile, if you're interested in taking a look at the
processor filitering mechanism, it's documented here:
http://gsl-nagoya-u.net/http/pub/citeproc-doc.html#selective-output
Frank