Interface definition language for the web