From jdo-dev-return-8098-apmail-db-jdo-dev-archive=www.apache.org@db.apache.org Fri May 08 13:57:47 2009 Return-Path: Delivered-To: apmail-db-jdo-dev-archive@www.apache.org Received: (qmail 67652 invoked from network); 8 May 2009 13:57:47 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 8 May 2009 13:57:47 -0000 Received: (qmail 15026 invoked by uid 500); 8 May 2009 13:57:47 -0000 Mailing-List: contact jdo-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: jdo-dev@db.apache.org Delivered-To: mailing list jdo-dev@db.apache.org Received: (qmail 15016 invoked by uid 99); 8 May 2009 13:57:47 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 08 May 2009 13:57:47 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of joerg.von.frantzius@artnology.com designates 80.67.31.36 as permitted sender) Received: from [80.67.31.36] (HELO smtprelay02.ispgateway.de) (80.67.31.36) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 08 May 2009 13:57:36 +0000 Received: from [80.153.219.11] (helo=[192.168.100.31]) by smtprelay02.ispgateway.de with esmtpa (Exim 4.68) (envelope-from ) id 1M2QZe-0006sD-1H for jdo-dev@db.apache.org; Fri, 08 May 2009 15:57:15 +0200 Message-ID: <4A043A39.7040500@artnology.com> Date: Fri, 08 May 2009 15:57:13 +0200 From: Joerg von Frantzius User-Agent: Thunderbird 2.0.0.19 (X11/20081227) MIME-Version: 1.0 To: jdo-dev@db.apache.org Subject: Re: Detecting inconsistencies of mapped-by declarations? References: <4A030E12.3070505@artnology.com> <4A032503.2090309@artnology.com> <4A042CCF.7070700@artnology.com> <200905081425.51775.andy@datanucleus.org> In-Reply-To: <200905081425.51775.andy@datanucleus.org> X-Enigmail-Version: 0.95.7 Content-Type: multipart/mixed; boundary="------------090802030405090103070708" X-Df-Sender: 383542 X-Virus-Checked: Checked by ClamAV on apache.org --------------090802030405090103070708 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 8bit Andy Jefferson wrote: >> Needless to say that supporting this rare corner case would make the >> implementation much more complex, in particular with respect to >> bidirectional management. >> >> Maybe we could rule out the use of mapped-by in this case? >> > > -1 > > Just because you don't have need for that case is no reason to prohibit it. > Heck, the JPA crowd were calling Collection as "exotic" and "corner > case" some time back. Nice. Also, JDO is for all datastores not just RDBMS, > and while you may just use RDBMS, there are many other datastores where this > is very reasonable. > The whole point of persistence specification is to capture requirements and > cater for what people want, not to prohibit when something seems difficult. > I only tried to argue from a point of view of what I'd find sane object modeling. Some say the UML2 is over-complex in trying to cover everything, but not even the UML2 covers this, nor does e.g. the Eclipse Modeling Framework. What you have here is either two associations sharing one end, or a single association connecting more than two classes (without it being n-ary). Whichever way you see it, that's not an association anymore, at least not from an OOA/D perspective. Sticking to agreed OOA/D concepts certainly does have its merits, be it the concept of the "association" or that of "genericity" ;) -- ____________________________________________________________________ artnology GmbH - Milastraße 4 - 10437 Berlin - Germany Geschäftsführer: Ekkehard Blome (CEO), Felix Kuschnick (CCO) Registergericht: Amtsgericht Berlin Charlottenburg HRB 76376 UST-Id. DE 217652550 --------------090802030405090103070708--