I would also like to add, I do have the dictionaries.

On Mon, Aug 12, 2019 at 3:39 PM Sébastien Boussard <[email protected]> wrote:

> Thank you, everyone, for looking at this,
> My project is to understand how to use ctakes well and make it flexible
> for it to be used for everyone else in our lab when I leave. The first
> thing I wanted to do was just be able to get inputs and outputs. As I
> understand it more, I want to be able to transform it after. What are the
> full capabilities of piper files? When would it be advantageous to just use
> that over what I was doing before?
>
> Thank you,
> Sebastien Boussard
>
> On Mon, Aug 12, 2019 at 8:21 AM Finan, Sean <
> [email protected]> wrote:
>
>> Hi all,
>>
>> I think that there are a lot of things going on here.
>>
>> Jeff's question is on point - do you actually have the dictionary?
>>
>> I think that doing all of this with code is unnecessary.
>> - I don't see anything in the code that cannot be done in a piper file.
>> - Piper files can set the collection reader.   Use the "reader" command.
>> For your use, that would be " reader LinesFromFileCollectionReader
>> InputFileName=<filePath> "
>> - Piper files can load other piper files.  Use the "load" command.
>> For your use, that would be " load DefaultFastPipeline "
>>   https://cwiki.apache.org/confluence/display/CTAKES/Piper+Files
>> So, instead of writing and debugging code, you can create a 2 line piper
>> file and just run it using org.apache.ctakes.core.pipeline.PiperFileRunner
>>
>> " <java etc.> PiperFileRunner
>>  -p <pathToMyPiper>
>> -o <pathToMyOutputDir>
>> --user <myUmlsUsername>
>> --pass <myUmlsPassword> "
>>
>> Or if you really want to run the piper from code then you can do so, but
>> I would rely more upon the piper such as in the examples code
>> HelloWorldPiperRunner.java
>>
>> I would just use a piper file.  If you want to get fancy, then instead of
>> explicitly specifying the InputFileName in the piper, use the "cli" command
>> in the piper.
>> " cli InputFileName=in "
>> Then you can remove the specification from the piper command ( simplify
>> it to " reader LinesFromFileCollectionReader " )
>> and your PiperFileRunner would be the same as above but with "--in
>> <filePath> " added.
>> Then you can change the input using the command line instead of
>> constantly editing the piper.
>>
>> Besides the obvious simplicity for the user of only using a piper file,
>> it should be easier for others to assist with problems as they do not need
>> to go through your code.
>>
>> I have to ask why you are using LinesFromCollectionReader ?  It treats
>> each line like a different document.
>> Your first attempt points to "right_knee_arthroscopy" in the example
>> notes.
>> This would give you two output documents, one for each line in that
>> file.  Is that your intention?
>>
>>
>> Sean
>>
>>
>> ________________________________________
>> From: Jeffrey Miller <[email protected]>
>> Sent: Saturday, August 10, 2019 2:36 PM
>> To: [email protected]
>> Subject: Re: Struggling initializing [EXTERNAL]
>>
>> Sebastien,
>>
>> Just wanted to confirm that you have the sno_rx_16ab.script file
>> in org/apache/ctakes/dictionary/lookup/fast/sno_rx_16ab/
>>
>>
>> Jeff
>>
>> On Sat, Aug 10, 2019, 2:16 PM gandhi rajan <[email protected]>
>> wrote:
>>
>> > Sorry Sebastien I still don't get what you are trying to do.
>> >
>> > On Saturday, August 10, 2019, Sebastien Boussard <[email protected]>
>> wrote:
>> >
>> > > Hello Mr. Rajan,
>> > > I have realized that I have sent you no context! I am currently
>> working
>> > on
>> > > the Process Lines Clinical Runner. Previously, I was having many
>> errors
>> > > with the directories. I made a link from my resources folder to the
>> > apache
>> > > takes resources folder. I have no link between the source code and the
>> > user
>> > > interface.
>> > >
>> > > Here is the code:
>> > >
>> > > import java.io.File;
>> > > import java.io.IOException;
>> > >
>> > >
>> > > import org.apache.ctakes.core.cr.LinesFromFileCollectionReader;
>> > > import org.apache.ctakes.core.pipeline.EntityCollector;
>> > > import org.apache.ctakes.core.pipeline.PipelineBuilder;
>> > > import org.apache.ctakes.core.pipeline.PiperFileReader;
>> > > import org.apache.ctakes.core.resource.FileLocator;
>> > > import org.apache.ctakes.dictionary.lookup2.ae
>> .DefaultJCasTermAnnotator;
>> > > import org.apache.uima.UIMAException;
>> > > import org.apache.log4j.Logger;
>> > > final public class ClinicalProcessor {
>> > >
>> > >
>> > >                 static private final Logger LOGGER =
>> Logger.getLogger("
>> > > ClinicalProcessor");
>> > >
>> > >                 static private final  String PIPER_FILE_PATH =
>> > > "/Users/sboussard/Desktop/apache-ctakes-4.0.0/resources/
>> > > org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper";
>> > >
>> > >                 static private final String INPUT_FILE_PATH =
>> > > "/Users/sboussard/Desktop/apache-ctakes-4.0.0/resources/
>> > > org/apache/ctakes/examples/notes/right_knee_arthroscopy";
>> > >
>> > >                 private ClinicalProcessor() {
>> > >                 }
>> > >
>> > >                  public static void main( final String[] args ) {
>> > >                          System.out.println(PIPER_FILE_PATH);
>> > >
>> > >                       try {
>> > >                          // Create a piper file reader, but don't load
>> > the
>> > > piper yet - we want to create a reader with parameters
>> > >                          final PiperFileReader reader = new
>> > > PiperFileReader();
>> > >                          final PipelineBuilder builder =
>> > > reader.getBuilder();
>> > >                          // Add the Lines from File reader
>> > >                          //final File inputFile =
>> FileLocator.locateFile(
>> > > INPUT_FILE_PATH );
>> > >                          //final File inputFile = FileLocator.getFile(
>> > > INPUT_FILE_PATH );
>> > >                          final File inputFile = new
>> > File("/Users/sboussard/
>> > > Desktop/ClampMac_1.6.0/workspace/MyPipeline/clamp-
>> > > ner/Data/Input/sample_2788.txt");
>> > >                          builder.reader(
>> LinesFromFileCollectionReader.
>> > > class,
>> > >
>> > LinesFromFileCollectionReader.PARAM_INPUT_FILE_NAME,
>> > > inputFile.getAbsolutePath() );
>> > >                          // Add the lines from the piper file
>> > >                          reader.loadPipelineFile( PIPER_FILE_PATH );
>> > >                          // Collect IdentifiedAnnotation object
>> > > information for output - simple for examples
>> > >                          builder.collectEntities();
>> > >                          // Run the pipeline with specified text
>> > >                          builder.run();
>> > >                          // Log the IdentifiedAnnotation object
>> > information
>> > >                          LOGGER.info( "\n" +
>> > EntityCollector.getInstance().toString()
>> > > );
>> > >                       } catch ( IOException | UIMAException multE ) {
>> > >                          LOGGER.error( multE.getMessage() );
>> > >                       }
>> > >                    }
>> > >
>> > >
>> > >                 }
>> > >
>> > > Thank you for all your help,
>> > > Sebastien Boussard
>> > >
>> > > > On Aug 10, 2019, at 3:00 AM, gandhi rajan <[email protected]>
>> > > wrote:
>> > > >
>> > > > As far as I know, it's a more generic error. Could you please let us
>> > know
>> > > > what action you are trying to perform and steps involved in
>> reproducing
>> > > the
>> > > > issue.
>> > > >
>> > > > On Saturday, August 10, 2019, Sebastien Boussard <[email protected]>
>> > > wrote:
>> > > >
>> > > >> Hello,
>> > > >> I’m an intern in the Stanford Biomedical Informatics Lab and I've
>> been
>> > > >> working on getting a ctakes page for a week, and I’ve been getting
>> a
>> > > lot of
>> > > >> errors. I have been getting a filed to initialize error for the
>> last
>> > day
>> > > >> and a half and I can not solve it. I will send you the whole log,
>> if
>> > you
>> > > >> can help me out it would be greatly appreciated.
>> > > >>
>> > > >> log4j: reset attribute= "false".
>> > > >> log4j: Threshold ="null".
>> > > >> log4j: Retreiving an instance of org.apache.log4j.Logger.
>> > > >> log4j: Setting [ProgressAppender] additivity to [false].
>> > > >> log4j: Level value for ProgressAppender is  [INFO].
>> > > >> log4j: ProgressAppender level set to INFO
>> > > >> log4j: Class name: [org.apache.log4j.ConsoleAppender]
>> > > >> log4j: Parsing layout of class: "org.apache.log4j.PatternLayout"
>> > > >> log4j: Setting property [conversionPattern] to [%m].
>> > > >> log4j: Adding appender named [noEolAppender] to category
>> > > >> [ProgressAppender].
>> > > >> log4j: Retreiving an instance of org.apache.log4j.Logger.
>> > > >> log4j: Setting [ProgressDone] additivity to [false].
>> > > >> log4j: Level value for ProgressDone is  [INFO].
>> > > >> log4j: ProgressDone level set to INFO
>> > > >> log4j: Class name: [org.apache.log4j.ConsoleAppender]
>> > > >> log4j: Parsing layout of class: "org.apache.log4j.PatternLayout"
>> > > >> log4j: Setting property [conversionPattern] to [%m%n].
>> > > >> log4j: Adding appender named [eolAppender] to category
>> [ProgressDone].
>> > > >> log4j: Level value for root is  [INFO].
>> > > >> log4j: root level set to INFO
>> > > >> log4j: Class name: [org.apache.log4j.ConsoleAppender]
>> > > >> log4j: Parsing layout of class: "org.apache.log4j.PatternLayout"
>> > > >> log4j: Setting property [conversionPattern] to [%d{dd MMM yyyy
>> > HH:mm:ss}
>> > > >> %5p %c{1} - %m%n].
>> > > >> log4j: Adding appender named [consoleAppender] to category [root].
>> > > >> /Users/sboussard/Desktop/apache-ctakes-4.0.0/resources/
>> > > >> org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper
>> > > >> 09 Aug 2019 11:28:50  INFO SentenceDetector - Sentence detector
>> model
>> > > >> file: org/apache/ctakes/core/sentdetect/sd-med-model.zip
>> > > >> 09 Aug 2019 11:28:50  INFO TokenizerAnnotatorPTB - Initializing
>> > > >> org.apache.ctakes.core.ae.TokenizerAnnotatorPTB
>> > > >> 09 Aug 2019 11:28:50  INFO ContextDependentTokenizerAnnotator -
>> Finite
>> > > >> state machines loaded.
>> > > >> 09 Aug 2019 11:28:50  INFO POSTagger - POS tagger model file:
>> > > >> org/apache/ctakes/postagger/models/mayo-pos.zip
>> > > >> 09 Aug 2019 11:28:51  INFO Chunker - Chunker model file:
>> > > >> org/apache/ctakes/chunker/models/chunker-model.zip
>> > > >> 09 Aug 2019 11:28:52  INFO AbstractJCasTermAnnotator - Using
>> > dictionary
>> > > >> lookup window type:
>> > org.apache.ctakes.typesystem.type.textspan.Sentence
>> > > >> 09 Aug 2019 11:28:52  INFO AbstractJCasTermAnnotator - Exclusion
>> > tagset
>> > > >> loaded: CC CD DT EX IN LS MD PDT POS PP PP$ PRP PRP$ RP TO VB VBD
>> VBG
>> > > VBN
>> > > >> VBP VBZ WDT WP WPS WRB
>> > > >> 09 Aug 2019 11:28:52  INFO AbstractJCasTermAnnotator - Using
>> minimum
>> > > term
>> > > >> text span: 3
>> > > >> 09 Aug 2019 11:28:52  INFO AbstractJCasTermAnnotator - Using
>> > Dictionary
>> > > >> Descriptor:
>> org/apache/ctakes/dictionary/lookup/fast/sno_rx_16ab.xml
>> > > >> 09 Aug 2019 11:28:52  INFO DictionaryDescriptorParser - Parsing
>> > > dictionary
>> > > >> specifications:
>> > > >> 09 Aug 2019 11:28:52  INFO UmlsUserApprover - Checking UMLS
>> Account at
>> > > >>
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__uts-2Dws.nlm.nih.gov_restful_isValidUMLSUser&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=5TDSCM85vULZYZcSTh2NL3qaVFV_2sJkBfV7zPV4StI&s=7C7YUGjMyzZq1eabffg_1uxCewLyf619heJ6Xbm84aQ&e=
>> for user boussard:
>> > > >> ..09 Aug 2019 11:28:53  INFO UmlsUserApprover -   UMLS Account at
>> > > >>
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__uts-2Dws.nlm.nih.gov_restful_isValidUMLSUser&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=5TDSCM85vULZYZcSTh2NL3qaVFV_2sJkBfV7zPV4StI&s=7C7YUGjMyzZq1eabffg_1uxCewLyf619heJ6Xbm84aQ&e=
>> for user boussard
>> > > has
>> > > >> been validated
>> > > >>
>> > > >> 09 Aug 2019 11:28:53 ERROR ClinicalProcessor - Initialization of
>> > > annotator
>> > > >> class "org.apache.ctakes.dictionary.lookup2.ae.
>> > > DefaultJCasTermAnnotator"
>> > > >> failed.  (Descriptor: <unknown>)
>> > > >>
>> > > >>
>> > > >
>> > > > --
>> > > > Regards,
>> > > > Gandhi
>> > > >
>> > > > "The best way to find urself is to lose urself in the service of
>> others
>> > > !!!"
>> > >
>> > >
>> >
>> > --
>> > Regards,
>> > Gandhi
>> >
>> > "The best way to find urself is to lose urself in the service of others
>> > !!!"
>> >
>>
>

Reply via email to