uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eric Riebling <e...@cs.cmu.edu>
Subject Re: CAS Editor instructions
Date Mon, 23 Apr 2012 20:28:13 GMT
Thanks for the quick response, this helps!  Let me try and best
document all the places where I felt led astray by the documentation,
in hopes this helps either improve it, or helps others trying to run CAS
Editor.  In the meantime, I will investigate applying all this to the
latest UIMA 2.4.0 as recommended.

1.  Which Eclipse menu items to click?

The instructions say to click:

   new Projects -> Other -> Cas Editor -> Cas Editor Project

but for current Eclipse, the path is actually:

   File -> New -> Project -> Cas Editor -> Cas Editor Project

or

   New -> Other -> Cas Editor -> Cas Editor Project
   
   
2.  Which of multiple Project Properties to click?

People accustomed to working with UIMA in Eclipse will notice right away
there is a new project in their Navigator or Project Explorer pane, after
step 1.  This is where Eclipse/UIMA projects appear.  So when the
instructions

Instead they need to look in a different place, not where projects normally
appear, not where UIMA tooling usually apears (Descriptor editors), but in
the bottom pane of their Eclipse workspace, alongside Console, Search, Problems
etc. tabs.  Right click on THIS newly created CAS Editor and choose Properties
and you will then see the Project options for Typesystem and Corpus Folders.

3.  Terminology disconnects

There are a couple small terminology leaps that need to be made, as one is now looking at
a 'Corpus Explorer' window.  The relationship between Corpus Explorer and Cas Editor is
not really explained, so it is a surprise to the reader.

A second small terminology leap: There is still no 'CAS Editor' to be found in
Eclipse.  The thing you actually run is called an 'Annotation Editor.'  Cas
Editor is only the description of the overall tooling, and the name of a
heading category inside of which are actual Eclipse Views:

   Window -> Show View -> Other -> Cas Editor ->
     Annotation Styles
     Corpus Explorer
     Edit View
     Feature Structure View

4.  Step by step instructions

   a) Copy type system or copy and rename to TypeSystem.xml into
	the newly created Corpus Explorer project.  Do this from
	Navigator or Project Explorer panels.

       * It is not possible to do it with Corpus Explorer or
	from Cas Editor Project Properties.  If you try using
	Cas Editor -> Properties -> Project -> Typesystem -> Browse
	to create a type system, it says 'No entries available.'

       * It is not possible to point to a type system in another
	UIMA project, even though best practices say that type systems
	should be in their own project.

   b) Create a Corpus folder.  This also has to be done from Navigator
	or Project Explorer.  (If you try doing it from Corpus Explorer ->
	Properties -> Project -> Corpus Folders -> New, it again
	says 'No entries available.')  While here, you might also
	want to copy your corpus XMI or XML documents into the folder.

The instructions say "use copy and paste" but don't say from where or to
where to do the copying and pasting, therefore could be more specific.

   c) Now that the Typesystem and Corpus folder are in the Project, go back over to
	Corpus Explorer -> newly created Corpus Explorer Project ->
	Properties -> Project -> Typesystem -> Browse and add it.  Do
	the same with Corpus Folders -> New to add the Corpus folder you
	created in step b) above.

   d) In the Corpus Explorer panel, expand the Corpus
	folder and right click a document, and choose Annotation Editor

