Return-Path: Delivered-To: apmail-jackrabbit-users-archive@locus.apache.org Received: (qmail 46198 invoked from network); 2 Mar 2007 15:28:48 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 2 Mar 2007 15:28:48 -0000 Received: (qmail 25090 invoked by uid 500); 2 Mar 2007 15:28:56 -0000 Delivered-To: apmail-jackrabbit-users-archive@jackrabbit.apache.org Received: (qmail 25071 invoked by uid 500); 2 Mar 2007 15:28:56 -0000 Mailing-List: contact users-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@jackrabbit.apache.org Delivered-To: mailing list users@jackrabbit.apache.org Received: (qmail 25062 invoked by uid 99); 2 Mar 2007 15:28:56 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Mar 2007 07:28:56 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of waldemar.baraldi@globant.com designates 200.59.172.46 as permitted sender) Received: from [200.59.172.46] (HELO mail.globant.com) (200.59.172.46) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Mar 2007 07:28:44 -0800 Received: by mail.globant.com (Postfix, from userid 99) id 61F324374; Fri, 2 Mar 2007 12:21:46 -0300 (ART) Received: from wbaraldi (unknown [190.2.5.93]) by mail.globant.com (Postfix) with ESMTP id D52F33A8C for ; Fri, 2 Mar 2007 12:21:26 -0300 (ART) From: "Waldemar Baraldi" To: Subject: RE: Internationalization of property values Date: Fri, 2 Mar 2007 12:28:49 -0300 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook, Build 11.0.5510 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.2826 Thread-Index: Acdbqs+qpOkRqHPUQFmnLd+LLA+DFwBM30gg In-Reply-To: <45E63E1D.20001@gmail.com> Message-Id: <20070302152126.D52F33A8C@mail.globant.com> X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on algol X-Spam-Level: X-Virus-Checked: Checked by ClamAV on apache.org X-Old-Spam-Status: No, score=-100.9 required=3.5 tests=AWL,BAYES_00, MSGID_FROM_MTA_ID,USER_IN_WHITELIST autolearn=no version=3.0.4 Thanks guys, I think I will implement something like Brian's option 2 (very similar to Tobia's suggestion). By the way, Brian, how would you recognize to which language a value in the multi-valued property corresponds in Option 3? I ask because I haven't discarded it completely :-). Regards, Waldemar -----Original Message----- From: Brian Thompson [mailto:elephantium@gmail.com] Sent: Wednesday, February 28, 2007 11:45 PM To: users@jackrabbit.apache.org Subject: Re: Internationalization of property values The way I see it, you have three options: Option 1: Separate nodes, one for each language. If you maintain separate workspaces (again, one for each language), you can create the initial movie node and clone() it to the other language workspaces. Each language-version of the movie node will then share the same UUID, making lookups easier (just log in to the appropriate workspace when you're looking for a particular language's version of movie data). If you don't go with multiple workspaces, it gets trickier - you could build a logical linked list with node references, but that seems harder to deal with. Option 2: One movie node, multiple child nodes for languages. Create all the child nodes as the same type (movie:properties or something similar), and put your properties on the child nodes. Option 3: Make each property multi-valued. This keeps all language versions of each property all in the same place, simplifying insertion and retrieval. The downside is that, every time you retrieve any property, you are forced to retrieve all language versions of it. Hope this helps, -Brian Waldemar Baraldi wrote: > Hi all, > > I want my nodes to have internationalizable properties. Let's say a > node of type movie has a string property called 'title', I want to set > the value to that property in different languages. I don't want to > have multiple nodes (for the same movie) just to maintain translations. > I believe the JCR standard doesn't support something like that. I'm > thinking about how to implement something like this. > > Any help, ideas or shared experience will be greatly welcome. > > Thanks in advance. > > Waldemar