Universities and other institutions related to education are investing time and resources in E-learning initiatives. This leads to an increasing number of course offers in E-learning format. There are environments, called Learning Management Systems (LMS), designed to help teachers in the management of their courses. Basically a LMS provides functionalities to manage student records, to facilitate communication between students and between students and teacher, to control accesses and produce statistics, schedules, evaluation and an open platform to help teachers make lecture content available online. However they do not dictate what kind of technology or format should be used to prepare those contents. Although this issue can be seen as an advantage in certain contexts it leads to a format anarchy and makes support for content production impossible. Here is where ADRIAN comes into the scene providing support for content production. ADRIAN is composed by several components: one component to help producing lessons and lab guided sessions; one component for the production of tests and exams; one component to support the production of multimedia presentations; and one component to generate interfaces that integrate all the material produced (content parts) by the other components or developed elsewhere by the teacher. The whole system is being developed with XML (eXtended Markup Language) using descriptive markup for content, and related technologies like XSL (eXtended Stylesheet Language) for content transformations. This way we ensure the portability and platform independence of the system. The last mentioned component, the integration component, is based on ontologies; the user is asked to define an ontology for his course. After that the system generates automatically the web interface that integrates all the courseware components. We start by describing the ADRIAN architecture (a more detailed description was published at M-ISCTE conference) and then we present the Tests and Exams Production application. The main idea behind Tests an Exams is that structure is not free. This ADRIAN’s component enforces a specific structure specified in an XML Schema. This is the way to achieve normalization in the content production. However to convince teachers to use we provide all the editing and transformation tools. The user only has to use an interface to introduce content. After that the system takes care of the electronic publishing: producing paper and web versions and in this case (tests and exams) managing the interaction between students solving the online exam and the system. In this paper we characterize the different kinds of exams and present the steps towards the XML Schema definition. Then we describe this application lifecycle and the implementation we have.