We present a semantics and answer set programs for relational peer data exchange systems. When a peer answers a query, it exchanges data with other peers in order to supplement or modify its own data source. The data exchange relationships between peers are specified by logical sentences called data exchange constraints and trust relationships, which together determine how data is moved around (in order to keep them satisfied). This process determines virtual, alternative instances for a peer that can be specified as the models of an answer set program. The peer consistent answers to a query that are returned by a peer are those that are invariant under all these instances. The logic program can be used to compute peer consistent answers.