Return-Path: X-Original-To: apmail-uima-user-archive@www.apache.org Delivered-To: apmail-uima-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 3F652D609 for ; Tue, 14 Aug 2012 13:54:16 +0000 (UTC) Received: (qmail 14384 invoked by uid 500); 14 Aug 2012 13:54:16 -0000 Delivered-To: apmail-uima-user-archive@uima.apache.org Received: (qmail 14269 invoked by uid 500); 14 Aug 2012 13:54:15 -0000 Mailing-List: contact user-help@uima.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@uima.apache.org Delivered-To: mailing list user@uima.apache.org Received: (qmail 14259 invoked by uid 99); 14 Aug 2012 13:54:14 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Aug 2012 13:54:14 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=FSL_RCVD_USER,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of eaepstein@gmail.com designates 209.85.213.47 as permitted sender) Received: from [209.85.213.47] (HELO mail-yw0-f47.google.com) (209.85.213.47) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Aug 2012 13:54:10 +0000 Received: by yhjj56 with SMTP id j56so475781yhj.6 for ; Tue, 14 Aug 2012 06:53:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=KYGW5KPvHUSurhh8ZQx4xprLGaJZR2E8Hgos9uUwlYQ=; b=CmcZXkW1ZQsj1Y/tufzwITTpxH9vd9+l2BsSfGMGXpeuV484ypCOHUdhtaKd3dscnV vj7BTCY9WADOnegXMw2BAEBiQIIVAbJ9EYKHXekuNxsHs4BkfQk9ldQErbVXNUNxt2L4 PMt+N8oSPnXTrZIRSmv9KcQSs4jKHytCbFC+E/PizlUGgiUrgltgbj8+TOEs3FVCkULj cfoUJNQsp6uLxLFzZgLQRbArtDaQTjjE2SESUPGrNTt7uiMSWnyYp6lVzjsbgHSV3Zog 8UwdiVMkIqusjCDhex3y1yLkVZ2llPCwCX1NfwY5Gaamz8Cc+mD1CKENoJGFKfdbdOHK z9qA== MIME-Version: 1.0 Received: by 10.50.10.201 with SMTP id k9mr11933423igb.28.1344952423763; Tue, 14 Aug 2012 06:53:43 -0700 (PDT) Received: by 10.42.244.65 with HTTP; Tue, 14 Aug 2012 06:53:43 -0700 (PDT) In-Reply-To: References: Date: Tue, 14 Aug 2012 09:53:43 -0400 Message-ID: Subject: Re: A shared object graph between various views/sofas From: Eddie Epstein To: user@uima.apache.org Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org A View, basically, is just an index and a sofa. All FS are stored in the common CAS "heaps". The only mechanism for passing results from annotator-a to annotator-b is by adding FS to an index. Annotators can be view-unaware, in which case sofa-mapping is setup to pass the correct View to the annotator. Or annotators can be view-aware and they must have logic to know which views to look for. Given that views are application specific, an app can create a "global" view to index stuff. Eddie On Mon, Aug 13, 2012 at 4:08 PM, Shahim Essaid wrote: > Thank you Eddie. So I can index a non-AnnotationBase FS in any view > but the indexes are still view specific, correct? > > If "annotator-a" in view "view-a" creates a FS and there is a down > stream "annotator-b" that operates in "view-b" and it needs to check > for the existence of the same FS, how should "annotator-a" store it > and how should "annotator-b" find it without them being aware of each > others' views and indexes? Is there a global place (global index?) to > store FS objects in a CAS if the indexes are view specific? > > Thanks, > Shahim > > > > On Mon, Aug 13, 2012 at 12:07 PM, Eddie Epstein wrote: >> Hi, >> >> All feature structures in a CAS are accessible from any view. >> That is, an FS-reference can be to any FS in the CAS. >> The only restriction is that an annotation FS can only be indexed >> in the view containing the sofa referenced by the annotation. >> >> An FS type that is not derived from any annotation type >> can be indexed in multiple views. So a "global graph" type >> could be indexed in every view. >> >> Not sure which aspect of your question this answers, hopefully >> something :) >> >> Eddie >> >> On Mon, Aug 13, 2012 at 1:59 PM, Shahim Essaid wrote: >>> Hi All, >>> >>> Is there a way for creating a single arbitrary object graph (of >>> subtypes of Top) that is accessible from various CAS views? I have a >>> possible use-case where I would like to reconstruct the "domain, >>> world, situation, etc." that the various sofas are about. In this >>> use-case, I would add annotations to specific sofas and indexes as >>> usual but I would also like to add objects to this single shared >>> object graph and relate the annotations and object to each other. >>> >>> I have not tried this yet but it might be possible to add an "IsAbout" >>> annotation that spans the whole sofa and one of its features is a >>> "situation" feature to a "Situation" object and then make sure that >>> this situation object is also referred to from any newly created sofas >>> and their corresponding "IsAbout" annotations. Would this work? Is >>> there a better way for accomplishing this? >>> >>> Thank you, >>> Shahim