One thing to think about when inventing your domain specific language: what general sort of syntax do you want? Here are some options:
Metalanguages - But notice that if your business is to make tools working in a particular domain, then the DSL you want in order to generate or configure those tools is probably a meta-level above the target domain. For instance, if you write Geographical Information Systems, then your end-users will be working a lot with maps; but what you want is to be able to define operations on the maps and whatever's shown on them. So you might find some variant of SQL to be what you need.
Aspects - Secondly, your ideal DSL will probably include more than one sort of syntax. E.g. entity-relational diagrams to define the classes of thing you're working with, and sequence diagrams to tell what to do with them. Tools should make it easy to cross-link between them.