Charles, thanks.
ah, i apologize -- i missed the elisp content of your earlier message. yes, that, at least for this simple case, does exactly what i was looking for! i guess when i used the term "recursive execute function" (i tend to confuse "execute" and "export"), i was thinking of something like: when i export an org file, and it runs into an org-in-org block to export, then your code runs on that block. the recursive part is that, when your code is runninng on the org-in-org block, and runs into an "org-in-org-in-org" block (that is also marked to export), it runs on *that*. ad, but not normally infinitum. again, thanks, and i'm sorry for missing your elisp code. cheers, Greg