Finally, having gotten this far, one can hope for success.
Unless this error message awaits them (which is where I'm stuck now) :

   There is a problem with the document: Error parsing XCAS or XMI-CAS from
   source <unknown> at line 1, column 3384: unknown type:
   org.apache.uima.examples.SourceDocumentInformation

I've tried adding the absolute path to the UIMA jar containing SourceDocumentInformation
type and class files (uima-core.jar) to the CDE path, but that didn't help.
(And shouldn't it have been included automatically?)  I then tried adding
project references in the project Properties (Navigator panel), and got an
even more bizarro behavior: the Corpus folder now appears twice
in the Corpus Explorer project, and in one of those, the one corpus document I
placed there appears twice.  (??!!)

It seems that I need to add SourceDocumentInformation explicitly to the
projecttype system.  It's just that
SourceDocumentInformation.xml isn't readily available as a type system file,
it's buried inside uima-core.jar.  So it's not as simple as editing the type
system file, and "Add"ing an Imported Type System.

So I copy SourceDocumentInformation.xml into the Cas Editor project, edit
the type system to import it (by location - by name doesn't work)  As
soon as I open in the type system in Component Descriptor Editor, it
returns errors no matter how I formulate the path to import the SDI,
whether by name, by relative path, by absolute path... something about
Component Descriptor Editor acts up when it's editing a type system in
a Cas Editor Project.

Finally trying the imported type system techniques, the Cas Editor, I mean
Annotation Editor blows up thusly:

java.lang.NullPointerException
	at org.apache.uima.caseditor.editor.DocumentUimaImpl.<init>(DocumentUimaImpl.java:90)
	at org.apache.uima.caseditor.core.model.DocumentElement.getDocument(DocumentElement.java:129)
	at org.apache.uima.caseditor.editor.DefaultCasDocumentProvider.createDocument(DefaultCasDocumentProvider.java:94)
	at org.eclipse.ui.texteditor.AbstractDocumentProvider.createElementInfo(AbstractDocumentProvider.java:333)
	at org.eclipse.ui.texteditor.AbstractDocumentProvider.connect(AbstractDocumentProvider.java:400)
	at org.eclipse.ui.texteditor.AbstractTextEditor.doSetInput(AbstractTextEditor.java:4213)
	at org.eclipse.ui.texteditor.StatusTextEditor.doSetInput(StatusTextEditor.java:237)
	at org.apache.uima.caseditor.editor.AnnotationEditor.doSetInput(AnnotationEditor.java:699)
	at org.eclipse.ui.texteditor.AbstractTextEditor$19.run(AbstractTextEditor.java:3200)
	at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
	at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:759)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:756)
	at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:2642)
	at org.eclipse.ui.texteditor.AbstractTextEditor.internalInit(AbstractTextEditor.java:3218)
	at org.eclipse.ui.texteditor.AbstractTextEditor.init(AbstractTextEditor.java:3245)
	at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:828)
	at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:647)
	at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)
	at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
	at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:289)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2945)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2850)
	at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2842)
	at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2793)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2789)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2773)
	at org.eclipse.ui.actions.OpenWithMenu.openEditor(OpenWithMenu.java:331)
	at org.eclipse.ui.actions.OpenWithMenu$2.handleEvent(OpenWithMenu.java:179)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)


On 4/22/2012 5:35 PM, Jörn Kottmann wrote:
> Looks like you are using an old version. The 2.4.0 version works better.
> I suggest that you try that one instead.
>
> In this version it asks you to point it to a type system if none for the XMI
> file can be found in the configured location (default is TypeSystem.xml
> in the root of the project).
>
> Hope this helps,
> Jörn
>
> On 04/20/2012 10:08 PM, Eric Riebling wrote:
>> I've been using UIMA for years and years, but I am completely stumped
>> trying to run the CAS Editor. Is anyone expert enough to provide an
>> actual step-by-step guide for getting the CAS Editor to appear, given
>> an existing type system and annotated XMI?
>>
>> I have tried everything in the instructions, but keep getting error
>> messages. First, missing type system. After RENAMING and putting
>> in the root of project, complaint that document is not in a corpus
>> folder. Explanation how to create a corpus folder is vague and
>> confusing.
>>
>> I guess I'm hoping for STEP BY STEP instructions of exactly what to
>> click and type in Eclipse, and what should happen at each stage, as
>> far as expected output. Discouragingly, nothing I try looks like the pictures
>> in the UIMA Tools Guide and Reference.
>>
>> What I'm really hoping for are instructions so clear that 'even faculty' can
>> follow them to add annotations to documents, provided the documents and
>> type system are already set up. :)
>
>

Mime
View raw message