Semantic Role Labeler used in Java/vb.net - nlp

I want to use Semantic Role Labeler tool from Illinois in my project.
I've seen the online demo of the SRL tool. To use that tool, the website suggests downloading the Curator. I have downloaded this Curator file. But how do I use the Curator file in Java code or VB.NET code? Can anybody help me?

And I also want to mention a few tips about Curator. The reason that you will need a Curator is that the SRL package as a complicated software now need a few external dependencies, for example, illinois Part of Speech, Shallow parsing, and currently Charniak parser. And Curator is a tool we used to manage those dependencies.
However, the curator will also installed a few other dependency that you may not need for SRL, for example, Named entity tagger, and Wikifier. Those component tends to consume plenty of RAM (for example, the two listed here will need 10GB), so you may want to turn them oof, by comment out the line in $CURATOR_HOME/dist/startServer.sh which should be self-explained.
Once you have Curator up and running, you can call it from you program using a curator-client package, the easiest way to do this in JAVA is using maven:
First add the CCG maven repo to your project:
<repositories>
<repository>
<id>CogcompSoftware</id>
<name>CogcompSoftware</name>
<url>http://cogcomp.cs.illinois.edu/m2repo/</url>
</repository>
</repositories>
And then add the following dependencies:
<dependency>
<groupId>edu.illinois.cs.cogcomp</groupId>
<artifactId>curator-interfaces</artifactId>
<version>0.7</version>
</dependency>
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.8.0</version>
</dependency>
Since the API and data structure are defined in Thrift, so you may use them in other language by generating the curator package via thrift, (However, VB.NET is not supported by Thrift as Daniel pointed out :) ) Watch for the CCG website if you are interested, we are writing a tutorial about how to do this, which should be public available very soon.
And after you have the above dependency, you should be able to follow our walkthrough on
http://cogcomp.cs.illinois.edu/curator/CuratorDemo.html
Let me know if you have any problem.

You are asking several questions.
The standalone SRL is under development and it will be release soon.
The best way to access to SRL is currently installing Curator, which is explained here:
http://cogcomp.cs.illinois.edu/trac/curator.php
I don't think you can use Curator in VB.Net. Since it is designed to the languages supposed by Apache Thrift :
http://thrift.apache.org/about
After installing it you can easily access it in Java. Here is a Walkthrough:
http://cogcomp.cs.illinois.edu/curator/CuratorDemo.html

you can use SENNA which is a free NLP tools developed in ASNI c and could be run in visual studion.net
http://ronan.collobert.com/senna/
it can outputs: part-of-speech (POS) tags, chunking (CHK), name entity recognition (NER), semantic role labeling (SRL) and syntactic parsing (PSG).

Related

Cassandra difference between com.datastax.oss -> java-driver-core and com.datastax.cassandra -> cassandra-driver-core

I wrote a program with the following package
<dependency>
<groupId>com.datastax.cassandra</groupId>
<artifactId>cassandra-driver-core</artifactId>
<version>3.6.0</version>
</dependency>
But when I change it to 4.0.0 it doesn't have some critical classes.
I search and read in Datastax that I must use the following package:
<dependency>
<groupId>com.datastax.oss</groupId>
<artifactId>java-driver-core</artifactId>
<version>4.0.0</version>
</dependency>
So, it totally have different classes, So what is the right package from Datastax to use in java for connecting and working with Cassandra? Which one is better to use and what is the main difference?
This really depends on your requirements:
if you're developing completely new application, then you need to use 4.x versions of the driver, as 3.x won't get new functionality, only critical bug fixes. Latest version right now is 4.9.0 - check documentation for exact Maven definition - it should match your second snippet. Please take into account that this driver is quite different from the 3.x versions, so copy-pasting old examples won't work, but you can follow the upgrade guide to translate them to the new version.
if you have existing code, then you may stick to the latest 3.x version (3.10 right now) because porting to 4.x versions could lead to significant rewrite of application caused by architectural changes in new version. Consult upgrade guide for details of porting. Also, you can check following repository for examples of code ported to 4.x.

is possible remove Jhipster Dependencies in back? why is necessary?

