  Description Logic Programs (dl-programs) proposed by Eiter et al. constitute
an elegant yet powerful formalism for the integration of answer set programming
with description logics, for the Semantic Web. In this paper, we generalize the
notions of completion and loop formulas of logic programs to description logic
programs and show that the answer sets of a dl-program can be precisely
captured by the models of its completion and loop formulas. Furthermore, we
propose a new, alternative semantics for dl-programs, called the {\em canonical
answer set semantics}, which is defined by the models of completion that
satisfy what are called canonical loop formulas. A desirable property of
canonical answer sets is that they are free of circular justifications. Some
properties of canonical answer sets are also explored.
