public CouchDBAssociationSnapshot(CouchDBAssociation association, AssociationKey key) {
this.couchDbAssociation = association;
this.key = key;
for ( Map<String, Object> row : association.getRows() ) {
RowKey rowKey = new RowKeyBuilder()
.tableName( key.getTable() )
.addColumns( key.getRowKeyColumnNames() )
.values( getRowKeyColumnValues( row, key ) )
.build();