Domain Engineering is an engineering discipline concerned with building reusable assets, such as specification sets, patterns, and components, in specific domains. A domain in this context can be defined as an area of knowledge that uses common concepts for describing phenomena, requirements, problems, capabilities, and solutions. The purpose of domain engineering is to identify, model, construct, catalog,and disseminate artifacts that represent the commonalities and differences within a domain. Although being applicable to different engineering disciplines, domain engineering methods and domain specific languages (DSL) receive nowadays special attention from the information systems and software engineering researchers and practitioners who deal with artifact reuse, application validation, and domain knowledge representation. In particular, these topics are of interest in the areas of software product line engineering and ontology engineering. One of the reasons for this interest is the increasing variability of information and software systems and the need to obtain and share expertise in different, evolving domains. [first paragragh]