XML has emerged as a common standard for data exchange over the World Wide Web. One way to manage XML data is to use the power of relational databases for storing and querying them. So the hierarchical XML data should be mapped into flat relational structure. In this paper we propose an algorithm which maps DTD to relational schema and as well as content and structure it preserves the functional dependencies during the mapping process in order to produce relations with less redundancy. This is done by categorizing functional dependencies and introducing four rules to be applied to the relations created by the hybrid inlining algorithm according to each category. These rules will reduce redundancies by moving attributes, creating relations, introducing keys and preserving functional dependencies.