The use of description logics (DLs) ontologies to provide a formal and general-purpose conceptual model of a domain of interest has become a popular choice due to the increasing need to add a semantic dimension to information processing. In that context, ontologies constitute an ideal tool to provide a conceptualization of the domain of interest in areas such as Enterprise Application Integration, Data Integration, and the Semantic Web. Nevertheless, conceptual models are still usually designed in some class-based language such as UML diagrams or ER schemata because of their intuitive and user-friendly interface. The downside of using graphical languages is, however, the lack of formal semantics. Formalizing the semantics of conceptual modeling languages in DLs has the advantage of keeping the graphic interface for modeling, while providing reasoning capabilities that aid to verify the quality of the conceptual models, as well as for performing reasoning, that is, to infer implicit knowledge from the explicitly represented one. Indeed, those reasoning capabilities can not only be used to infer subsumption relationships between classes in a conceptual model or to verify the consistency of the model itself, but also to provide a formalization for incomplete databases. In the latter context, DLs TBoxes can be understood as database schema languages, ABoxes as a representation of the (incomplete) data, and query answering as the main reasoning service. Unfortunately, the semantic desiderata in the mentioned applications are not fully matched on the DLs side. In particular, the common assumption in database applications is that the intended models (i.e., database instances) are finite. However, this is by no means the usual assumption in DLs mainly because traditional DL languages have the finite model property (FMP). Languages supporting expressive constraints, on the other hand, lack the FMP. This means that using description logics for reasoning in the latter applications amounts to perform finite model reasoning. This task, however, has been shown to be difficult from the algorithmic view point. One of the main objectives of this thesis is to investigate finite model reasoning in DLs. Our results concern the so-called Horn DLs, which are known for having good model theoretical properties, and although they are not able to express disjunction (covering constraints), they have still enough expressive power to capture interesting modeling constraints, such as isa relationships between classes and relations, and disjointness. Besides standard reasoning tasks (subsumption, satisfiability), we also investigate ontological query answering under the finite model assumption. The second objective of this thesis is to investigate the impact of extending positive existential queries with negation on the computational complexity of ontological query answering over Horn ontologies. The importance of considering negation stems from the need of many natural queries to express difference or complementation to retrieve the required information. A well-known fact from database theory is that answering queries with negation is harder than without it, we will then focus on queries allowing for the use of negative atoms in restricted forms: the so-called safe and guarded negation as well as inequalities.