query.descend("mRater").constrain(rater).identity();
query.descend("mMessage").constrain(message).identity();
final InitializingObjectSet<WoTMessageRating> result = new Persistent.InitializingObjectSet<WoTMessageRating>(mFreetalk, query);
switch(result.size()) {
case 0: throw new NoSuchMessageRatingException();
case 1: return result.next();
default: throw new DuplicateElementException("Duplicate rating from " + rater + " of " + message);
}
}