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 4820A18C51 for ; Sat, 29 Aug 2015 09:59:09 +0000 (UTC) Received: (qmail 13619 invoked by uid 500); 29 Aug 2015 09:59:09 -0000 Delivered-To: apmail-uima-user-archive@uima.apache.org Received: (qmail 13570 invoked by uid 500); 29 Aug 2015 09:59:09 -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 13555 invoked by uid 99); 29 Aug 2015 09:59:08 -0000 Received: from Unknown (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 29 Aug 2015 09:59:08 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 3FD591828BC for ; Sat, 29 Aug 2015 09:59:08 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.129 X-Spam-Level: *** X-Spam-Status: No, score=3.129 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, HTML_MESSAGE=3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id V7kiXfCt677S for ; Sat, 29 Aug 2015 09:59:06 +0000 (UTC) Received: from mail-la0-f48.google.com (mail-la0-f48.google.com [209.85.215.48]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with ESMTPS id 70C3C42B13 for ; Sat, 29 Aug 2015 09:59:06 +0000 (UTC) Received: by labnh1 with SMTP id nh1so20903653lab.3 for ; Sat, 29 Aug 2015 02:59:05 -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=nBv6zsxD4w0xoV79J7lC2NOjWw83oaiFygaQYSU/Luw=; b=lbnpLl6RwmnSQNezm6kHZc/vDvvxI4n4jInoaUPOT6TYe6ibEtZ3cMkZE4ZI6/w3QT obNzG6eATT+NN65ZNIRRLxerXwnizerzzNzkSGQyUkFIUOZ3ahHCvaFrCZWNW0iIKMJ8 XI9FJKXvNvMb3Byc1bWjUumaE8FkiN+BUX4CGv0VCwVtPxOn/h3z/wYI3u1Rv8Ns8ptW aygebZkU/uMT949vQVZ8bZ6cb+TQeceCbHCMezntV2rk/0NBzJoATkei1vydBi+pzP08 exl0LN2cU59kIUTmQOWXoW1JZXNDVIj74WbyfPbUpz43ri5WAXvA11o59yww3h8Cyf3X MQiw== MIME-Version: 1.0 X-Received: by 10.152.6.133 with SMTP id b5mr6495112laa.33.1440842345416; Sat, 29 Aug 2015 02:59:05 -0700 (PDT) Received: by 10.112.77.99 with HTTP; Sat, 29 Aug 2015 02:59:05 -0700 (PDT) In-Reply-To: References: Date: Sat, 29 Aug 2015 05:59:05 -0400 Message-ID: Subject: Re: Exposing a View to Downstream AEs From: Matthew DeAngelis To: user@uima.apache.org Content-Type: multipart/alternative; boundary=089e01493fa82d0d64051e704085 --089e01493fa82d0d64051e704085 Content-Type: text/plain; charset=UTF-8 Hi Richard, Thank you so much, this works like a charm! I knew it was about sofa mappings, but I was having a lot of trouble figuring out how to do that mapping in the Component Descriptor Editor. The uimaFIT approach is much nicer, and your guidance on how to do the mappings is much appreciated. Regards, Matt On Sat, Aug 29, 2015 at 4:27 AM, Richard Eckart de Castilho wrote: > Hi Matt, > > what you are looking for is called "sofa mapping". On the level of an > aggregate, you can define view names and map these names to local > names in each of the AEs. > > E.g. if you have one AE that produces a view it calls "output" and > another one that expects its data in "_InitialView", then you could > set up a mapping like > > AAE "data" -> AE1 "output" > AAE "data" -> AE2 "_InitialView" (CAS.NAME_DEFAULT_SOFA) > > If you are using uimaFIT, you can use the AggregateBuilder, e.g. > > builder = new AggregateBuilder(); > builder.add(analysisEngineDescription1, "output", "data"); > builder.add(analysisEngineDescription1, CAS.NAME_DEFAULT_SOFA, "output"); > AnalysisEngineDescription aggregateEngine = builder. > createAggregateDescription(); > > Cheers, > > -- Richard > > On 28.08.2015, at 23:25, Matthew DeAngelis wrote: > > > Hi all, > > > > I have been hitting my head against this all afternoon, so I figured I'd > > ask. > > > > I am using a CollectionReader to read in HTML files and then using an AE > to > > add a view that contains the "clean", plaintext versions of those files. > I > > would like to pass the plaintext version to an AE downstream in the > > pipeline (Stanford NLP's tokenizer from DKPro, specifically, for now); > > currently, it only sees and tokenizes the original HTML file. Since the > > tokenizer is not written by me, I would prefer to be able to modify my > > view-creating AE instead of mucking about in someone else's. > > > > I have tried using an Aggregate Analysis Engine to combine the AEs > together > > and Sofa mappings to connect the views, but the downstream AE does not > have > > any input views to connect to. When I add an input view named > > "_InitialView" to both the Aggregate AE and the descriptor for the > > tokenizer, I get an interesting-looking NPE in some deep sub-function of > > the tokenizer that suggests I have not been successful. > > > > Is there a way to tell my AE what view to pass as the "_InitialView", or > > some way to set a different default view to pass? > > > > > > Regards and thanks, > > Matt > > --089e01493fa82d0d64051e704085--