People sometimes misunderstand each other, even when they use the same language to communicate. Often these misunderstandings happen when people use the same words to mean different things, in effect disagreeing about meanings. This thesis investigates such disagreements about meaning, considering them to be issues of semantic interoperability. This thesis explores semantic interoperability via a particular formal framework used to specify people’s conceptualizations of a given domain. This framework is called an ‘ontology,’ which is a collection of data and axioms written in a logical language equipped with a modeltheoretic semantics. The domain under consideration is the geospatial domain. Specifically, this thesis investigates to what extent two geospatial ontologies are semantically interoperable when they ‘agree’ on the meanings of certain basic terms and statements, but ‘disagree’ on others. This thesis defines five levels of semantic interoperability that can exist between two ontologies. Each of these levels is, in turn, defined in terms of six ‘compatibility conditions,’ which precisely describe how the results of queries to one ontology are compatible with the results of queries to another ontology. Using certain assumptions of finiteness, the semantics of each ontology is captured by a finite number of models, each of which is also finite. The set of all models of a given ontology is called its model class. The five levels of semantic interoperability are proven to correspond exactly to five particular relationships between the model classes of the ontologies. The exact level of semantic interoperability between ontologies can in some cases be computed; in other cases a heuristic can be used to narrow the possible levels of semantic interoperability. The main results are: (1) definitions of five levels of semantic interoperability based on six compatibility conditions; (2) proofs of the correspondence between levels of semantic interoperability and the model-class relation between two ontologies; and (3) a method for computing, given certain assumptions of finiteness, the exact level of semantic interoperability between two ontologies. These results define precisely, in terms of models and queries, the often poorly defined notion of semantic interoperability, thus providing a touchstone for clear definitions of semantic interoperability elsewhere