For automatic domain ontology development, then you should follow natural language processing techniques to define the concepts of your ontology and also to find resources and relationship between those resources etc, it is a tedious task.
An ontology, e.g. encoded in OWL, can be perceived as a graph, whose nodes are classes, restrictions, individuals and literals, whereas edges are attributed with object or datatype properties or are taxonomic relations.
Obviously, any graph can be generated with graph grammar rules, e.g. single pushouts, double pushouts, see http://en.wikipedia.org/wiki/Graph_rewriting.
However, such mechanical generation would never result in a domain ontology. It would be just a random graph with random names of classes and properties.
If you take as input a domain ontology constituting a TBox, i.e. classes, restrictions and properties, you may generate a model (ABox) consistent with it being. a set of individuals and literals linked by relations. This can be done in quite a strightforward way.
Generating TBox is much harder, you should pull in actual knowledge into the ontology, e,g, from text documents. It is no longer a generation task, rather a relationship mining. As stated Saravana Balaji B, this requires employing NLP techniques: looking for concept candidates (nouns followed by adjectives) and relation candidates (verbs).
As u said relationships can be found using NLP techniques. For example manager is a person, relationship between address and contact, relationship between arrival and From/To etc, how do we find relationship among these using NLP.
I'm so glad by your answer, thanks a lot. What you have proposed to me is what I want to do. So I'm following the work of the article shared in my first question where they have fixed a lot of parameters. But I don't know how to check the consistency of the generated Ontology. As same as you said at points 2,3 and 4 of your algorithm but not only for double inheritance of objects, also for ObjectDataType and DataTypeProperties and other things that I found difficulties to define it.