In order to satisfy the demand of fast change of GUI (graph user interface) raised by application software, a GUI generator is designed based on XML and XSD (XML schema description language). It is supported by paring and persistent algorithms based on the idea of depth recursion and width recursion. The generator is composed of a GUI designer and a GUI parser. Semantics of both layout and data model are supported, including the hierarchy style and data models of group, union and enumerator. Finally, an example of router of some network intrusion detecting system is shown, in which GUI can be generated in Java and C# languages, and the semantic validity of input data can be checked also.