is possible remove Jhipster Dependencies in back? why is necessary or recommended???
IF I REMOVE OF POM.XML appears different compilation errors.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.github.jhipster</groupId>
<artifactId>jhipster-dependencies</artifactId>
<version>${jhipster-dependencies.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- jhipster-needle-maven-add-dependency-management -->
</dependencies>
</dependencyManagement>
Is it possible?
Yes but you have to import all the dependencies yourself although nothing very difficult because most of them are already provided as Spring Boot starters. Looking at effective pom with mvnw help:effective-pom could help.
Then you must import maven plugins configuration.
Finally, your project will still depend on jhipster-framework library unless you extract only the classes your project needs.
Is it recommended?
For long term, managing yourself your dependencies is a good thing because major libraries like Spring Boot, Hibernate, ... support old releases for quite a long time while JHipster team supports only current major release (currently 7.x) which usually means one year.
At the beginning of your project, you will probably want to be able to follow JHipster updates. Modifying the pom.xml will make updating generated code more difficult.
Once you have written much manual code, your project is probably already too difficult to update, so cutting the dependency with JHipster will be harmless.
I found it harder to remove dependency from JHipster frontend than from backend because for instance ng-jhipster has some dependencies on Bootstrap that require some effort to remove.

Is there any source code analysis tool for Elixir?

Is there any source code analysis tool that can detect security flaws in Elixir?
I know about Sobelow, but I am not using Phoenix framework.
Thank you
It's not exactly what you need, but we have a public database with Elixir Security Advisories for Elixir packages (unfortunately not so updated):
https://github.com/dependabot/elixir-security-advisories
Currently we haven't a well known code analysis tool for pure Elixir, which would be listed on:
https://github.com/mre/awesome-static-analysis
https://github.com/h4cc/awesome-elixir
If you are not using Phoenix framework, sobelow won't help. Thus I would say used Clamxir,
https://github.com/ramortegui/clamxir
But purely based on your requirement and whether it does the necessary coverage.

Ill-advised or mistaken usage of a core class (java.* or javax.*) when not building a core library

When I clean my project I get the following error:
[2011-10-05 13:47:53 - The Basics] Dx
trouble processing "java/nio/CharBuffer.class":
Ill-advised or mistaken usage of a core class (java.* or javax.*)
when not building a core library.
This is often due to inadvertently including a core library file
in your application's project, when using an IDE (such as
Eclipse). If you are sure you're not intentionally defining a
core class, then this is the most likely explanation of what's
going on.
However, you might actually be trying to define a class in a core
namespace, the source of which you may have taken, for example,
from a non-Android virtual machine project. This will most
assuredly not work. At a minimum, it jeopardizes the
compatibility of your app with future versions of the platform.
It is also often of questionable legality.
If you really intend to build a core library -- which is only
appropriate as part of creating a full virtual machine
distribution, as opposed to compiling an application -- then use
the "--core-library" option to suppress this error message.
If you go ahead and use "--core-library" but are in fact
building an application, then be forewarned that your application
will still fail to build or run, at some point. Please be
prepared for angry customers who find, for example, that your
application ceases to function once they upgrade their operating
system. You will be to blame for this problem.
If you are legitimately using some code that happens to be in a
core package, then the easiest safe alternative you have is to
repackage that code. That is, move the classes in question into
your own package namespace. This means that they will never be in
conflict with core system classes. JarJar is a tool that may help
you in this endeavor. If you find that you cannot do this, then
that is an indication that the path you are on will ultimately
lead to pain, suffering, grief, and lamentation.
[2011-10-05 13:47:53 - The Basics] Dx 1 error; aborting
[2011-10-05 13:47:53 - The Basics] Conversion to Dalvik format failed with error 1
I had this problem. I use Maven to build my android projects. My problem was caused by one of my dependencies depending on the android jars. I updated my pom to exclude android from that dependency and that solved it for me.
<dependency>
<groupId>org.reassembler</groupId>
<artifactId>synth-android</artifactId>
<version>2.5.8</version>
<exclusions>
<exclusion>
<artifactId>junit</artifactId>
<groupId>junit</groupId>
</exclusion>
<exclusion>
<artifactId>android</artifactId>
<groupId>android</groupId>
</exclusion>
</exclusions>
</dependency>
Hope this helps someone, it took me a while to figure out what was going on.
For the benefit of anyone who may have stumbled upon this, this problem can be caused by inclusion of an older library such as android.jar. Removing the .jar file from your buildpath will allow you to compile. Otherwise, you can use the "jarjar" mentioned in the error message to move the .jar file to another package.
Your IDE is misconfigured. Make sure that your scripts or IDE isn't passing rt.jar or android.jar to dx.
In Android Studio, I had included java and javax jar files in my lib folder and there were dependencies related to them (in build.gradle at the app level). I commented them out.
//compile files('libs/ K java-rt-jar-stubs-1.5.0.jar')
//compile 'javax.annotation:jsr250-api:1.0'
//compile files('libs/javax. annotation.jar')
Then i went to the Project View and deleted the jar files. There were some legacy instances of java.awt.geom which I had to purge, but rebuilt project and then i was fine.

Apache ODE example

Any good apache ODE example available?
I am trying to evaluate Apache ODE for an project. Please provide any references for learning
Apache ODE through samples/tutorials/guide.
Thanks.
You can try the examples shipped with ODE. Also, http://ode.apache.org/resource-services.html provides a list of tutorials that may help you.
I am working on Indus framework which makes it easy to use Apache ODE.
"Indus is a build system that integrates Apache ODE and brings together various
SOA components. It has a maven plugin that wraps the bpelc compiler - allowing
you to compile bpel files prior to their deployment. Furthermore, it creates a
process sub-directory that contains all the necessary artifacts for the
process's deployment (including deploy.xml - which is auto generated).
Additionally, all the dependent jars are placed a lib sub-directory and may be
deployed to ODE's WEB-INF/lib."
https://github.com/sarithi/indus/blob/master/examples/workflow/HelloWorldWorkflowService/mainline/src/main/process/SayHello.bpel

Resources