Schema matching is important as a prerequisite to the transformation of XML documents with different schemas. This paper presents a schema matching algorithm based on a dynamic ontology. The proposed algorithm consists of two steps: preliminary matching relationships between leaf nodes in the two schemas are computed based on the ontology and a proposed leaf node similarity, and final matchings are extracted based on a proposed path similarity. Particularly, unlike static ontologies of previous works, the proposed ontology is updated by user feedback for a sophisticated schema matching. Furthermore, since the ontology can describe various relationships such as IsA or PartOf, the method can compute not only simple matchings but also complex matchings. Experimental results with various XML schemas show that the proposed method is superior to previous works.