uses hyphenated IDs in all server code