Maze+XML: A Domain-Specific DesignHow Maze+XML WorksLink RelationsFollow a Link to Change Application StateThe Collection of MazesIs Maze+XML an API?Client #1: The GameA Maze+XML ServerClient #2: The MapmakerClient #3: The BoasterClients Do the Job They Want to DoExtending a StandardThe Mapmaker’s FlawThe Fix (and the Flaw in the Fix)Maze as MetaphorMeeting the Semantic ChallengeWhere Are the Domain-Specific Designs?The Prize at the EndHypermedia in the HeadersSteal the Application SemanticsIf You Can’t Find a Domain-Specific Design, Don’t Make OneKinds of API ClientsHuman-Driven ClientsAutomated ClientsThe crawlerThe monitorThe scriptThe agent