Let consider a different approach. Take into account that Article and Reviewer are rather immutable data (you need adding new article but not to change existing), why break this nice feature. Consider several classes: Article { Key , {tags} .... next attribuites } Reviewer { Key, mail, ... next attributes } ArticleNotReviewedYet { Key articleKey } ArticleUnderReview { Key articleKey, Key reviewerKey, int reviewResult } ArticleReviewed {Key articleKey, int totalReviewResult }
This way if you want: - to know the status of the article : find article in the first table and find (by looking up the articleKey only) in what table (ArticleNotReviewed, ArticleUnderReview, ArticleReviewed) contains the articleKey - to add new article: add article to Article and entry to ArticleNotReviewed - to start review: remove article from ArticleNotReviewed and add an entry in ArticleUnderReview - to add next review result: add next entry to ArticleUnderReview - to end up review: remove all articleKey entries in ArticleUnderReview and create entry in ArticleReviewed Of course, it needs much more elaboration, but may be it is worth considering. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~----------~----~----~----~------~----~------~--~---