1. A method of operating a host computing device, the method comprising: communicatively coupling with a keyboard; querying the keyboard for a descriptor; receiving the descriptor from the keyboard, wherein the descriptor includes data representative of a language, layout, and key mappings for the keyboard; publishing a string accessible to the host indicating the language, layout and key mappings of the keyboard; and receiving input from the keyboard in accordance with the data from the descriptor.