Constructing Complex Semantic Mappings between XML Data and Ontologies