You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stanbol.apache.org by Rupert Westenthaler <ru...@gmail.com> on 2011/08/09 16:45:34 UTC

Re: Apache Stanbol

Hallo Mr Srecko Joksimovic

Two initial Notes:

* I am sending this also to the stanbol-dev list, because I am on
vacation until end of August and will only read/answer mails from time
to time until than. So maybe others of the Stanbol community will be
able to answer questions more quickly then myself.
* I am sending this reply via my gmail account, because somehow I am
not able to connect to the SMTP server of salzburgresearch.at.

- - -

Actually this is possible by using the TaxonomyLinkingEngine that is
currently in development.

Basically there are two steps:

(1) upload your Ontology to the Entityhub
(2) configure an instance of the TaxonomyLinkingEngine to use your
ontology (as stored by the Entityhub) to enhance your documents


for (1) there are two possibilities

(1a) upload your ontology directly to the "/entityhub"

If you have a Stanbol instance running at "http://localhost:8080/" the
followng curl command can be used to upload an RDF graph (such as your
ontology)

curl -X POST -H "Content-Type: application/rdf+xml" --data
"@{rdfXmlFile}" http://localhost:8080/entityhub/entity

This assumes that your Ontology is encoded as "application/rdf+xml".
{rdfXmlFile} denotes to the path to the file on the local file system.
Please also have a look at [1] for a more detailed description on how
to upload RDF data to the "/entityhub" endpoint.

(1b) manage the RDF data as an own ReferencedSite

The Entityhub also supports the configuration of so called
ReferencedSites. This allows to manage different RDF datasets (e.g.
dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology, ...).
Such sites are read-only and accessible under
http://localhost:8080/entityhub/site/{siteId}

Stanbol also includes an indexing tool that helps you in creating such
"referencedSites" for local datasets (such as your Ontology). A
detailed description of this process can be found at [3]. [2] is a
specific configuration of [3] for the IPTC thesaurus.

In general for testing I would suggest to use (1a) because it is much
easer to start with. However (1a) will require to load your ontology
in memory therefore it will not work for big datasets. In addition
(1b) allows you to optimize your ontology (by defining mappings)
during the indexing process and it gives you the possibility to use
different Ontologies for enhancing your content. Therefore for more
complex usage scenarios option (1b) is typically the better solution.

(2) Configure the TaxonomylinkingEngine

This Engine is by default included in the Full launcher of Stanbol. If
you prefer the stable launcher you will need to manually install it
(e.g. by using the Apache Felix Wenconsole accessible under
http://localhost:8080/system/console default user: admin pwd: admin).
The bundle to install can be found at
"{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"

Assuming a running Stanbol Instance that includes the
TaxonomyLinkingEngine the following steps are required for the
configuration:
1. go the "configuration tab" (http://localhost:8080/system/console/configMgr)
2. search for "Apache Stanbol Enhancement Engine for Taxonomy linking"
3. pres on the [+] button on the end of this line (this will open the
dialog to configure a new instance of this engine)
4. configure the source. If you used (1a) put "entityhub" in case of
(1b) you must enter the siteId of the referenced site.
5. configure the property used to search for labels of the concepts in
your Ontology. The default is rdfs:label (typically used for labeling
concepts within ontologies, but you might also want to use a different
one based on your ontology

I would not recommend to change any other properties because this
engine is currently under development and changes to this values might
not be implemented or even worse break this engine.



best
Rupert Westenthaler

[1] http://markmail.org/message/plertstj6fx4xutj
[2] http://markmail.org/message/rgwug74s3u6olrby
[3] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md

Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
<sr...@gmail.com>:
>
> Hello Mr Westenthaler,
>
> Mr Pereira gave me your contact, in order to ask you a few questions about
> Apache Stanbol. I suppose that you have received Mr Pereira's email which he
> sent to me, and you maybe already know what the problem is.
>
> Mr Pereira suggested me to use Apache Stanbol. The idea is to load my
> ontology, and than to call method which is going to annotate provided text,
> based on loaded ontology. Could you please explain to me how to implement
> scenario which I described using Apache Stanbol? If you could provide me a
> code example, I would be very grateful.
>
> Thank you very much.
>
> Best,
> Srecko Joksimovic

-- 
| Rupert Westenthaler             rupert.westenthaler@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Re: Apache Stanbol

Posted by Olivier Grisel <ol...@ensta.org>.
2011/8/29 srecko joksimovic <sr...@gmail.com>:
> Hello,
>
> I have to install Apache Stanbol again. I finished check out without any
> problem, but when I run mvn clean install, at some point I get this error:
>
>  java.net.UnknownHostException: opennlp.sourceforge.net
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] An Ant BuildException has occured: The following error occurred while
> executing this line:
> /home/srecko/Apache_stanbol/data/opennlp/lang/en/download_models.xml:25:
> Warning: Could not find resource url "
> http://opennlp.sourceforge.net/models-1.5/en-sent.bin" to copy.
>
> Is there any workaround for this?

Well you will need to download the opennlp models in some way or
another. Do you have an internet connection on the machine your are
using for the build? The link to
http://opennlp.sourceforge.net/models-1.5/en-sent.bin is working for
me.

Right now we cannot embed them in jars distributed by the Apache maven
repository server because of gray licensing issues. Automating the
download from the sourceforge server at build time is the best
solution we could come with while find a way to build statistical
models that derive from open licensed corpora.

-- 
Olivier
http://twitter.com/ogrisel - http://github.com/ogrisel

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Thank you very much, Rupert.

Problem was with my computer. When I restarted, everything worked fine.

Thank you for your time, and sorry for this question. It had nothing to do
with Apache Stanbol...

Best regards,
Srecko Joksimovic

On Tue, Aug 30, 2011 at 9:27 AM, Rupert Westenthaler <
rupert.westenthaler@gmail.com> wrote:

> Hi Srecko
>
> I think that this error appears because an other http server is
> already running on localhost:8080 on your machine.
>
> If Apache Stanbol would answering your request the "Server:" header should
> note
>
>    Server: Jetty(6.1.x)
>
> and not
>
>    Server: micro_httpd
>
> best
> Rupert Westenthaler
>
> On Mon, Aug 29, 2011 at 10:33 PM, srecko joksimovic
> <sr...@gmail.com> wrote:
> > * HTTP 1.0, assume close after body
> > < HTTP/1.0 400 Bad Request
> > < Server: micro_httpd
> > < Date: Mon, 29 Aug 2011 20:27:54 GMT
> > < Content-Type: text/html
> > < Connection: close
> > <
> > <HTML><HEAD><TITLE>400 Bad Request</TITLE></HEAD>
> > <BODY BGCOLOR="#cc9999"><H4>400 Bad Request</H4>
> > Bad filename.
> > <HR>
> > <ADDRESS><A
> > HREF="http://www.acme.com/software/micro_httpd/
> ">micro_httpd</A></ADDRESS>
> > </BODY></HTML>
> > * Closing connection #0
> > Do you have any idea?
> > Best,
> > Srecko Joksimovic
>
>
>
> --
> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> | Bodenlehenstraße 11                             ++43-699-11108907
> | A-5500 Bischofshofen
>

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Hi Rupert,

I have configured Apache again. Looks like my proxy settings were bad.
Without proxy, everything went great.

But... (there is always "but" :)), when I run this command:

curl -v -X POST -H "Content-Type: application/rdf+xml" --data
"@acm-ccs_proton.owl" http://localhost:8080/entityhub/entity

from /home/stanbol/my_owl folder, where is acm-ccs_proton.owl file, also, I
get this message:

* About to connect() to proxy 192.168.100.1 port 80 (#0)
*   Trying 192.168.100.1... connected
* Connected to 192.168.100.1 (192.168.100.1) port 80 (#0)
> POST http://localhost:8080/entityhub/entity HTTP/1.1
> User-Agent: curl/7.19.7 (i486-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k
zlib/1.2.3.3 libidn/1.15
> Host: localhost:8080
> Accept: */*
> Proxy-Connection: Keep-Alive
> Content-Type: application/rdf+xml
> Content-Length: 946004
> Expect: 100-continue
>
* HTTP 1.0, assume close after body
< HTTP/1.0 400 Bad Request
< Server: micro_httpd
< Date: Mon, 29 Aug 2011 20:27:54 GMT
< Content-Type: text/html
< Connection: close
<
<HTML><HEAD><TITLE>400 Bad Request</TITLE></HEAD>
<BODY BGCOLOR="#cc9999"><H4>400 Bad Request</H4>
Bad filename.
<HR>
<ADDRESS><A HREF="http://www.acme.com/software/micro_httpd/
">micro_httpd</A></ADDRESS>
</BODY></HTML>
* Closing connection #0

Do you have any idea?

Best,
Srecko Joksimovic

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Hello,

I have to install Apache Stanbol again. I finished check out without any
problem, but when I run mvn clean install, at some point I get this error:

 java.net.UnknownHostException: opennlp.sourceforge.net
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] An Ant BuildException has occured: The following error occurred while
executing this line:
/home/srecko/Apache_stanbol/data/opennlp/lang/en/download_models.xml:25:
Warning: Could not find resource url "
http://opennlp.sourceforge.net/models-1.5/en-sent.bin" to copy.

Is there any workaround for this?

Thank you!

Srecko Joksimovic

On Mon, Aug 29, 2011 at 3:01 PM, srecko joksimovic <
sreckojoksimovic@gmail.com> wrote:

> Thank you very much for the answer!
>
> I did not know for this way, but I have find a solution. But, I will have
> to try this one.
>
> Best,
> Srecko Joksimovic
>
>
> On Mon, Aug 29, 2011 at 2:59 PM, Rupert Westenthaler <
> rupert.westenthaler@gmail.com> wrote:
>
>> On Wed, Aug 17, 2011 at 11:46 AM, srecko joksimovic
>> <sr...@gmail.com> wrote:
>> > Hi,
>> > I have to say that everything works perfectly!
>>
>> good to hear
>>
>> > I can find there both of my concepts mentioned in the sentence. I also
>> have
>> > "
>> http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
>> "
>> > But, could you please tell me if it is possible to get
>> > http://www.lornet.org/acm-ccs/proton#A.2 ?
>> > What should I do to get Class in result, and not just Alias?
>>
>> Sorry, but this is not possible. The stanbol enhancer will always
>> include the Resource that defines the label and this is the Alias.
>> As a workaround you could use the Entityhub to query for the Class of
>> the returned Alias.
>>
>> Based on the provided excerpt of your Ontology parsing this JSON
>> FieldQuery to the query service of the Entityhub
>> (http://localhost:8080/entityhub/query) should provide the Class for
>> the Alias.
>>
>>    {
>>    "constraints": [{
>>        "type": "reference",
>>        "field": "http://www.lornet.org/acm-ccs/proton#hasMainAlias",
>>        "value":
>> "
>> http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
>> ",
>>         }]
>>    }
>>
>> best
>> Rupert
>>
>> > Best,
>> > Srecko Joksimovic
>> > On Mon, Aug 15, 2011 at 8:18 PM, Srecko Joksimovic
>> > <sr...@gmail.com> wrote:
>> >>
>> >> Hi,
>> >> I will have to try this, as soon as possible, but I am sure it will be
>> >> alright.
>> >>
>> >> Thank you very much!
>> >>
>> >> Best,
>> >> Srecko Joksimovic
>> >>
>> >> -----Original Message-----
>> >> From: Rupert Westenthaler [mailto:rupert.westenthaler@gmail.com]
>> >> Sent: Monday, August 15, 2011 16:43
>> >> To: srecko joksimovic; stanbol-dev@incubator.apache.org
>> >> Subject: Re: Apache Stanbol
>> >>
>> >> On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic
>> >> <sr...@gmail.com> wrote:
>> >> > That was the problem! Great! It works now.
>> >> > Still, my old (boring) question... how to access service from Java
>> >> > application and post string which I would like to annotate? I know
>> how
>> >> > to
>> >> > implement service client, but could you describe me the process in
>> this
>> >> > case?
>> >>
>> >> to send text to the stanbol enhancer you need to use the /engines
>> endpoint
>> >>
>> >> For the documentation go to
>> >>
>> >>    http://localhost:8080/engines
>> >>
>> >> and click on REST API in the right top corner.
>> >>
>> >> Here a small example using Apache Commons IOUtils and the normal
>> >> java.net classes
>> >>
>> >>        URL url = new URL("http://localhost:8080/engines");
>> >>        HttpURLConnection con = (HttpURLConnection)url.openConnection();
>> >>        con.setDoOutput(true);
>> >>        con.setRequestMethod("POST");
>> >>        con.setRequestProperty("Accept", "application/rdf+xml");
>> >>        con.setRequestProperty("Content-type", "text/plain");
>> >>        OutputStream out = con.getOutputStream();
>> >>        IOUtils.write("The text to enhance", out);
>> >>        IOUtils.closeQuietly(out);
>> >>        con.connect(); //send the request
>> >>        if(con.getResponseCode() > 299){ //assume an error
>> >>            //error response
>> >>            InputStream errorStream = con.getErrorStream();
>> >>            if(errorStream != null){
>> >>                String errorMessage = IOUtils.toString(errorStream);
>> >>                IOUtils.closeQuietly(errorStream);
>> >>                //write a error message
>> >>            } else { //no error data
>> >>                //write default error message with the status code
>> >>            }
>> >>        } else { //get the enhancement results
>> >>            InputStream enhancementResults = con.getInputStream();
>> >>            //parse this stream to the RDF/XML parser of the RDF
>> framework
>> >> of
>> >>            //you choice
>> >>        }
>> >>
>> >> best
>> >> Rupert
>> >>
>> >> > Best,
>> >> > Srecko Joksimovic
>> >> > On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler
>> >> > <ru...@gmail.com> wrote:
>> >> >>
>> >> >> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
>> >> >> <sr...@gmail.com> wrote:
>> >> >> > Hi,
>> >> >> > I have to ask again...
>> >> >> > I posted this command: curl -X POST -d "name=Optimization"
>> >> >> > http://localhost:8080/entityhub/find
>> >> >> > and the result is as follows:
>> >> >> > {
>> >> >> >     "query": {
>> >> >> >         "selected": [
>> >> >> >
>> >> >> > "http:\/\/www.iks-project.eu
>> \/ontology\/rick\/model\/description",
>> >> >> >
>> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
>> >> >> >
>> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>> >> >> >         ],
>> >> >> >         "constraints": [{
>> >> >> >             "type": "text",
>> >> >> >             "patternType": "wildcard",
>> >> >> >             "text": "Optimization",
>> >> >> >             "field":
>> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>> >> >>
>> >> >> Looks like that the default search field for the Entityhub is still
>> >> >> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
>> >> >> rdfs:label.
>> >> >>
>> >> >> I was in the impression that I have changed that some time ago to
>> >> >> "rdfs:label" as it is the case for ReferencedSites.
>> >> >>
>> >> >> In that case you need to explicitly parse rdfs:label as field as in
>> the
>> >> >> following example
>> >> >>
>> >> >>    curl -X POST -d
>> >> >> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label
>> "
>> >> >> http://localhost:8080/entityhub/find
>> >> >>
>> >> >> best
>> >> >> Rupert
>> >> >>
>> >> >> >         }],
>> >> >> >         "limit": 5,
>> >> >> >         "offset": 0
>> >> >> >     },
>> >> >> >     "results": []
>> >> >> > }
>> >> >> > I did something wrong, but I am not sure what. Could you please
>> help
>> >> >> > me
>> >> >> > on
>> >> >> > this one?
>> >> >> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
>> >> >> > <ru...@gmail.com> wrote:
>> >> >> >>
>> >> >> >> Hi
>> >> >> >>
>> >> >> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
>> >> >> >> <sr...@gmail.com> wrote:
>> >> >> >> > Thank you!
>> >> >> >> > Now I got message which says:
>> >> >> >> > Unable to create an Entity that does already exist
>> >> >> >>
>> >> >> >> This simple tells you that an Entity you tried to create already
>> >> >> >> existed.
>> >> >> >> So I assume that a previous import of your Ontology was
>> successful.
>> >> >> >>
>> >> >> >> > as I understand, this means that I did it right first time. How
>> I
>> >> >> >> > can
>> >> >> >> > read
>> >> >> >> > ID of this Entity? I did not use -v switch first time when I
>> tried
>> >> >> >> > upload,
>> >> >> >> > and now I do not know ID. Or maybe I do, but I am not aware of
>> >> >> >> > that...
>> >> >> >>
>> >> >> >> You should know the URIs of the concepts in your Ontology.
>> >> >> >>
>> >> >> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
>> >> >> >>
>> >> >> >> If you know some labels you can also use the query service
>> >> >> >>
>> >> >> >>    curl -X POST -d "name={label}"
>> >> >> >> http://localhost:8080/entityhub/find
>> >> >> >>
>> >> >> >> name takes wildcard searches such as "Her?a*" and reaches for
>> values
>> >> >> >> of the "rdfs:label" property.
>> >> >> >>
>> >> >> >> if you want to search labels for properties other than
>> "rdfs:label"
>> >> >> >> you can use the field parameter.
>> >> >> >> Here an example for searching all Persons with a "foaf:name"
>> "Ivan*"
>> >> >> >>
>> >> >> >>    curl -X POST -d "name=Ivan*&field=
>> http://xmlns.com/foaf/0.1/name"
>> >> >> >> http://localhost:8080/entityhub/find
>> >> >> >>
>> >> >> >>
>> >> >> >> As an alternative you could also use the query interface as
>> >> >> >> described
>> >> >> >> on
>> >> >> >>
>> >> >> >> http://localhost:8080/entityhub/query
>> >> >> >>
>> >> >> >> best
>> >> >> >> Rupert
>> >> >> >>
>> >> >> >> > And only one more simple question... Could you please provide
>> me a
>> >> >> >> > code
>> >> >> >> > example? I will try to search archive, or other resources that
>> you
>> >> >> >> > gave
>> >> >> >> > me.
>> >> >> >> > Anyway, I would be grateful if you could help me.
>> >> >> >> > Once again, thank you very much!
>> >> >> >> > Best,
>> >> >> >> > Srecko Joksimovic
>> >> >> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
>> >> >> >> > <ru...@gmail.com> wrote:
>> >> >> >> >>
>> >> >> >> >> Hi
>> >> >> >> >>
>> >> >> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
>> >> >> >> >> <sr...@gmail.com> wrote:
>> >> >> >> >> > Hello Mr Westenthaler,
>> >> >> >> >> > I have configured Apache Stanbol. I can access services
>> using
>> >> >> >> >> > http://localhost:8080. I tried to do steps that you
>> described,
>> >> >> >> >> > and
>> >> >> >> >> > I
>> >> >> >> >> > did
>> >> >> >> >> > not
>> >> >> >> >> > have a problem with step 2, but I am not sure that I did
>> step
>> >> >> >> >> > 1 correctly.
>> >> >> >> >> > When I issued command like this one:
>> >> >> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> >> >> > "@acm_ccs-proton_rdfxml.owl"
>> >> >> >> >> > http://localhost:8080/entityhub/entity
>> >> >> >> >> > I got response:
>> >> >> >> >> > curl: (52) Empty reply from server
>> >> >> >> >> > This file which I am trying to upload is almost 1MB big. It
>> >> >> >> >> > should
>> >> >> >> >> > not
>> >> >> >> >> > be a
>> >> >> >> >> > problem with memory.
>> >> >> >> >> > Do you have any idea what could be a problem? How I can
>> check
>> >> >> >> >> > that
>> >> >> >> >> > I
>> >> >> >> >> > did
>> >> >> >> >> > the
>> >> >> >> >> > job correctly?
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> when you add the '-v' switch to 'curl' than you should see the
>> >> >> >> >> returned HTTP status code of the response.
>> >> >> >> >>
>> >> >> >> >> In case of a success the server returns a "201 Created" and
>> the
>> >> >> >> >> ID
>> >> >> >> >> of
>> >> >> >> >> the first created entity in the
>> >> >> >> >> Location header field
>> >> >> >> >>
>> >> >> >> >> here an example of an response after importing the FOAF file
>> of
>> >> >> >> >> Ivan
>> >> >> >> >> Herman
>> >> >> >> >>
>> >> >> >> >> < HTTP/1.1 201 Created
>> >> >> >> >> < Location:
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
>> >> >> >> >>
>> >> >> >> >> with a simple curl request to the url returned for the
>> Location
>> >> >> >> >> header
>> >> >> >> >> you can easily test the imported data for this entity. To test
>> >> >> >> >> other
>> >> >> >> >> resources simple exchange the URI.
>> >> >> >> >>
>> >> >> >> >> best
>> >> >> >> >> Rupert Westenthaler
>> >> >> >> >>
>> >> >> >> >> > Best,
>> >> >> >> >> > Srecko Joksimovic
>> >> >> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
>> >> >> >> >> > <ru...@gmail.com> wrote:
>> >> >> >> >> >>
>> >> >> >> >> >> Hallo Mr Srecko Joksimovic
>> >> >> >> >> >>
>> >> >> >> >> >> Two initial Notes:
>> >> >> >> >> >>
>> >> >> >> >> >> * I am sending this also to the stanbol-dev list, because I
>> am
>> >> >> >> >> >> on
>> >> >> >> >> >> vacation until end of August and will only read/answer
>> mails
>> >> >> >> >> >> from
>> >> >> >> >> >> time
>> >> >> >> >> >> to time until than. So maybe others of the Stanbol
>> community
>> >> >> >> >> >> will
>> >> >> >> >> >> be
>> >> >> >> >> >> able to answer questions more quickly then myself.
>> >> >> >> >> >> * I am sending this reply via my gmail account, because
>> >> >> >> >> >> somehow I
>> >> >> >> >> >> am
>> >> >> >> >> >> not able to connect to the SMTP server of
>> salzburgresearch.at.
>> >> >> >> >> >>
>> >> >> >> >> >> - - -
>> >> >> >> >> >>
>> >> >> >> >> >> Actually this is possible by using the
>> TaxonomyLinkingEngine
>> >> >> >> >> >> that
>> >> >> >> >> >> is
>> >> >> >> >> >> currently in development.
>> >> >> >> >> >>
>> >> >> >> >> >> Basically there are two steps:
>> >> >> >> >> >>
>> >> >> >> >> >> (1) upload your Ontology to the Entityhub
>> >> >> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to
>> use
>> >> >> >> >> >> your
>> >> >> >> >> >> ontology (as stored by the Entityhub) to enhance your
>> >> >> >> >> >> documents
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >> for (1) there are two possibilities
>> >> >> >> >> >>
>> >> >> >> >> >> (1a) upload your ontology directly to the "/entityhub"
>> >> >> >> >> >>
>> >> >> >> >> >> If you have a Stanbol instance running at
>> >> >> >> >> >> "http://localhost:8080/"
>> >> >> >> >> >> the
>> >> >> >> >> >> followng curl command can be used to upload an RDF graph
>> (such
>> >> >> >> >> >> as
>> >> >> >> >> >> your
>> >> >> >> >> >> ontology)
>> >> >> >> >> >>
>> >> >> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>> >> >> >> >> >>
>> >> >> >> >> >> This assumes that your Ontology is encoded as
>> >> >> >> >> >> "application/rdf+xml".
>> >> >> >> >> >> {rdfXmlFile} denotes to the path to the file on the local
>> file
>> >> >> >> >> >> system.
>> >> >> >> >> >> Please also have a look at [1] for a more detailed
>> description
>> >> >> >> >> >> on
>> >> >> >> >> >> how
>> >> >> >> >> >> to upload RDF data to the "/entityhub" endpoint.
>> >> >> >> >> >>
>> >> >> >> >> >> (1b) manage the RDF data as an own ReferencedSite
>> >> >> >> >> >>
>> >> >> >> >> >> The Entityhub also supports the configuration of so called
>> >> >> >> >> >> ReferencedSites. This allows to manage different RDF
>> datasets
>> >> >> >> >> >> (e.g.
>> >> >> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your
>> ontology,
>> >> >> >> >> >> ...).
>> >> >> >> >> >> Such sites are read-only and accessible under
>> >> >> >> >> >> http://localhost:8080/entityhub/site/{siteId}
>> >> >> >> >> >>
>> >> >> >> >> >> Stanbol also includes an indexing tool that helps you in
>> >> >> >> >> >> creating
>> >> >> >> >> >> such
>> >> >> >> >> >> "referencedSites" for local datasets (such as your
>> Ontology).
>> >> >> >> >> >> A
>> >> >> >> >> >> detailed description of this process can be found at [3].
>> [2]
>> >> >> >> >> >> is
>> >> >> >> >> >> a
>> >> >> >> >> >> specific configuration of [3] for the IPTC thesaurus.
>> >> >> >> >> >>
>> >> >> >> >> >> In general for testing I would suggest to use (1a) because
>> it
>> >> >> >> >> >> is
>> >> >> >> >> >> much
>> >> >> >> >> >> easer to start with. However (1a) will require to load your
>> >> >> >> >> >> ontology
>> >> >> >> >> >> in memory therefore it will not work for big datasets. In
>> >> >> >> >> >> addition
>> >> >> >> >> >> (1b) allows you to optimize your ontology (by defining
>> >> >> >> >> >> mappings)
>> >> >> >> >> >> during the indexing process and it gives you the
>> possibility
>> >> >> >> >> >> to
>> >> >> >> >> >> use
>> >> >> >> >> >> different Ontologies for enhancing your content. Therefore
>> for
>> >> >> >> >> >> more
>> >> >> >> >> >> complex usage scenarios option (1b) is typically the better
>> >> >> >> >> >> solution.
>> >> >> >> >> >>
>> >> >> >> >> >> (2) Configure the TaxonomylinkingEngine
>> >> >> >> >> >>
>> >> >> >> >> >> This Engine is by default included in the Full launcher of
>> >> >> >> >> >> Stanbol.
>> >> >> >> >> >> If
>> >> >> >> >> >> you prefer the stable launcher you will need to manually
>> >> >> >> >> >> install
>> >> >> >> >> >> it
>> >> >> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
>> >> >> >> >> >> http://localhost:8080/system/console default user: admin
>> pwd:
>> >> >> >> >> >> admin).
>> >> >> >> >> >> The bundle to install can be found at
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>> >> >> >> >> >>
>> >> >> >> >> >> Assuming a running Stanbol Instance that includes the
>> >> >> >> >> >> TaxonomyLinkingEngine the following steps are required for
>> the
>> >> >> >> >> >> configuration:
>> >> >> >> >> >> 1. go the "configuration tab"
>> >> >> >> >> >> (http://localhost:8080/system/console/configMgr)
>> >> >> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for
>> Taxonomy
>> >> >> >> >> >> linking"
>> >> >> >> >> >> 3. pres on the [+] button on the end of this line (this
>> will
>> >> >> >> >> >> open
>> >> >> >> >> >> the
>> >> >> >> >> >> dialog to configure a new instance of this engine)
>> >> >> >> >> >> 4. configure the source. If you used (1a) put "entityhub"
>> in
>> >> >> >> >> >> case
>> >> >> >> >> >> of
>> >> >> >> >> >> (1b) you must enter the siteId of the referenced site.
>> >> >> >> >> >> 5. configure the property used to search for labels of the
>> >> >> >> >> >> concepts
>> >> >> >> >> >> in
>> >> >> >> >> >> your Ontology. The default is rdfs:label (typically used
>> for
>> >> >> >> >> >> labeling
>> >> >> >> >> >> concepts within ontologies, but you might also want to use
>> a
>> >> >> >> >> >> different
>> >> >> >> >> >> one based on your ontology
>> >> >> >> >> >>
>> >> >> >> >> >> I would not recommend to change any other properties
>> because
>> >> >> >> >> >> this
>> >> >> >> >> >> engine is currently under development and changes to this
>> >> >> >> >> >> values
>> >> >> >> >> >> might
>> >> >> >> >> >> not be implemented or even worse break this engine.
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >> best
>> >> >> >> >> >> Rupert Westenthaler
>> >> >> >> >> >>
>> >> >> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
>> >> >> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
>> >> >> >> >> >> [3]
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >>
>> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>> >> >> >> >> >>
>> >> >> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
>> >> >> >> >> >> <sr...@gmail.com>:
>> >> >> >> >> >> >
>> >> >> >> >> >> > Hello Mr Westenthaler,
>> >> >> >> >> >> >
>> >> >> >> >> >> > Mr Pereira gave me your contact, in order to ask you a
>> few
>> >> >> >> >> >> > questions
>> >> >> >> >> >> > about
>> >> >> >> >> >> > Apache Stanbol. I suppose that you have received Mr
>> >> >> >> >> >> > Pereira's
>> >> >> >> >> >> > email
>> >> >> >> >> >> > which he
>> >> >> >> >> >> > sent to me, and you maybe already know what the problem
>> is.
>> >> >> >> >> >> >
>> >> >> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea
>> is
>> >> >> >> >> >> > to
>> >> >> >> >> >> > load
>> >> >> >> >> >> > my
>> >> >> >> >> >> > ontology, and than to call method which is going to
>> annotate
>> >> >> >> >> >> > provided
>> >> >> >> >> >> > text,
>> >> >> >> >> >> > based on loaded ontology. Could you please explain to me
>> how
>> >> >> >> >> >> > to
>> >> >> >> >> >> > implement
>> >> >> >> >> >> > scenario which I described using Apache Stanbol? If you
>> >> >> >> >> >> > could
>> >> >> >> >> >> > provide
>> >> >> >> >> >> > me
>> >> >> >> >> >> > a
>> >> >> >> >> >> > code example, I would be very grateful.
>> >> >> >> >> >> >
>> >> >> >> >> >> > Thank you very much.
>> >> >> >> >> >> >
>> >> >> >> >> >> > Best,
>> >> >> >> >> >> > Srecko Joksimovic
>> >> >> >> >> >>
>> >> >> >> >> >> --
>> >> >> >> >> >> | Rupert Westenthaler
>> >> >> >> >> >> rupert.westenthaler@gmail.com
>> >> >> >> >> >> | Bodenlehenstraße 11
>> >> >> >> >> >> ++43-699-11108907
>> >> >> >> >> >> | A-5500 Bischofshofen
>> >> >> >> >> >
>> >> >> >> >> >
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> --
>> >> >> >> >> | Rupert Westenthaler
>> rupert.westenthaler@gmail.com
>> >> >> >> >> | Bodenlehenstraße 11
>> >> >> >> >> ++43-699-11108907
>> >> >> >> >> | A-5500 Bischofshofen
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> >> | Bodenlehenstraße 11
>> ++43-699-11108907
>> >> >> >> | A-5500 Bischofshofen
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> >> | A-5500 Bischofshofen
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> | A-5500 Bischofshofen
>> >>
>> >
>> >
>>
>>
>>
>> --
>> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> | Bodenlehenstraße 11                             ++43-699-11108907
>> | A-5500 Bischofshofen
>>
>
>

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Thank you very much for the answer!

I did not know for this way, but I have find a solution. But, I will have to
try this one.

Best,
Srecko Joksimovic

On Mon, Aug 29, 2011 at 2:59 PM, Rupert Westenthaler <
rupert.westenthaler@gmail.com> wrote:

> On Wed, Aug 17, 2011 at 11:46 AM, srecko joksimovic
> <sr...@gmail.com> wrote:
> > Hi,
> > I have to say that everything works perfectly!
>
> good to hear
>
> > I can find there both of my concepts mentioned in the sentence. I also
> have
> > "
> http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
> "
> > But, could you please tell me if it is possible to get
> > http://www.lornet.org/acm-ccs/proton#A.2 ?
> > What should I do to get Class in result, and not just Alias?
>
> Sorry, but this is not possible. The stanbol enhancer will always
> include the Resource that defines the label and this is the Alias.
> As a workaround you could use the Entityhub to query for the Class of
> the returned Alias.
>
> Based on the provided excerpt of your Ontology parsing this JSON
> FieldQuery to the query service of the Entityhub
> (http://localhost:8080/entityhub/query) should provide the Class for
> the Alias.
>
>    {
>    "constraints": [{
>        "type": "reference",
>        "field": "http://www.lornet.org/acm-ccs/proton#hasMainAlias",
>        "value":
> "
> http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
> ",
>         }]
>    }
>
> best
> Rupert
>
> > Best,
> > Srecko Joksimovic
> > On Mon, Aug 15, 2011 at 8:18 PM, Srecko Joksimovic
> > <sr...@gmail.com> wrote:
> >>
> >> Hi,
> >> I will have to try this, as soon as possible, but I am sure it will be
> >> alright.
> >>
> >> Thank you very much!
> >>
> >> Best,
> >> Srecko Joksimovic
> >>
> >> -----Original Message-----
> >> From: Rupert Westenthaler [mailto:rupert.westenthaler@gmail.com]
> >> Sent: Monday, August 15, 2011 16:43
> >> To: srecko joksimovic; stanbol-dev@incubator.apache.org
> >> Subject: Re: Apache Stanbol
> >>
> >> On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic
> >> <sr...@gmail.com> wrote:
> >> > That was the problem! Great! It works now.
> >> > Still, my old (boring) question... how to access service from Java
> >> > application and post string which I would like to annotate? I know how
> >> > to
> >> > implement service client, but could you describe me the process in
> this
> >> > case?
> >>
> >> to send text to the stanbol enhancer you need to use the /engines
> endpoint
> >>
> >> For the documentation go to
> >>
> >>    http://localhost:8080/engines
> >>
> >> and click on REST API in the right top corner.
> >>
> >> Here a small example using Apache Commons IOUtils and the normal
> >> java.net classes
> >>
> >>        URL url = new URL("http://localhost:8080/engines");
> >>        HttpURLConnection con = (HttpURLConnection)url.openConnection();
> >>        con.setDoOutput(true);
> >>        con.setRequestMethod("POST");
> >>        con.setRequestProperty("Accept", "application/rdf+xml");
> >>        con.setRequestProperty("Content-type", "text/plain");
> >>        OutputStream out = con.getOutputStream();
> >>        IOUtils.write("The text to enhance", out);
> >>        IOUtils.closeQuietly(out);
> >>        con.connect(); //send the request
> >>        if(con.getResponseCode() > 299){ //assume an error
> >>            //error response
> >>            InputStream errorStream = con.getErrorStream();
> >>            if(errorStream != null){
> >>                String errorMessage = IOUtils.toString(errorStream);
> >>                IOUtils.closeQuietly(errorStream);
> >>                //write a error message
> >>            } else { //no error data
> >>                //write default error message with the status code
> >>            }
> >>        } else { //get the enhancement results
> >>            InputStream enhancementResults = con.getInputStream();
> >>            //parse this stream to the RDF/XML parser of the RDF
> framework
> >> of
> >>            //you choice
> >>        }
> >>
> >> best
> >> Rupert
> >>
> >> > Best,
> >> > Srecko Joksimovic
> >> > On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler
> >> > <ru...@gmail.com> wrote:
> >> >>
> >> >> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
> >> >> <sr...@gmail.com> wrote:
> >> >> > Hi,
> >> >> > I have to ask again...
> >> >> > I posted this command: curl -X POST -d "name=Optimization"
> >> >> > http://localhost:8080/entityhub/find
> >> >> > and the result is as follows:
> >> >> > {
> >> >> >     "query": {
> >> >> >         "selected": [
> >> >> >
> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
> >> >> >
> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
> >> >> >
> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
> >> >> >         ],
> >> >> >         "constraints": [{
> >> >> >             "type": "text",
> >> >> >             "patternType": "wildcard",
> >> >> >             "text": "Optimization",
> >> >> >             "field":
> >> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
> >> >>
> >> >> Looks like that the default search field for the Entityhub is still
> >> >> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
> >> >> rdfs:label.
> >> >>
> >> >> I was in the impression that I have changed that some time ago to
> >> >> "rdfs:label" as it is the case for ReferencedSites.
> >> >>
> >> >> In that case you need to explicitly parse rdfs:label as field as in
> the
> >> >> following example
> >> >>
> >> >>    curl -X POST -d
> >> >> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
> >> >> http://localhost:8080/entityhub/find
> >> >>
> >> >> best
> >> >> Rupert
> >> >>
> >> >> >         }],
> >> >> >         "limit": 5,
> >> >> >         "offset": 0
> >> >> >     },
> >> >> >     "results": []
> >> >> > }
> >> >> > I did something wrong, but I am not sure what. Could you please
> help
> >> >> > me
> >> >> > on
> >> >> > this one?
> >> >> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
> >> >> > <ru...@gmail.com> wrote:
> >> >> >>
> >> >> >> Hi
> >> >> >>
> >> >> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
> >> >> >> <sr...@gmail.com> wrote:
> >> >> >> > Thank you!
> >> >> >> > Now I got message which says:
> >> >> >> > Unable to create an Entity that does already exist
> >> >> >>
> >> >> >> This simple tells you that an Entity you tried to create already
> >> >> >> existed.
> >> >> >> So I assume that a previous import of your Ontology was
> successful.
> >> >> >>
> >> >> >> > as I understand, this means that I did it right first time. How
> I
> >> >> >> > can
> >> >> >> > read
> >> >> >> > ID of this Entity? I did not use -v switch first time when I
> tried
> >> >> >> > upload,
> >> >> >> > and now I do not know ID. Or maybe I do, but I am not aware of
> >> >> >> > that...
> >> >> >>
> >> >> >> You should know the URIs of the concepts in your Ontology.
> >> >> >>
> >> >> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
> >> >> >>
> >> >> >> If you know some labels you can also use the query service
> >> >> >>
> >> >> >>    curl -X POST -d "name={label}"
> >> >> >> http://localhost:8080/entityhub/find
> >> >> >>
> >> >> >> name takes wildcard searches such as "Her?a*" and reaches for
> values
> >> >> >> of the "rdfs:label" property.
> >> >> >>
> >> >> >> if you want to search labels for properties other than
> "rdfs:label"
> >> >> >> you can use the field parameter.
> >> >> >> Here an example for searching all Persons with a "foaf:name"
> "Ivan*"
> >> >> >>
> >> >> >>    curl -X POST -d "name=Ivan*&field=
> http://xmlns.com/foaf/0.1/name"
> >> >> >> http://localhost:8080/entityhub/find
> >> >> >>
> >> >> >>
> >> >> >> As an alternative you could also use the query interface as
> >> >> >> described
> >> >> >> on
> >> >> >>
> >> >> >> http://localhost:8080/entityhub/query
> >> >> >>
> >> >> >> best
> >> >> >> Rupert
> >> >> >>
> >> >> >> > And only one more simple question... Could you please provide me
> a
> >> >> >> > code
> >> >> >> > example? I will try to search archive, or other resources that
> you
> >> >> >> > gave
> >> >> >> > me.
> >> >> >> > Anyway, I would be grateful if you could help me.
> >> >> >> > Once again, thank you very much!
> >> >> >> > Best,
> >> >> >> > Srecko Joksimovic
> >> >> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
> >> >> >> > <ru...@gmail.com> wrote:
> >> >> >> >>
> >> >> >> >> Hi
> >> >> >> >>
> >> >> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
> >> >> >> >> <sr...@gmail.com> wrote:
> >> >> >> >> > Hello Mr Westenthaler,
> >> >> >> >> > I have configured Apache Stanbol. I can access services using
> >> >> >> >> > http://localhost:8080. I tried to do steps that you
> described,
> >> >> >> >> > and
> >> >> >> >> > I
> >> >> >> >> > did
> >> >> >> >> > not
> >> >> >> >> > have a problem with step 2, but I am not sure that I did step
> >> >> >> >> > 1 correctly.
> >> >> >> >> > When I issued command like this one:
> >> >> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> >> >> >> > "@acm_ccs-proton_rdfxml.owl"
> >> >> >> >> > http://localhost:8080/entityhub/entity
> >> >> >> >> > I got response:
> >> >> >> >> > curl: (52) Empty reply from server
> >> >> >> >> > This file which I am trying to upload is almost 1MB big. It
> >> >> >> >> > should
> >> >> >> >> > not
> >> >> >> >> > be a
> >> >> >> >> > problem with memory.
> >> >> >> >> > Do you have any idea what could be a problem? How I can check
> >> >> >> >> > that
> >> >> >> >> > I
> >> >> >> >> > did
> >> >> >> >> > the
> >> >> >> >> > job correctly?
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> when you add the '-v' switch to 'curl' than you should see the
> >> >> >> >> returned HTTP status code of the response.
> >> >> >> >>
> >> >> >> >> In case of a success the server returns a "201 Created" and the
> >> >> >> >> ID
> >> >> >> >> of
> >> >> >> >> the first created entity in the
> >> >> >> >> Location header field
> >> >> >> >>
> >> >> >> >> here an example of an response after importing the FOAF file of
> >> >> >> >> Ivan
> >> >> >> >> Herman
> >> >> >> >>
> >> >> >> >> < HTTP/1.1 201 Created
> >> >> >> >> < Location:
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
> >> >> >> >>
> >> >> >> >> with a simple curl request to the url returned for the Location
> >> >> >> >> header
> >> >> >> >> you can easily test the imported data for this entity. To test
> >> >> >> >> other
> >> >> >> >> resources simple exchange the URI.
> >> >> >> >>
> >> >> >> >> best
> >> >> >> >> Rupert Westenthaler
> >> >> >> >>
> >> >> >> >> > Best,
> >> >> >> >> > Srecko Joksimovic
> >> >> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
> >> >> >> >> > <ru...@gmail.com> wrote:
> >> >> >> >> >>
> >> >> >> >> >> Hallo Mr Srecko Joksimovic
> >> >> >> >> >>
> >> >> >> >> >> Two initial Notes:
> >> >> >> >> >>
> >> >> >> >> >> * I am sending this also to the stanbol-dev list, because I
> am
> >> >> >> >> >> on
> >> >> >> >> >> vacation until end of August and will only read/answer mails
> >> >> >> >> >> from
> >> >> >> >> >> time
> >> >> >> >> >> to time until than. So maybe others of the Stanbol community
> >> >> >> >> >> will
> >> >> >> >> >> be
> >> >> >> >> >> able to answer questions more quickly then myself.
> >> >> >> >> >> * I am sending this reply via my gmail account, because
> >> >> >> >> >> somehow I
> >> >> >> >> >> am
> >> >> >> >> >> not able to connect to the SMTP server of
> salzburgresearch.at.
> >> >> >> >> >>
> >> >> >> >> >> - - -
> >> >> >> >> >>
> >> >> >> >> >> Actually this is possible by using the TaxonomyLinkingEngine
> >> >> >> >> >> that
> >> >> >> >> >> is
> >> >> >> >> >> currently in development.
> >> >> >> >> >>
> >> >> >> >> >> Basically there are two steps:
> >> >> >> >> >>
> >> >> >> >> >> (1) upload your Ontology to the Entityhub
> >> >> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to
> use
> >> >> >> >> >> your
> >> >> >> >> >> ontology (as stored by the Entityhub) to enhance your
> >> >> >> >> >> documents
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> for (1) there are two possibilities
> >> >> >> >> >>
> >> >> >> >> >> (1a) upload your ontology directly to the "/entityhub"
> >> >> >> >> >>
> >> >> >> >> >> If you have a Stanbol instance running at
> >> >> >> >> >> "http://localhost:8080/"
> >> >> >> >> >> the
> >> >> >> >> >> followng curl command can be used to upload an RDF graph
> (such
> >> >> >> >> >> as
> >> >> >> >> >> your
> >> >> >> >> >> ontology)
> >> >> >> >> >>
> >> >> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> >> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
> >> >> >> >> >>
> >> >> >> >> >> This assumes that your Ontology is encoded as
> >> >> >> >> >> "application/rdf+xml".
> >> >> >> >> >> {rdfXmlFile} denotes to the path to the file on the local
> file
> >> >> >> >> >> system.
> >> >> >> >> >> Please also have a look at [1] for a more detailed
> description
> >> >> >> >> >> on
> >> >> >> >> >> how
> >> >> >> >> >> to upload RDF data to the "/entityhub" endpoint.
> >> >> >> >> >>
> >> >> >> >> >> (1b) manage the RDF data as an own ReferencedSite
> >> >> >> >> >>
> >> >> >> >> >> The Entityhub also supports the configuration of so called
> >> >> >> >> >> ReferencedSites. This allows to manage different RDF
> datasets
> >> >> >> >> >> (e.g.
> >> >> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your
> ontology,
> >> >> >> >> >> ...).
> >> >> >> >> >> Such sites are read-only and accessible under
> >> >> >> >> >> http://localhost:8080/entityhub/site/{siteId}
> >> >> >> >> >>
> >> >> >> >> >> Stanbol also includes an indexing tool that helps you in
> >> >> >> >> >> creating
> >> >> >> >> >> such
> >> >> >> >> >> "referencedSites" for local datasets (such as your
> Ontology).
> >> >> >> >> >> A
> >> >> >> >> >> detailed description of this process can be found at [3].
> [2]
> >> >> >> >> >> is
> >> >> >> >> >> a
> >> >> >> >> >> specific configuration of [3] for the IPTC thesaurus.
> >> >> >> >> >>
> >> >> >> >> >> In general for testing I would suggest to use (1a) because
> it
> >> >> >> >> >> is
> >> >> >> >> >> much
> >> >> >> >> >> easer to start with. However (1a) will require to load your
> >> >> >> >> >> ontology
> >> >> >> >> >> in memory therefore it will not work for big datasets. In
> >> >> >> >> >> addition
> >> >> >> >> >> (1b) allows you to optimize your ontology (by defining
> >> >> >> >> >> mappings)
> >> >> >> >> >> during the indexing process and it gives you the possibility
> >> >> >> >> >> to
> >> >> >> >> >> use
> >> >> >> >> >> different Ontologies for enhancing your content. Therefore
> for
> >> >> >> >> >> more
> >> >> >> >> >> complex usage scenarios option (1b) is typically the better
> >> >> >> >> >> solution.
> >> >> >> >> >>
> >> >> >> >> >> (2) Configure the TaxonomylinkingEngine
> >> >> >> >> >>
> >> >> >> >> >> This Engine is by default included in the Full launcher of
> >> >> >> >> >> Stanbol.
> >> >> >> >> >> If
> >> >> >> >> >> you prefer the stable launcher you will need to manually
> >> >> >> >> >> install
> >> >> >> >> >> it
> >> >> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
> >> >> >> >> >> http://localhost:8080/system/console default user: admin
> pwd:
> >> >> >> >> >> admin).
> >> >> >> >> >> The bundle to install can be found at
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
> >> >> >> >> >>
> >> >> >> >> >> Assuming a running Stanbol Instance that includes the
> >> >> >> >> >> TaxonomyLinkingEngine the following steps are required for
> the
> >> >> >> >> >> configuration:
> >> >> >> >> >> 1. go the "configuration tab"
> >> >> >> >> >> (http://localhost:8080/system/console/configMgr)
> >> >> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for
> Taxonomy
> >> >> >> >> >> linking"
> >> >> >> >> >> 3. pres on the [+] button on the end of this line (this will
> >> >> >> >> >> open
> >> >> >> >> >> the
> >> >> >> >> >> dialog to configure a new instance of this engine)
> >> >> >> >> >> 4. configure the source. If you used (1a) put "entityhub" in
> >> >> >> >> >> case
> >> >> >> >> >> of
> >> >> >> >> >> (1b) you must enter the siteId of the referenced site.
> >> >> >> >> >> 5. configure the property used to search for labels of the
> >> >> >> >> >> concepts
> >> >> >> >> >> in
> >> >> >> >> >> your Ontology. The default is rdfs:label (typically used for
> >> >> >> >> >> labeling
> >> >> >> >> >> concepts within ontologies, but you might also want to use a
> >> >> >> >> >> different
> >> >> >> >> >> one based on your ontology
> >> >> >> >> >>
> >> >> >> >> >> I would not recommend to change any other properties because
> >> >> >> >> >> this
> >> >> >> >> >> engine is currently under development and changes to this
> >> >> >> >> >> values
> >> >> >> >> >> might
> >> >> >> >> >> not be implemented or even worse break this engine.
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> best
> >> >> >> >> >> Rupert Westenthaler
> >> >> >> >> >>
> >> >> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
> >> >> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
> >> >> >> >> >> [3]
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
> >> >> >> >> >>
> >> >> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
> >> >> >> >> >> <sr...@gmail.com>:
> >> >> >> >> >> >
> >> >> >> >> >> > Hello Mr Westenthaler,
> >> >> >> >> >> >
> >> >> >> >> >> > Mr Pereira gave me your contact, in order to ask you a few
> >> >> >> >> >> > questions
> >> >> >> >> >> > about
> >> >> >> >> >> > Apache Stanbol. I suppose that you have received Mr
> >> >> >> >> >> > Pereira's
> >> >> >> >> >> > email
> >> >> >> >> >> > which he
> >> >> >> >> >> > sent to me, and you maybe already know what the problem
> is.
> >> >> >> >> >> >
> >> >> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is
> >> >> >> >> >> > to
> >> >> >> >> >> > load
> >> >> >> >> >> > my
> >> >> >> >> >> > ontology, and than to call method which is going to
> annotate
> >> >> >> >> >> > provided
> >> >> >> >> >> > text,
> >> >> >> >> >> > based on loaded ontology. Could you please explain to me
> how
> >> >> >> >> >> > to
> >> >> >> >> >> > implement
> >> >> >> >> >> > scenario which I described using Apache Stanbol? If you
> >> >> >> >> >> > could
> >> >> >> >> >> > provide
> >> >> >> >> >> > me
> >> >> >> >> >> > a
> >> >> >> >> >> > code example, I would be very grateful.
> >> >> >> >> >> >
> >> >> >> >> >> > Thank you very much.
> >> >> >> >> >> >
> >> >> >> >> >> > Best,
> >> >> >> >> >> > Srecko Joksimovic
> >> >> >> >> >>
> >> >> >> >> >> --
> >> >> >> >> >> | Rupert Westenthaler
> >> >> >> >> >> rupert.westenthaler@gmail.com
> >> >> >> >> >> | Bodenlehenstraße 11
> >> >> >> >> >> ++43-699-11108907
> >> >> >> >> >> | A-5500 Bischofshofen
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> | Rupert Westenthaler
> rupert.westenthaler@gmail.com
> >> >> >> >> | Bodenlehenstraße 11
> >> >> >> >> ++43-699-11108907
> >> >> >> >> | A-5500 Bischofshofen
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> >> >> | Bodenlehenstraße 11
> ++43-699-11108907
> >> >> >> | A-5500 Bischofshofen
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> >> | A-5500 Bischofshofen
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> | A-5500 Bischofshofen
> >>
> >
> >
>
>
>
> --
> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> | Bodenlehenstraße 11                             ++43-699-11108907
> | A-5500 Bischofshofen
>

Re: Apache Stanbol

Posted by Rupert Westenthaler <ru...@gmail.com>.
On Wed, Aug 17, 2011 at 11:46 AM, srecko joksimovic
<sr...@gmail.com> wrote:
> Hi,
> I have to say that everything works perfectly!

good to hear

> I can find there both of my concepts mentioned in the sentence. I also have
> "http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f"
> But, could you please tell me if it is possible to get
> http://www.lornet.org/acm-ccs/proton#A.2 ?
> What should I do to get Class in result, and not just Alias?

Sorry, but this is not possible. The stanbol enhancer will always
include the Resource that defines the label and this is the Alias.
As a workaround you could use the Entityhub to query for the Class of
the returned Alias.

Based on the provided excerpt of your Ontology parsing this JSON
FieldQuery to the query service of the Entityhub
(http://localhost:8080/entityhub/query) should provide the Class for
the Alias.

    {
    "constraints": [{
        "type": "reference",
        "field": "http://www.lornet.org/acm-ccs/proton#hasMainAlias",
        "value":
"http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f",
        }]
    }

best
Rupert

> Best,
> Srecko Joksimovic
> On Mon, Aug 15, 2011 at 8:18 PM, Srecko Joksimovic
> <sr...@gmail.com> wrote:
>>
>> Hi,
>> I will have to try this, as soon as possible, but I am sure it will be
>> alright.
>>
>> Thank you very much!
>>
>> Best,
>> Srecko Joksimovic
>>
>> -----Original Message-----
>> From: Rupert Westenthaler [mailto:rupert.westenthaler@gmail.com]
>> Sent: Monday, August 15, 2011 16:43
>> To: srecko joksimovic; stanbol-dev@incubator.apache.org
>> Subject: Re: Apache Stanbol
>>
>> On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic
>> <sr...@gmail.com> wrote:
>> > That was the problem! Great! It works now.
>> > Still, my old (boring) question... how to access service from Java
>> > application and post string which I would like to annotate? I know how
>> > to
>> > implement service client, but could you describe me the process in this
>> > case?
>>
>> to send text to the stanbol enhancer you need to use the /engines endpoint
>>
>> For the documentation go to
>>
>>    http://localhost:8080/engines
>>
>> and click on REST API in the right top corner.
>>
>> Here a small example using Apache Commons IOUtils and the normal
>> java.net classes
>>
>>        URL url = new URL("http://localhost:8080/engines");
>>        HttpURLConnection con = (HttpURLConnection)url.openConnection();
>>        con.setDoOutput(true);
>>        con.setRequestMethod("POST");
>>        con.setRequestProperty("Accept", "application/rdf+xml");
>>        con.setRequestProperty("Content-type", "text/plain");
>>        OutputStream out = con.getOutputStream();
>>        IOUtils.write("The text to enhance", out);
>>        IOUtils.closeQuietly(out);
>>        con.connect(); //send the request
>>        if(con.getResponseCode() > 299){ //assume an error
>>            //error response
>>            InputStream errorStream = con.getErrorStream();
>>            if(errorStream != null){
>>                String errorMessage = IOUtils.toString(errorStream);
>>                IOUtils.closeQuietly(errorStream);
>>                //write a error message
>>            } else { //no error data
>>                //write default error message with the status code
>>            }
>>        } else { //get the enhancement results
>>            InputStream enhancementResults = con.getInputStream();
>>            //parse this stream to the RDF/XML parser of the RDF framework
>> of
>>            //you choice
>>        }
>>
>> best
>> Rupert
>>
>> > Best,
>> > Srecko Joksimovic
>> > On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler
>> > <ru...@gmail.com> wrote:
>> >>
>> >> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
>> >> <sr...@gmail.com> wrote:
>> >> > Hi,
>> >> > I have to ask again...
>> >> > I posted this command: curl -X POST -d "name=Optimization"
>> >> > http://localhost:8080/entityhub/find
>> >> > and the result is as follows:
>> >> > {
>> >> >     "query": {
>> >> >         "selected": [
>> >> >
>> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
>> >> >
>> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
>> >> >
>> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>> >> >         ],
>> >> >         "constraints": [{
>> >> >             "type": "text",
>> >> >             "patternType": "wildcard",
>> >> >             "text": "Optimization",
>> >> >             "field":
>> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>> >>
>> >> Looks like that the default search field for the Entityhub is still
>> >> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
>> >> rdfs:label.
>> >>
>> >> I was in the impression that I have changed that some time ago to
>> >> "rdfs:label" as it is the case for ReferencedSites.
>> >>
>> >> In that case you need to explicitly parse rdfs:label as field as in the
>> >> following example
>> >>
>> >>    curl -X POST -d
>> >> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
>> >> http://localhost:8080/entityhub/find
>> >>
>> >> best
>> >> Rupert
>> >>
>> >> >         }],
>> >> >         "limit": 5,
>> >> >         "offset": 0
>> >> >     },
>> >> >     "results": []
>> >> > }
>> >> > I did something wrong, but I am not sure what. Could you please help
>> >> > me
>> >> > on
>> >> > this one?
>> >> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
>> >> > <ru...@gmail.com> wrote:
>> >> >>
>> >> >> Hi
>> >> >>
>> >> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
>> >> >> <sr...@gmail.com> wrote:
>> >> >> > Thank you!
>> >> >> > Now I got message which says:
>> >> >> > Unable to create an Entity that does already exist
>> >> >>
>> >> >> This simple tells you that an Entity you tried to create already
>> >> >> existed.
>> >> >> So I assume that a previous import of your Ontology was successful.
>> >> >>
>> >> >> > as I understand, this means that I did it right first time. How I
>> >> >> > can
>> >> >> > read
>> >> >> > ID of this Entity? I did not use -v switch first time when I tried
>> >> >> > upload,
>> >> >> > and now I do not know ID. Or maybe I do, but I am not aware of
>> >> >> > that...
>> >> >>
>> >> >> You should know the URIs of the concepts in your Ontology.
>> >> >>
>> >> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
>> >> >>
>> >> >> If you know some labels you can also use the query service
>> >> >>
>> >> >>    curl -X POST -d "name={label}"
>> >> >> http://localhost:8080/entityhub/find
>> >> >>
>> >> >> name takes wildcard searches such as "Her?a*" and reaches for values
>> >> >> of the "rdfs:label" property.
>> >> >>
>> >> >> if you want to search labels for properties other than "rdfs:label"
>> >> >> you can use the field parameter.
>> >> >> Here an example for searching all Persons with a "foaf:name" "Ivan*"
>> >> >>
>> >> >>    curl -X POST -d "name=Ivan*&field=http://xmlns.com/foaf/0.1/name"
>> >> >> http://localhost:8080/entityhub/find
>> >> >>
>> >> >>
>> >> >> As an alternative you could also use the query interface as
>> >> >> described
>> >> >> on
>> >> >>
>> >> >> http://localhost:8080/entityhub/query
>> >> >>
>> >> >> best
>> >> >> Rupert
>> >> >>
>> >> >> > And only one more simple question... Could you please provide me a
>> >> >> > code
>> >> >> > example? I will try to search archive, or other resources that you
>> >> >> > gave
>> >> >> > me.
>> >> >> > Anyway, I would be grateful if you could help me.
>> >> >> > Once again, thank you very much!
>> >> >> > Best,
>> >> >> > Srecko Joksimovic
>> >> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
>> >> >> > <ru...@gmail.com> wrote:
>> >> >> >>
>> >> >> >> Hi
>> >> >> >>
>> >> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
>> >> >> >> <sr...@gmail.com> wrote:
>> >> >> >> > Hello Mr Westenthaler,
>> >> >> >> > I have configured Apache Stanbol. I can access services using
>> >> >> >> > http://localhost:8080. I tried to do steps that you described,
>> >> >> >> > and
>> >> >> >> > I
>> >> >> >> > did
>> >> >> >> > not
>> >> >> >> > have a problem with step 2, but I am not sure that I did step
>> >> >> >> > 1 correctly.
>> >> >> >> > When I issued command like this one:
>> >> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> >> > "@acm_ccs-proton_rdfxml.owl"
>> >> >> >> > http://localhost:8080/entityhub/entity
>> >> >> >> > I got response:
>> >> >> >> > curl: (52) Empty reply from server
>> >> >> >> > This file which I am trying to upload is almost 1MB big. It
>> >> >> >> > should
>> >> >> >> > not
>> >> >> >> > be a
>> >> >> >> > problem with memory.
>> >> >> >> > Do you have any idea what could be a problem? How I can check
>> >> >> >> > that
>> >> >> >> > I
>> >> >> >> > did
>> >> >> >> > the
>> >> >> >> > job correctly?
>> >> >> >>
>> >> >> >>
>> >> >> >> when you add the '-v' switch to 'curl' than you should see the
>> >> >> >> returned HTTP status code of the response.
>> >> >> >>
>> >> >> >> In case of a success the server returns a "201 Created" and the
>> >> >> >> ID
>> >> >> >> of
>> >> >> >> the first created entity in the
>> >> >> >> Location header field
>> >> >> >>
>> >> >> >> here an example of an response after importing the FOAF file of
>> >> >> >> Ivan
>> >> >> >> Herman
>> >> >> >>
>> >> >> >> < HTTP/1.1 201 Created
>> >> >> >> < Location:
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
>> >> >> >>
>> >> >> >> with a simple curl request to the url returned for the Location
>> >> >> >> header
>> >> >> >> you can easily test the imported data for this entity. To test
>> >> >> >> other
>> >> >> >> resources simple exchange the URI.
>> >> >> >>
>> >> >> >> best
>> >> >> >> Rupert Westenthaler
>> >> >> >>
>> >> >> >> > Best,
>> >> >> >> > Srecko Joksimovic
>> >> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
>> >> >> >> > <ru...@gmail.com> wrote:
>> >> >> >> >>
>> >> >> >> >> Hallo Mr Srecko Joksimovic
>> >> >> >> >>
>> >> >> >> >> Two initial Notes:
>> >> >> >> >>
>> >> >> >> >> * I am sending this also to the stanbol-dev list, because I am
>> >> >> >> >> on
>> >> >> >> >> vacation until end of August and will only read/answer mails
>> >> >> >> >> from
>> >> >> >> >> time
>> >> >> >> >> to time until than. So maybe others of the Stanbol community
>> >> >> >> >> will
>> >> >> >> >> be
>> >> >> >> >> able to answer questions more quickly then myself.
>> >> >> >> >> * I am sending this reply via my gmail account, because
>> >> >> >> >> somehow I
>> >> >> >> >> am
>> >> >> >> >> not able to connect to the SMTP server of salzburgresearch.at.
>> >> >> >> >>
>> >> >> >> >> - - -
>> >> >> >> >>
>> >> >> >> >> Actually this is possible by using the TaxonomyLinkingEngine
>> >> >> >> >> that
>> >> >> >> >> is
>> >> >> >> >> currently in development.
>> >> >> >> >>
>> >> >> >> >> Basically there are two steps:
>> >> >> >> >>
>> >> >> >> >> (1) upload your Ontology to the Entityhub
>> >> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to use
>> >> >> >> >> your
>> >> >> >> >> ontology (as stored by the Entityhub) to enhance your
>> >> >> >> >> documents
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> for (1) there are two possibilities
>> >> >> >> >>
>> >> >> >> >> (1a) upload your ontology directly to the "/entityhub"
>> >> >> >> >>
>> >> >> >> >> If you have a Stanbol instance running at
>> >> >> >> >> "http://localhost:8080/"
>> >> >> >> >> the
>> >> >> >> >> followng curl command can be used to upload an RDF graph (such
>> >> >> >> >> as
>> >> >> >> >> your
>> >> >> >> >> ontology)
>> >> >> >> >>
>> >> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>> >> >> >> >>
>> >> >> >> >> This assumes that your Ontology is encoded as
>> >> >> >> >> "application/rdf+xml".
>> >> >> >> >> {rdfXmlFile} denotes to the path to the file on the local file
>> >> >> >> >> system.
>> >> >> >> >> Please also have a look at [1] for a more detailed description
>> >> >> >> >> on
>> >> >> >> >> how
>> >> >> >> >> to upload RDF data to the "/entityhub" endpoint.
>> >> >> >> >>
>> >> >> >> >> (1b) manage the RDF data as an own ReferencedSite
>> >> >> >> >>
>> >> >> >> >> The Entityhub also supports the configuration of so called
>> >> >> >> >> ReferencedSites. This allows to manage different RDF datasets
>> >> >> >> >> (e.g.
>> >> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology,
>> >> >> >> >> ...).
>> >> >> >> >> Such sites are read-only and accessible under
>> >> >> >> >> http://localhost:8080/entityhub/site/{siteId}
>> >> >> >> >>
>> >> >> >> >> Stanbol also includes an indexing tool that helps you in
>> >> >> >> >> creating
>> >> >> >> >> such
>> >> >> >> >> "referencedSites" for local datasets (such as your Ontology).
>> >> >> >> >> A
>> >> >> >> >> detailed description of this process can be found at [3]. [2]
>> >> >> >> >> is
>> >> >> >> >> a
>> >> >> >> >> specific configuration of [3] for the IPTC thesaurus.
>> >> >> >> >>
>> >> >> >> >> In general for testing I would suggest to use (1a) because it
>> >> >> >> >> is
>> >> >> >> >> much
>> >> >> >> >> easer to start with. However (1a) will require to load your
>> >> >> >> >> ontology
>> >> >> >> >> in memory therefore it will not work for big datasets. In
>> >> >> >> >> addition
>> >> >> >> >> (1b) allows you to optimize your ontology (by defining
>> >> >> >> >> mappings)
>> >> >> >> >> during the indexing process and it gives you the possibility
>> >> >> >> >> to
>> >> >> >> >> use
>> >> >> >> >> different Ontologies for enhancing your content. Therefore for
>> >> >> >> >> more
>> >> >> >> >> complex usage scenarios option (1b) is typically the better
>> >> >> >> >> solution.
>> >> >> >> >>
>> >> >> >> >> (2) Configure the TaxonomylinkingEngine
>> >> >> >> >>
>> >> >> >> >> This Engine is by default included in the Full launcher of
>> >> >> >> >> Stanbol.
>> >> >> >> >> If
>> >> >> >> >> you prefer the stable launcher you will need to manually
>> >> >> >> >> install
>> >> >> >> >> it
>> >> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
>> >> >> >> >> http://localhost:8080/system/console default user: admin pwd:
>> >> >> >> >> admin).
>> >> >> >> >> The bundle to install can be found at
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>> >> >> >> >>
>> >> >> >> >> Assuming a running Stanbol Instance that includes the
>> >> >> >> >> TaxonomyLinkingEngine the following steps are required for the
>> >> >> >> >> configuration:
>> >> >> >> >> 1. go the "configuration tab"
>> >> >> >> >> (http://localhost:8080/system/console/configMgr)
>> >> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy
>> >> >> >> >> linking"
>> >> >> >> >> 3. pres on the [+] button on the end of this line (this will
>> >> >> >> >> open
>> >> >> >> >> the
>> >> >> >> >> dialog to configure a new instance of this engine)
>> >> >> >> >> 4. configure the source. If you used (1a) put "entityhub" in
>> >> >> >> >> case
>> >> >> >> >> of
>> >> >> >> >> (1b) you must enter the siteId of the referenced site.
>> >> >> >> >> 5. configure the property used to search for labels of the
>> >> >> >> >> concepts
>> >> >> >> >> in
>> >> >> >> >> your Ontology. The default is rdfs:label (typically used for
>> >> >> >> >> labeling
>> >> >> >> >> concepts within ontologies, but you might also want to use a
>> >> >> >> >> different
>> >> >> >> >> one based on your ontology
>> >> >> >> >>
>> >> >> >> >> I would not recommend to change any other properties because
>> >> >> >> >> this
>> >> >> >> >> engine is currently under development and changes to this
>> >> >> >> >> values
>> >> >> >> >> might
>> >> >> >> >> not be implemented or even worse break this engine.
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> best
>> >> >> >> >> Rupert Westenthaler
>> >> >> >> >>
>> >> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
>> >> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
>> >> >> >> >> [3]
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>> >> >> >> >>
>> >> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
>> >> >> >> >> <sr...@gmail.com>:
>> >> >> >> >> >
>> >> >> >> >> > Hello Mr Westenthaler,
>> >> >> >> >> >
>> >> >> >> >> > Mr Pereira gave me your contact, in order to ask you a few
>> >> >> >> >> > questions
>> >> >> >> >> > about
>> >> >> >> >> > Apache Stanbol. I suppose that you have received Mr
>> >> >> >> >> > Pereira's
>> >> >> >> >> > email
>> >> >> >> >> > which he
>> >> >> >> >> > sent to me, and you maybe already know what the problem is.
>> >> >> >> >> >
>> >> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is
>> >> >> >> >> > to
>> >> >> >> >> > load
>> >> >> >> >> > my
>> >> >> >> >> > ontology, and than to call method which is going to annotate
>> >> >> >> >> > provided
>> >> >> >> >> > text,
>> >> >> >> >> > based on loaded ontology. Could you please explain to me how
>> >> >> >> >> > to
>> >> >> >> >> > implement
>> >> >> >> >> > scenario which I described using Apache Stanbol? If you
>> >> >> >> >> > could
>> >> >> >> >> > provide
>> >> >> >> >> > me
>> >> >> >> >> > a
>> >> >> >> >> > code example, I would be very grateful.
>> >> >> >> >> >
>> >> >> >> >> > Thank you very much.
>> >> >> >> >> >
>> >> >> >> >> > Best,
>> >> >> >> >> > Srecko Joksimovic
>> >> >> >> >>
>> >> >> >> >> --
>> >> >> >> >> | Rupert Westenthaler
>> >> >> >> >> rupert.westenthaler@gmail.com
>> >> >> >> >> | Bodenlehenstraße 11
>> >> >> >> >> ++43-699-11108907
>> >> >> >> >> | A-5500 Bischofshofen
>> >> >> >> >
>> >> >> >> >
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> >> | Bodenlehenstraße 11
>> >> >> >> ++43-699-11108907
>> >> >> >> | A-5500 Bischofshofen
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> >> | A-5500 Bischofshofen
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> | A-5500 Bischofshofen
>> >
>> >
>>
>>
>>
>> --
>> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> | Bodenlehenstraße 11                             ++43-699-11108907
>> | A-5500 Bischofshofen
>>
>
>



-- 
| Rupert Westenthaler             rupert.westenthaler@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Hi,
I have to say that everything works perfectly!
There is one more issue that I should solve, if it is possible.
This is part of my ontology:

<owl:Class rdf:about="http://www.lornet.org/acm-ccs/proton#B.4.3">
    <protons:generatedBy rdf:resource="
http://www.lornet.org/acm-ccs/proton#TrustedSrc"/>
    <protons:hasMainAlias>
      <owl:NamedIndividual rdf:about="
http://www.lornet.org/acm-ccs/proton#Alias_8c13d942-a5c0-4128-87a6-876d30285088
">
        <rdfs:label xml:lang="en">Interconnections (Subsystems)</rdfs:label>
        <rdf:type rdf:resource="
http://proton.semanticweb.org/2006/05/protons#Alias"/>
      </owl:NamedIndividual>
    </protons:hasMainAlias>
    <rdfs:subClassOf rdf:resource="
http://proton.semanticweb.org/2006/05/protont#Topic"/>
  </owl:Class>
  <owl:Class rdf:about="http://www.lornet.org/acm-ccs/proton#B.1.4">
    <rdfs:subClassOf rdf:resource="
http://proton.semanticweb.org/2006/05/protont#Topic"/>
    <protons:generatedBy rdf:resource="
http://www.lornet.org/acm-ccs/proton#TrustedSrc"/>
    <protons:hasMainAlias>
      <owl:NamedIndividual rdf:about="
http://www.lornet.org/acm-ccs/proton#Alias_b020a49b-46f3-49f5-b65d-8e07858c6a8c
">
        <rdfs:label xml:lang="en">Microprogram Design Aids</rdfs:label>
        <rdf:type rdf:resource="
http://proton.semanticweb.org/2006/05/protons#Alias"/>
      </owl:NamedIndividual>
    </protons:hasMainAlias>
  </owl:Class>
  <owl:Class rdf:about="http://www.lornet.org/acm-ccs/proton#A.2">
    <protons:hasMainAlias>
      <owl:NamedIndividual rdf:about="
http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
">
        <rdf:type rdf:resource="
http://proton.semanticweb.org/2006/05/protons#Alias"/>
        <rdfs:label xml:lang="en">Reference</rdfs:label>
      </owl:NamedIndividual>
    </protons:hasMainAlias>
    <rdfs:subClassOf rdf:resource="
http://proton.semanticweb.org/2006/05/protont#Topic"/>
    <protons:generatedBy rdf:resource="
http://www.lornet.org/acm-ccs/proton#TrustedSrc"/>
  </owl:Class>
  <owl:Class rdf:about="http://www.lornet.org/acm-ccs/proton#B.1.5">
    <protons:hasMainAlias>
      <owl:NamedIndividual rdf:about="
http://www.lornet.org/acm-ccs/proton#Alias_2e0bec25-474e-4fe3-901f-75eb6c6e230d
">
        <rdfs:label xml:lang="en">Microcode Applications</rdfs:label>
        <rdf:type rdf:resource="
http://proton.semanticweb.org/2006/05/protons#Alias"/>
      </owl:NamedIndividual>
    </protons:hasMainAlias>
    <rdfs:subClassOf rdf:resource="
http://proton.semanticweb.org/2006/05/protont#Topic"/>
    <protons:generatedBy rdf:resource="
http://www.lornet.org/acm-ccs/proton#TrustedSrc"/>
  </owl:Class>

When I post next sentence:
*Microprogram Design Aids to enhance, Reference is important*
*
*
Result I got is this:

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:j.0="http://www.semanticdesktop.org/ontologies/2007/01/19/nie#"
    xmlns:j.1="http://purl.org/dc/terms/"
    xmlns:j.2="http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#"
    xmlns:j.3="http://fise.iks-project.eu/ontology/" >
  <rdf:Description
rdf:about="urn:enhancement-692367c9-6959-053d-4fe7-11ad922a6dbf">
    <j.3:confidence rdf:datatype="http://www.w3.org/2001/XMLSchema#double
">1.0</j.3:confidence>
    <rdf:type rdf:resource="
http://fise.iks-project.eu/ontology/TextAnnotation"/>
    <j.1:creator rdf:datatype="http://www.w3.org/2001/XMLSchema#string
">org.apache.stanbol.enhancer.engines.metaxa.MetaxaEngine</j.1:creator>
    <j.1:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime
">2011-08-17T08:49:48.605Z</j.1:created>
    <j.3:extracted-from
rdf:resource="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3"/>
    <rdf:type rdf:resource="http://fise.iks-project.eu/ontology/Enhancement
"/>
  </rdf:Description>
  <rdf:Description
rdf:about="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3">
    <j.0:plainTextContent>Microprogram Design Aids to enhance, Reference is
important</j.0:plainTextContent>
    <rdf:type rdf:resource="
http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#PlainTextDocument
"/>
  </rdf:Description>
  <rdf:Description
rdf:about="urn:enhancement-06b9a581-ebdd-1e2d-ecd3-3647e3fcdf87">
    <j.3:entity-type rdf:resource="
http://www.w3.org/2002/07/owl#NamedIndividual"/>
    <j.1:creator rdf:datatype="http://www.w3.org/2001/XMLSchema#string
">org.apache.stanbol.enhancer.engines.taxonomy.impl.TaxonomyLinkingEngine</j.1:creator>
    <j.3:extracted-from
rdf:resource="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3"/>
    <rdf:type rdf:resource="http://fise.iks-project.eu/ontology/Enhancement
"/>
    <j.3:entity-type rdf:resource="
http://proton.semanticweb.org/2006/05/protons#Alias"/>
    <j.3:confidence rdf:datatype="http://www.w3.org/2001/XMLSchema#double
">5.382943</j.3:confidence>
    <j.3:entity-label xml:lang="en">Microprogram Design
Aids</j.3:entity-label>
    <rdf:type rdf:resource="
http://fise.iks-project.eu/ontology/EntityAnnotation"/>
    <j.1:relation
rdf:resource="urn:enhancement-05ee4f39-c1e3-0248-09a0-03eb3efa9f5d"/>
    <j.1:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime
">2011-08-17T08:50:04.989Z</j.1:created>
    <j.3:entity-reference rdf:resource="
http://www.lornet.org/acm-ccs/proton#Alias_b020a49b-46f3-49f5-b65d-8e07858c6a8c
"/>
  </rdf:Description>
  <rdf:Description
rdf:about="urn:enhancement-05ee4f39-c1e3-0248-09a0-03eb3efa9f5d">
    <rdf:type rdf:resource="http://fise.iks-project.eu/ontology/Enhancement
"/>
    <j.3:extracted-from
rdf:resource="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3"/>
    <j.1:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime
">2011-08-17T08:50:04.884Z</j.1:created>
    <j.1:creator rdf:datatype="http://www.w3.org/2001/XMLSchema#string
">org.apache.stanbol.enhancer.engines.taxonomy.impl.TaxonomyLinkingEngine</j.1:creator>
    <rdf:type rdf:resource="
http://fise.iks-project.eu/ontology/TextAnnotation"/>
    <j.3:start rdf:datatype="http://www.w3.org/2001/XMLSchema#int
">0</j.3:start>
    <j.3:end rdf:datatype="http://www.w3.org/2001/XMLSchema#int
">19</j.3:end>
    <j.3:selected-text>Microprogram Design</j.3:selected-text>
    <j.3:selection-context>Microprogram Design Aids to enhance, Reference is
important</j.3:selection-context>
  </rdf:Description>
  <rdf:Description
rdf:about="urn:enhancement-a838d900-6ca1-24a8-a25d-1ae08bef5b7a">
    <j.1:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime
">2011-08-17T08:50:04.990Z</j.1:created>
    <j.3:confidence rdf:datatype="http://www.w3.org/2001/XMLSchema#double
">8.620214</j.3:confidence>
    <rdf:type rdf:resource="http://fise.iks-project.eu/ontology/Enhancement
"/>
    <j.3:entity-type rdf:resource="
http://proton.semanticweb.org/2006/05/protons#Alias"/>
    <j.3:extracted-from
rdf:resource="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3"/>
    <j.1:relation
rdf:resource="urn:enhancement-115796d4-a244-baab-79f0-9e73906f3745"/>
    <j.1:creator rdf:datatype="http://www.w3.org/2001/XMLSchema#string
">org.apache.stanbol.enhancer.engines.taxonomy.impl.TaxonomyLinkingEngine</j.1:creator>
    <rdf:type rdf:resource="
http://fise.iks-project.eu/ontology/EntityAnnotation"/>
    <j.3:entity-reference rdf:resource="
http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
"/>
    <j.3:entity-label xml:lang="en">Reference</j.3:entity-label>
    <j.3:entity-type rdf:resource="
http://www.w3.org/2002/07/owl#NamedIndividual"/>
  </rdf:Description>
  <rdf:Description
rdf:about="urn:enhancement-7dbb49f5-d21d-9bc1-3680-1acbcce872a1">
    <rdf:type rdf:resource="
http://fise.iks-project.eu/ontology/TextAnnotation"/>
    <j.1:creator rdf:datatype="http://www.w3.org/2001/XMLSchema#string
">org.apache.stanbol.enhancer.engines.langid.LangIdEnhancementEngine</j.1:creator>
    <j.1:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime
">2011-08-17T08:49:48.637Z</j.1:created>
    <j.3:extracted-from
rdf:resource="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3"/>
    <rdf:type rdf:resource="http://fise.iks-project.eu/ontology/Enhancement
"/>
    <j.1:language>it</j.1:language>
  </rdf:Description>
  <rdf:Description
rdf:about="urn:enhancement-115796d4-a244-baab-79f0-9e73906f3745">
    <j.3:selection-context>Microprogram Design Aids to enhance, Reference is
important</j.3:selection-context>
    <j.3:selected-text>Reference</j.3:selected-text>
    <j.3:end rdf:datatype="http://www.w3.org/2001/XMLSchema#int
">46</j.3:end>
    <j.3:start rdf:datatype="http://www.w3.org/2001/XMLSchema#int
">37</j.3:start>
    <rdf:type rdf:resource="
http://fise.iks-project.eu/ontology/TextAnnotation"/>
    <j.1:creator rdf:datatype="http://www.w3.org/2001/XMLSchema#string
">org.apache.stanbol.enhancer.engines.taxonomy.impl.TaxonomyLinkingEngine</j.1:creator>
    <j.1:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime
">2011-08-17T08:50:04.987Z</j.1:created>
    <rdf:type rdf:resource="http://fise.iks-project.eu/ontology/Enhancement
"/>
    <j.3:extracted-from
rdf:resource="urn:content-item-sha1-ee1fa214860584fb04a5869b6b8193ac3d88b5a3"/>
  </rdf:Description>
</rdf:RDF>

I can find there both of my concepts mentioned in the sentence. I also have
*"
http://www.lornet.org/acm-ccs/proton#Alias_794fe2e1-441b-4565-bb0e-4d6f0cabed1f
"*

But, could you please tell me if it is possible to get

*http://www.lornet.org/acm-ccs/proton#A.2* ?

What should I do to get Class in result, and not just Alias?

Best,
Srecko Joksimovic

On Mon, Aug 15, 2011 at 8:18 PM, Srecko Joksimovic <
sreckojoksimovic@gmail.com> wrote:

> Hi,
> I will have to try this, as soon as possible, but I am sure it will be
> alright.
>
> Thank you very much!
>
> Best,
> Srecko Joksimovic
>
> -----Original Message-----
> From: Rupert Westenthaler [mailto:rupert.westenthaler@gmail.com]
> Sent: Monday, August 15, 2011 16:43
> To: srecko joksimovic; stanbol-dev@incubator.apache.org
> Subject: Re: Apache Stanbol
>
> On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic
> <sr...@gmail.com> wrote:
> > That was the problem! Great! It works now.
> > Still, my old (boring) question... how to access service from Java
> > application and post string which I would like to annotate? I know how to
> > implement service client, but could you describe me the process in this
> > case?
>
> to send text to the stanbol enhancer you need to use the /engines endpoint
>
> For the documentation go to
>
>    http://localhost:8080/engines
>
> and click on REST API in the right top corner.
>
> Here a small example using Apache Commons IOUtils and the normal
> java.net classes
>
>        URL url = new URL("http://localhost:8080/engines");
>        HttpURLConnection con = (HttpURLConnection)url.openConnection();
>        con.setDoOutput(true);
>        con.setRequestMethod("POST");
>        con.setRequestProperty("Accept", "application/rdf+xml");
>        con.setRequestProperty("Content-type", "text/plain");
>        OutputStream out = con.getOutputStream();
>        IOUtils.write("The text to enhance", out);
>        IOUtils.closeQuietly(out);
>        con.connect(); //send the request
>        if(con.getResponseCode() > 299){ //assume an error
>            //error response
>            InputStream errorStream = con.getErrorStream();
>            if(errorStream != null){
>                String errorMessage = IOUtils.toString(errorStream);
>                IOUtils.closeQuietly(errorStream);
>                //write a error message
>            } else { //no error data
>                //write default error message with the status code
>            }
>        } else { //get the enhancement results
>            InputStream enhancementResults = con.getInputStream();
>            //parse this stream to the RDF/XML parser of the RDF framework
> of
>            //you choice
>        }
>
> best
> Rupert
>
> > Best,
> > Srecko Joksimovic
> > On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler
> > <ru...@gmail.com> wrote:
> >>
> >> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
> >> <sr...@gmail.com> wrote:
> >> > Hi,
> >> > I have to ask again...
> >> > I posted this command: curl -X POST -d "name=Optimization"
> >> > http://localhost:8080/entityhub/find
> >> > and the result is as follows:
> >> > {
> >> >     "query": {
> >> >         "selected": [
> >> >
> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
> >> >             "http:\/\/www.iks-project.eu
> \/ontology\/rick\/query\/score",
> >> >             "http:\/\/www.iks-project.eu
> \/ontology\/rick\/model\/label"
> >> >         ],
> >> >         "constraints": [{
> >> >             "type": "text",
> >> >             "patternType": "wildcard",
> >> >             "text": "Optimization",
> >> >             "field":
> >> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
> >>
> >> Looks like that the default search field for the Entityhub is still
> >> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
> >> rdfs:label.
> >>
> >> I was in the impression that I have changed that some time ago to
> >> "rdfs:label" as it is the case for ReferencedSites.
> >>
> >> In that case you need to explicitly parse rdfs:label as field as in the
> >> following example
> >>
> >>    curl -X POST -d
> >> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
> >> http://localhost:8080/entityhub/find
> >>
> >> best
> >> Rupert
> >>
> >> >         }],
> >> >         "limit": 5,
> >> >         "offset": 0
> >> >     },
> >> >     "results": []
> >> > }
> >> > I did something wrong, but I am not sure what. Could you please help
> me
> >> > on
> >> > this one?
> >> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
> >> > <ru...@gmail.com> wrote:
> >> >>
> >> >> Hi
> >> >>
> >> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
> >> >> <sr...@gmail.com> wrote:
> >> >> > Thank you!
> >> >> > Now I got message which says:
> >> >> > Unable to create an Entity that does already exist
> >> >>
> >> >> This simple tells you that an Entity you tried to create already
> >> >> existed.
> >> >> So I assume that a previous import of your Ontology was successful.
> >> >>
> >> >> > as I understand, this means that I did it right first time. How I
> can
> >> >> > read
> >> >> > ID of this Entity? I did not use -v switch first time when I tried
> >> >> > upload,
> >> >> > and now I do not know ID. Or maybe I do, but I am not aware of
> >> >> > that...
> >> >>
> >> >> You should know the URIs of the concepts in your Ontology.
> >> >>
> >> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
> >> >>
> >> >> If you know some labels you can also use the query service
> >> >>
> >> >>    curl -X POST -d "name={label}"
> http://localhost:8080/entityhub/find
> >> >>
> >> >> name takes wildcard searches such as "Her?a*" and reaches for values
> >> >> of the "rdfs:label" property.
> >> >>
> >> >> if you want to search labels for properties other than "rdfs:label"
> >> >> you can use the field parameter.
> >> >> Here an example for searching all Persons with a "foaf:name" "Ivan*"
> >> >>
> >> >>    curl -X POST -d "name=Ivan*&field=http://xmlns.com/foaf/0.1/name"
> >> >> http://localhost:8080/entityhub/find
> >> >>
> >> >>
> >> >> As an alternative you could also use the query interface as described
> >> >> on
> >> >>
> >> >> http://localhost:8080/entityhub/query
> >> >>
> >> >> best
> >> >> Rupert
> >> >>
> >> >> > And only one more simple question... Could you please provide me a
> >> >> > code
> >> >> > example? I will try to search archive, or other resources that you
> >> >> > gave
> >> >> > me.
> >> >> > Anyway, I would be grateful if you could help me.
> >> >> > Once again, thank you very much!
> >> >> > Best,
> >> >> > Srecko Joksimovic
> >> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
> >> >> > <ru...@gmail.com> wrote:
> >> >> >>
> >> >> >> Hi
> >> >> >>
> >> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
> >> >> >> <sr...@gmail.com> wrote:
> >> >> >> > Hello Mr Westenthaler,
> >> >> >> > I have configured Apache Stanbol. I can access services using
> >> >> >> > http://localhost:8080. I tried to do steps that you described,
> and
> >> >> >> > I
> >> >> >> > did
> >> >> >> > not
> >> >> >> > have a problem with step 2, but I am not sure that I did step
> >> >> >> > 1 correctly.
> >> >> >> > When I issued command like this one:
> >> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> >> >> > "@acm_ccs-proton_rdfxml.owl"
> >> >> >> > http://localhost:8080/entityhub/entity
> >> >> >> > I got response:
> >> >> >> > curl: (52) Empty reply from server
> >> >> >> > This file which I am trying to upload is almost 1MB big. It
> should
> >> >> >> > not
> >> >> >> > be a
> >> >> >> > problem with memory.
> >> >> >> > Do you have any idea what could be a problem? How I can check
> that
> >> >> >> > I
> >> >> >> > did
> >> >> >> > the
> >> >> >> > job correctly?
> >> >> >>
> >> >> >>
> >> >> >> when you add the '-v' switch to 'curl' than you should see the
> >> >> >> returned HTTP status code of the response.
> >> >> >>
> >> >> >> In case of a success the server returns a "201 Created" and the ID
> >> >> >> of
> >> >> >> the first created entity in the
> >> >> >> Location header field
> >> >> >>
> >> >> >> here an example of an response after importing the FOAF file of
> Ivan
> >> >> >> Herman
> >> >> >>
> >> >> >> < HTTP/1.1 201 Created
> >> >> >> < Location:
> >> >> >>
> >> >> >>
> >> >> >>
> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
> >> >> >>
> >> >> >> with a simple curl request to the url returned for the Location
> >> >> >> header
> >> >> >> you can easily test the imported data for this entity. To test
> other
> >> >> >> resources simple exchange the URI.
> >> >> >>
> >> >> >> best
> >> >> >> Rupert Westenthaler
> >> >> >>
> >> >> >> > Best,
> >> >> >> > Srecko Joksimovic
> >> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
> >> >> >> > <ru...@gmail.com> wrote:
> >> >> >> >>
> >> >> >> >> Hallo Mr Srecko Joksimovic
> >> >> >> >>
> >> >> >> >> Two initial Notes:
> >> >> >> >>
> >> >> >> >> * I am sending this also to the stanbol-dev list, because I am
> on
> >> >> >> >> vacation until end of August and will only read/answer mails
> from
> >> >> >> >> time
> >> >> >> >> to time until than. So maybe others of the Stanbol community
> will
> >> >> >> >> be
> >> >> >> >> able to answer questions more quickly then myself.
> >> >> >> >> * I am sending this reply via my gmail account, because somehow
> I
> >> >> >> >> am
> >> >> >> >> not able to connect to the SMTP server of salzburgresearch.at.
> >> >> >> >>
> >> >> >> >> - - -
> >> >> >> >>
> >> >> >> >> Actually this is possible by using the TaxonomyLinkingEngine
> that
> >> >> >> >> is
> >> >> >> >> currently in development.
> >> >> >> >>
> >> >> >> >> Basically there are two steps:
> >> >> >> >>
> >> >> >> >> (1) upload your Ontology to the Entityhub
> >> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to use
> >> >> >> >> your
> >> >> >> >> ontology (as stored by the Entityhub) to enhance your documents
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> for (1) there are two possibilities
> >> >> >> >>
> >> >> >> >> (1a) upload your ontology directly to the "/entityhub"
> >> >> >> >>
> >> >> >> >> If you have a Stanbol instance running at
> >> >> >> >> "http://localhost:8080/"
> >> >> >> >> the
> >> >> >> >> followng curl command can be used to upload an RDF graph (such
> as
> >> >> >> >> your
> >> >> >> >> ontology)
> >> >> >> >>
> >> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
> >> >> >> >>
> >> >> >> >> This assumes that your Ontology is encoded as
> >> >> >> >> "application/rdf+xml".
> >> >> >> >> {rdfXmlFile} denotes to the path to the file on the local file
> >> >> >> >> system.
> >> >> >> >> Please also have a look at [1] for a more detailed description
> on
> >> >> >> >> how
> >> >> >> >> to upload RDF data to the "/entityhub" endpoint.
> >> >> >> >>
> >> >> >> >> (1b) manage the RDF data as an own ReferencedSite
> >> >> >> >>
> >> >> >> >> The Entityhub also supports the configuration of so called
> >> >> >> >> ReferencedSites. This allows to manage different RDF datasets
> >> >> >> >> (e.g.
> >> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology,
> >> >> >> >> ...).
> >> >> >> >> Such sites are read-only and accessible under
> >> >> >> >> http://localhost:8080/entityhub/site/{siteId}
> >> >> >> >>
> >> >> >> >> Stanbol also includes an indexing tool that helps you in
> creating
> >> >> >> >> such
> >> >> >> >> "referencedSites" for local datasets (such as your Ontology). A
> >> >> >> >> detailed description of this process can be found at [3]. [2]
> is
> >> >> >> >> a
> >> >> >> >> specific configuration of [3] for the IPTC thesaurus.
> >> >> >> >>
> >> >> >> >> In general for testing I would suggest to use (1a) because it
> is
> >> >> >> >> much
> >> >> >> >> easer to start with. However (1a) will require to load your
> >> >> >> >> ontology
> >> >> >> >> in memory therefore it will not work for big datasets. In
> >> >> >> >> addition
> >> >> >> >> (1b) allows you to optimize your ontology (by defining
> mappings)
> >> >> >> >> during the indexing process and it gives you the possibility to
> >> >> >> >> use
> >> >> >> >> different Ontologies for enhancing your content. Therefore for
> >> >> >> >> more
> >> >> >> >> complex usage scenarios option (1b) is typically the better
> >> >> >> >> solution.
> >> >> >> >>
> >> >> >> >> (2) Configure the TaxonomylinkingEngine
> >> >> >> >>
> >> >> >> >> This Engine is by default included in the Full launcher of
> >> >> >> >> Stanbol.
> >> >> >> >> If
> >> >> >> >> you prefer the stable launcher you will need to manually
> install
> >> >> >> >> it
> >> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
> >> >> >> >> http://localhost:8080/system/console default user: admin pwd:
> >> >> >> >> admin).
> >> >> >> >> The bundle to install can be found at
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
> >> >> >> >>
> >> >> >> >> Assuming a running Stanbol Instance that includes the
> >> >> >> >> TaxonomyLinkingEngine the following steps are required for the
> >> >> >> >> configuration:
> >> >> >> >> 1. go the "configuration tab"
> >> >> >> >> (http://localhost:8080/system/console/configMgr)
> >> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy
> >> >> >> >> linking"
> >> >> >> >> 3. pres on the [+] button on the end of this line (this will
> open
> >> >> >> >> the
> >> >> >> >> dialog to configure a new instance of this engine)
> >> >> >> >> 4. configure the source. If you used (1a) put "entityhub" in
> case
> >> >> >> >> of
> >> >> >> >> (1b) you must enter the siteId of the referenced site.
> >> >> >> >> 5. configure the property used to search for labels of the
> >> >> >> >> concepts
> >> >> >> >> in
> >> >> >> >> your Ontology. The default is rdfs:label (typically used for
> >> >> >> >> labeling
> >> >> >> >> concepts within ontologies, but you might also want to use a
> >> >> >> >> different
> >> >> >> >> one based on your ontology
> >> >> >> >>
> >> >> >> >> I would not recommend to change any other properties because
> this
> >> >> >> >> engine is currently under development and changes to this
> values
> >> >> >> >> might
> >> >> >> >> not be implemented or even worse break this engine.
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> best
> >> >> >> >> Rupert Westenthaler
> >> >> >> >>
> >> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
> >> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
> >> >> >> >> [3]
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
> >> >> >> >>
> >> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
> >> >> >> >> <sr...@gmail.com>:
> >> >> >> >> >
> >> >> >> >> > Hello Mr Westenthaler,
> >> >> >> >> >
> >> >> >> >> > Mr Pereira gave me your contact, in order to ask you a few
> >> >> >> >> > questions
> >> >> >> >> > about
> >> >> >> >> > Apache Stanbol. I suppose that you have received Mr Pereira's
> >> >> >> >> > email
> >> >> >> >> > which he
> >> >> >> >> > sent to me, and you maybe already know what the problem is.
> >> >> >> >> >
> >> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is to
> >> >> >> >> > load
> >> >> >> >> > my
> >> >> >> >> > ontology, and than to call method which is going to annotate
> >> >> >> >> > provided
> >> >> >> >> > text,
> >> >> >> >> > based on loaded ontology. Could you please explain to me how
> to
> >> >> >> >> > implement
> >> >> >> >> > scenario which I described using Apache Stanbol? If you could
> >> >> >> >> > provide
> >> >> >> >> > me
> >> >> >> >> > a
> >> >> >> >> > code example, I would be very grateful.
> >> >> >> >> >
> >> >> >> >> > Thank you very much.
> >> >> >> >> >
> >> >> >> >> > Best,
> >> >> >> >> > Srecko Joksimovic
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> | Rupert Westenthaler
> rupert.westenthaler@gmail.com
> >> >> >> >> | Bodenlehenstraße 11
> >> >> >> >> ++43-699-11108907
> >> >> >> >> | A-5500 Bischofshofen
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> >> >> | Bodenlehenstraße 11
> ++43-699-11108907
> >> >> >> | A-5500 Bischofshofen
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> >> | A-5500 Bischofshofen
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> | A-5500 Bischofshofen
> >
> >
>
>
>
> --
> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> | Bodenlehenstraße 11                             ++43-699-11108907
> | A-5500 Bischofshofen
>
>

RE: Apache Stanbol

Posted by Srecko Joksimovic <sr...@gmail.com>.
Hi,
I will have to try this, as soon as possible, but I am sure it will be alright.

Thank you very much!

Best,
Srecko Joksimovic

-----Original Message-----
From: Rupert Westenthaler [mailto:rupert.westenthaler@gmail.com] 
Sent: Monday, August 15, 2011 16:43
To: srecko joksimovic; stanbol-dev@incubator.apache.org
Subject: Re: Apache Stanbol

On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic
<sr...@gmail.com> wrote:
> That was the problem! Great! It works now.
> Still, my old (boring) question... how to access service from Java
> application and post string which I would like to annotate? I know how to
> implement service client, but could you describe me the process in this
> case?

to send text to the stanbol enhancer you need to use the /engines endpoint

For the documentation go to

    http://localhost:8080/engines

and click on REST API in the right top corner.

Here a small example using Apache Commons IOUtils and the normal
java.net classes

        URL url = new URL("http://localhost:8080/engines");
        HttpURLConnection con = (HttpURLConnection)url.openConnection();
        con.setDoOutput(true);
        con.setRequestMethod("POST");
        con.setRequestProperty("Accept", "application/rdf+xml");
        con.setRequestProperty("Content-type", "text/plain");
        OutputStream out = con.getOutputStream();
        IOUtils.write("The text to enhance", out);
        IOUtils.closeQuietly(out);
        con.connect(); //send the request
        if(con.getResponseCode() > 299){ //assume an error
            //error response
            InputStream errorStream = con.getErrorStream();
            if(errorStream != null){
                String errorMessage = IOUtils.toString(errorStream);
                IOUtils.closeQuietly(errorStream);
                //write a error message
            } else { //no error data
                //write default error message with the status code
            }
        } else { //get the enhancement results
            InputStream enhancementResults = con.getInputStream();
            //parse this stream to the RDF/XML parser of the RDF framework of
            //you choice
        }

best
Rupert

> Best,
> Srecko Joksimovic
> On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler
> <ru...@gmail.com> wrote:
>>
>> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
>> <sr...@gmail.com> wrote:
>> > Hi,
>> > I have to ask again...
>> > I posted this command: curl -X POST -d "name=Optimization"
>> > http://localhost:8080/entityhub/find
>> > and the result is as follows:
>> > {
>> >     "query": {
>> >         "selected": [
>> >
>> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
>> >             "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
>> >             "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>> >         ],
>> >         "constraints": [{
>> >             "type": "text",
>> >             "patternType": "wildcard",
>> >             "text": "Optimization",
>> >             "field":
>> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>>
>> Looks like that the default search field for the Entityhub is still
>> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
>> rdfs:label.
>>
>> I was in the impression that I have changed that some time ago to
>> "rdfs:label" as it is the case for ReferencedSites.
>>
>> In that case you need to explicitly parse rdfs:label as field as in the
>> following example
>>
>>    curl -X POST -d
>> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
>> http://localhost:8080/entityhub/find
>>
>> best
>> Rupert
>>
>> >         }],
>> >         "limit": 5,
>> >         "offset": 0
>> >     },
>> >     "results": []
>> > }
>> > I did something wrong, but I am not sure what. Could you please help me
>> > on
>> > this one?
>> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
>> > <ru...@gmail.com> wrote:
>> >>
>> >> Hi
>> >>
>> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
>> >> <sr...@gmail.com> wrote:
>> >> > Thank you!
>> >> > Now I got message which says:
>> >> > Unable to create an Entity that does already exist
>> >>
>> >> This simple tells you that an Entity you tried to create already
>> >> existed.
>> >> So I assume that a previous import of your Ontology was successful.
>> >>
>> >> > as I understand, this means that I did it right first time. How I can
>> >> > read
>> >> > ID of this Entity? I did not use -v switch first time when I tried
>> >> > upload,
>> >> > and now I do not know ID. Or maybe I do, but I am not aware of
>> >> > that...
>> >>
>> >> You should know the URIs of the concepts in your Ontology.
>> >>
>> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
>> >>
>> >> If you know some labels you can also use the query service
>> >>
>> >>    curl -X POST -d "name={label}" http://localhost:8080/entityhub/find
>> >>
>> >> name takes wildcard searches such as "Her?a*" and reaches for values
>> >> of the "rdfs:label" property.
>> >>
>> >> if you want to search labels for properties other than "rdfs:label"
>> >> you can use the field parameter.
>> >> Here an example for searching all Persons with a "foaf:name" "Ivan*"
>> >>
>> >>    curl -X POST -d "name=Ivan*&field=http://xmlns.com/foaf/0.1/name"
>> >> http://localhost:8080/entityhub/find
>> >>
>> >>
>> >> As an alternative you could also use the query interface as described
>> >> on
>> >>
>> >> http://localhost:8080/entityhub/query
>> >>
>> >> best
>> >> Rupert
>> >>
>> >> > And only one more simple question... Could you please provide me a
>> >> > code
>> >> > example? I will try to search archive, or other resources that you
>> >> > gave
>> >> > me.
>> >> > Anyway, I would be grateful if you could help me.
>> >> > Once again, thank you very much!
>> >> > Best,
>> >> > Srecko Joksimovic
>> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
>> >> > <ru...@gmail.com> wrote:
>> >> >>
>> >> >> Hi
>> >> >>
>> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
>> >> >> <sr...@gmail.com> wrote:
>> >> >> > Hello Mr Westenthaler,
>> >> >> > I have configured Apache Stanbol. I can access services using
>> >> >> > http://localhost:8080. I tried to do steps that you described, and
>> >> >> > I
>> >> >> > did
>> >> >> > not
>> >> >> > have a problem with step 2, but I am not sure that I did step
>> >> >> > 1 correctly.
>> >> >> > When I issued command like this one:
>> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> > "@acm_ccs-proton_rdfxml.owl"
>> >> >> > http://localhost:8080/entityhub/entity
>> >> >> > I got response:
>> >> >> > curl: (52) Empty reply from server
>> >> >> > This file which I am trying to upload is almost 1MB big. It should
>> >> >> > not
>> >> >> > be a
>> >> >> > problem with memory.
>> >> >> > Do you have any idea what could be a problem? How I can check that
>> >> >> > I
>> >> >> > did
>> >> >> > the
>> >> >> > job correctly?
>> >> >>
>> >> >>
>> >> >> when you add the '-v' switch to 'curl' than you should see the
>> >> >> returned HTTP status code of the response.
>> >> >>
>> >> >> In case of a success the server returns a "201 Created" and the ID
>> >> >> of
>> >> >> the first created entity in the
>> >> >> Location header field
>> >> >>
>> >> >> here an example of an response after importing the FOAF file of Ivan
>> >> >> Herman
>> >> >>
>> >> >> < HTTP/1.1 201 Created
>> >> >> < Location:
>> >> >>
>> >> >>
>> >> >> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
>> >> >>
>> >> >> with a simple curl request to the url returned for the Location
>> >> >> header
>> >> >> you can easily test the imported data for this entity. To test other
>> >> >> resources simple exchange the URI.
>> >> >>
>> >> >> best
>> >> >> Rupert Westenthaler
>> >> >>
>> >> >> > Best,
>> >> >> > Srecko Joksimovic
>> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
>> >> >> > <ru...@gmail.com> wrote:
>> >> >> >>
>> >> >> >> Hallo Mr Srecko Joksimovic
>> >> >> >>
>> >> >> >> Two initial Notes:
>> >> >> >>
>> >> >> >> * I am sending this also to the stanbol-dev list, because I am on
>> >> >> >> vacation until end of August and will only read/answer mails from
>> >> >> >> time
>> >> >> >> to time until than. So maybe others of the Stanbol community will
>> >> >> >> be
>> >> >> >> able to answer questions more quickly then myself.
>> >> >> >> * I am sending this reply via my gmail account, because somehow I
>> >> >> >> am
>> >> >> >> not able to connect to the SMTP server of salzburgresearch.at.
>> >> >> >>
>> >> >> >> - - -
>> >> >> >>
>> >> >> >> Actually this is possible by using the TaxonomyLinkingEngine that
>> >> >> >> is
>> >> >> >> currently in development.
>> >> >> >>
>> >> >> >> Basically there are two steps:
>> >> >> >>
>> >> >> >> (1) upload your Ontology to the Entityhub
>> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to use
>> >> >> >> your
>> >> >> >> ontology (as stored by the Entityhub) to enhance your documents
>> >> >> >>
>> >> >> >>
>> >> >> >> for (1) there are two possibilities
>> >> >> >>
>> >> >> >> (1a) upload your ontology directly to the "/entityhub"
>> >> >> >>
>> >> >> >> If you have a Stanbol instance running at
>> >> >> >> "http://localhost:8080/"
>> >> >> >> the
>> >> >> >> followng curl command can be used to upload an RDF graph (such as
>> >> >> >> your
>> >> >> >> ontology)
>> >> >> >>
>> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>> >> >> >>
>> >> >> >> This assumes that your Ontology is encoded as
>> >> >> >> "application/rdf+xml".
>> >> >> >> {rdfXmlFile} denotes to the path to the file on the local file
>> >> >> >> system.
>> >> >> >> Please also have a look at [1] for a more detailed description on
>> >> >> >> how
>> >> >> >> to upload RDF data to the "/entityhub" endpoint.
>> >> >> >>
>> >> >> >> (1b) manage the RDF data as an own ReferencedSite
>> >> >> >>
>> >> >> >> The Entityhub also supports the configuration of so called
>> >> >> >> ReferencedSites. This allows to manage different RDF datasets
>> >> >> >> (e.g.
>> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology,
>> >> >> >> ...).
>> >> >> >> Such sites are read-only and accessible under
>> >> >> >> http://localhost:8080/entityhub/site/{siteId}
>> >> >> >>
>> >> >> >> Stanbol also includes an indexing tool that helps you in creating
>> >> >> >> such
>> >> >> >> "referencedSites" for local datasets (such as your Ontology). A
>> >> >> >> detailed description of this process can be found at [3]. [2] is
>> >> >> >> a
>> >> >> >> specific configuration of [3] for the IPTC thesaurus.
>> >> >> >>
>> >> >> >> In general for testing I would suggest to use (1a) because it is
>> >> >> >> much
>> >> >> >> easer to start with. However (1a) will require to load your
>> >> >> >> ontology
>> >> >> >> in memory therefore it will not work for big datasets. In
>> >> >> >> addition
>> >> >> >> (1b) allows you to optimize your ontology (by defining mappings)
>> >> >> >> during the indexing process and it gives you the possibility to
>> >> >> >> use
>> >> >> >> different Ontologies for enhancing your content. Therefore for
>> >> >> >> more
>> >> >> >> complex usage scenarios option (1b) is typically the better
>> >> >> >> solution.
>> >> >> >>
>> >> >> >> (2) Configure the TaxonomylinkingEngine
>> >> >> >>
>> >> >> >> This Engine is by default included in the Full launcher of
>> >> >> >> Stanbol.
>> >> >> >> If
>> >> >> >> you prefer the stable launcher you will need to manually install
>> >> >> >> it
>> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
>> >> >> >> http://localhost:8080/system/console default user: admin pwd:
>> >> >> >> admin).
>> >> >> >> The bundle to install can be found at
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>> >> >> >>
>> >> >> >> Assuming a running Stanbol Instance that includes the
>> >> >> >> TaxonomyLinkingEngine the following steps are required for the
>> >> >> >> configuration:
>> >> >> >> 1. go the "configuration tab"
>> >> >> >> (http://localhost:8080/system/console/configMgr)
>> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy
>> >> >> >> linking"
>> >> >> >> 3. pres on the [+] button on the end of this line (this will open
>> >> >> >> the
>> >> >> >> dialog to configure a new instance of this engine)
>> >> >> >> 4. configure the source. If you used (1a) put "entityhub" in case
>> >> >> >> of
>> >> >> >> (1b) you must enter the siteId of the referenced site.
>> >> >> >> 5. configure the property used to search for labels of the
>> >> >> >> concepts
>> >> >> >> in
>> >> >> >> your Ontology. The default is rdfs:label (typically used for
>> >> >> >> labeling
>> >> >> >> concepts within ontologies, but you might also want to use a
>> >> >> >> different
>> >> >> >> one based on your ontology
>> >> >> >>
>> >> >> >> I would not recommend to change any other properties because this
>> >> >> >> engine is currently under development and changes to this values
>> >> >> >> might
>> >> >> >> not be implemented or even worse break this engine.
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> best
>> >> >> >> Rupert Westenthaler
>> >> >> >>
>> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
>> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
>> >> >> >> [3]
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>> >> >> >>
>> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
>> >> >> >> <sr...@gmail.com>:
>> >> >> >> >
>> >> >> >> > Hello Mr Westenthaler,
>> >> >> >> >
>> >> >> >> > Mr Pereira gave me your contact, in order to ask you a few
>> >> >> >> > questions
>> >> >> >> > about
>> >> >> >> > Apache Stanbol. I suppose that you have received Mr Pereira's
>> >> >> >> > email
>> >> >> >> > which he
>> >> >> >> > sent to me, and you maybe already know what the problem is.
>> >> >> >> >
>> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is to
>> >> >> >> > load
>> >> >> >> > my
>> >> >> >> > ontology, and than to call method which is going to annotate
>> >> >> >> > provided
>> >> >> >> > text,
>> >> >> >> > based on loaded ontology. Could you please explain to me how to
>> >> >> >> > implement
>> >> >> >> > scenario which I described using Apache Stanbol? If you could
>> >> >> >> > provide
>> >> >> >> > me
>> >> >> >> > a
>> >> >> >> > code example, I would be very grateful.
>> >> >> >> >
>> >> >> >> > Thank you very much.
>> >> >> >> >
>> >> >> >> > Best,
>> >> >> >> > Srecko Joksimovic
>> >> >> >>
>> >> >> >> --
>> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> >> | Bodenlehenstraße 11
>> >> >> >> ++43-699-11108907
>> >> >> >> | A-5500 Bischofshofen
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> >> | A-5500 Bischofshofen
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> | A-5500 Bischofshofen
>> >
>> >
>>
>>
>>
>> --
>> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> | Bodenlehenstraße 11                             ++43-699-11108907
>> | A-5500 Bischofshofen
>
>



-- 
| Rupert Westenthaler             rupert.westenthaler@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen


Re: Apache Stanbol

Posted by Rupert Westenthaler <ru...@gmail.com>.
On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic
<sr...@gmail.com> wrote:
> That was the problem! Great! It works now.
> Still, my old (boring) question... how to access service from Java
> application and post string which I would like to annotate? I know how to
> implement service client, but could you describe me the process in this
> case?

to send text to the stanbol enhancer you need to use the /engines endpoint

For the documentation go to

    http://localhost:8080/engines

and click on REST API in the right top corner.

Here a small example using Apache Commons IOUtils and the normal
java.net classes

        URL url = new URL("http://localhost:8080/engines");
        HttpURLConnection con = (HttpURLConnection)url.openConnection();
        con.setDoOutput(true);
        con.setRequestMethod("POST");
        con.setRequestProperty("Accept", "application/rdf+xml");
        con.setRequestProperty("Content-type", "text/plain");
        OutputStream out = con.getOutputStream();
        IOUtils.write("The text to enhance", out);
        IOUtils.closeQuietly(out);
        con.connect(); //send the request
        if(con.getResponseCode() > 299){ //assume an error
            //error response
            InputStream errorStream = con.getErrorStream();
            if(errorStream != null){
                String errorMessage = IOUtils.toString(errorStream);
                IOUtils.closeQuietly(errorStream);
                //write a error message
            } else { //no error data
                //write default error message with the status code
            }
        } else { //get the enhancement results
            InputStream enhancementResults = con.getInputStream();
            //parse this stream to the RDF/XML parser of the RDF framework of
            //you choice
        }

best
Rupert

> Best,
> Srecko Joksimovic
> On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler
> <ru...@gmail.com> wrote:
>>
>> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
>> <sr...@gmail.com> wrote:
>> > Hi,
>> > I have to ask again...
>> > I posted this command: curl -X POST -d "name=Optimization"
>> > http://localhost:8080/entityhub/find
>> > and the result is as follows:
>> > {
>> >     "query": {
>> >         "selected": [
>> >
>> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
>> >             "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
>> >             "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>> >         ],
>> >         "constraints": [{
>> >             "type": "text",
>> >             "patternType": "wildcard",
>> >             "text": "Optimization",
>> >             "field":
>> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>>
>> Looks like that the default search field for the Entityhub is still
>> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
>> rdfs:label.
>>
>> I was in the impression that I have changed that some time ago to
>> "rdfs:label" as it is the case for ReferencedSites.
>>
>> In that case you need to explicitly parse rdfs:label as field as in the
>> following example
>>
>>    curl -X POST -d
>> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
>> http://localhost:8080/entityhub/find
>>
>> best
>> Rupert
>>
>> >         }],
>> >         "limit": 5,
>> >         "offset": 0
>> >     },
>> >     "results": []
>> > }
>> > I did something wrong, but I am not sure what. Could you please help me
>> > on
>> > this one?
>> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
>> > <ru...@gmail.com> wrote:
>> >>
>> >> Hi
>> >>
>> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
>> >> <sr...@gmail.com> wrote:
>> >> > Thank you!
>> >> > Now I got message which says:
>> >> > Unable to create an Entity that does already exist
>> >>
>> >> This simple tells you that an Entity you tried to create already
>> >> existed.
>> >> So I assume that a previous import of your Ontology was successful.
>> >>
>> >> > as I understand, this means that I did it right first time. How I can
>> >> > read
>> >> > ID of this Entity? I did not use -v switch first time when I tried
>> >> > upload,
>> >> > and now I do not know ID. Or maybe I do, but I am not aware of
>> >> > that...
>> >>
>> >> You should know the URIs of the concepts in your Ontology.
>> >>
>> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
>> >>
>> >> If you know some labels you can also use the query service
>> >>
>> >>    curl -X POST -d "name={label}" http://localhost:8080/entityhub/find
>> >>
>> >> name takes wildcard searches such as "Her?a*" and reaches for values
>> >> of the "rdfs:label" property.
>> >>
>> >> if you want to search labels for properties other than "rdfs:label"
>> >> you can use the field parameter.
>> >> Here an example for searching all Persons with a "foaf:name" "Ivan*"
>> >>
>> >>    curl -X POST -d "name=Ivan*&field=http://xmlns.com/foaf/0.1/name"
>> >> http://localhost:8080/entityhub/find
>> >>
>> >>
>> >> As an alternative you could also use the query interface as described
>> >> on
>> >>
>> >> http://localhost:8080/entityhub/query
>> >>
>> >> best
>> >> Rupert
>> >>
>> >> > And only one more simple question... Could you please provide me a
>> >> > code
>> >> > example? I will try to search archive, or other resources that you
>> >> > gave
>> >> > me.
>> >> > Anyway, I would be grateful if you could help me.
>> >> > Once again, thank you very much!
>> >> > Best,
>> >> > Srecko Joksimovic
>> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
>> >> > <ru...@gmail.com> wrote:
>> >> >>
>> >> >> Hi
>> >> >>
>> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
>> >> >> <sr...@gmail.com> wrote:
>> >> >> > Hello Mr Westenthaler,
>> >> >> > I have configured Apache Stanbol. I can access services using
>> >> >> > http://localhost:8080. I tried to do steps that you described, and
>> >> >> > I
>> >> >> > did
>> >> >> > not
>> >> >> > have a problem with step 2, but I am not sure that I did step
>> >> >> > 1 correctly.
>> >> >> > When I issued command like this one:
>> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> > "@acm_ccs-proton_rdfxml.owl"
>> >> >> > http://localhost:8080/entityhub/entity
>> >> >> > I got response:
>> >> >> > curl: (52) Empty reply from server
>> >> >> > This file which I am trying to upload is almost 1MB big. It should
>> >> >> > not
>> >> >> > be a
>> >> >> > problem with memory.
>> >> >> > Do you have any idea what could be a problem? How I can check that
>> >> >> > I
>> >> >> > did
>> >> >> > the
>> >> >> > job correctly?
>> >> >>
>> >> >>
>> >> >> when you add the '-v' switch to 'curl' than you should see the
>> >> >> returned HTTP status code of the response.
>> >> >>
>> >> >> In case of a success the server returns a "201 Created" and the ID
>> >> >> of
>> >> >> the first created entity in the
>> >> >> Location header field
>> >> >>
>> >> >> here an example of an response after importing the FOAF file of Ivan
>> >> >> Herman
>> >> >>
>> >> >> < HTTP/1.1 201 Created
>> >> >> < Location:
>> >> >>
>> >> >>
>> >> >> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
>> >> >>
>> >> >> with a simple curl request to the url returned for the Location
>> >> >> header
>> >> >> you can easily test the imported data for this entity. To test other
>> >> >> resources simple exchange the URI.
>> >> >>
>> >> >> best
>> >> >> Rupert Westenthaler
>> >> >>
>> >> >> > Best,
>> >> >> > Srecko Joksimovic
>> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
>> >> >> > <ru...@gmail.com> wrote:
>> >> >> >>
>> >> >> >> Hallo Mr Srecko Joksimovic
>> >> >> >>
>> >> >> >> Two initial Notes:
>> >> >> >>
>> >> >> >> * I am sending this also to the stanbol-dev list, because I am on
>> >> >> >> vacation until end of August and will only read/answer mails from
>> >> >> >> time
>> >> >> >> to time until than. So maybe others of the Stanbol community will
>> >> >> >> be
>> >> >> >> able to answer questions more quickly then myself.
>> >> >> >> * I am sending this reply via my gmail account, because somehow I
>> >> >> >> am
>> >> >> >> not able to connect to the SMTP server of salzburgresearch.at.
>> >> >> >>
>> >> >> >> - - -
>> >> >> >>
>> >> >> >> Actually this is possible by using the TaxonomyLinkingEngine that
>> >> >> >> is
>> >> >> >> currently in development.
>> >> >> >>
>> >> >> >> Basically there are two steps:
>> >> >> >>
>> >> >> >> (1) upload your Ontology to the Entityhub
>> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to use
>> >> >> >> your
>> >> >> >> ontology (as stored by the Entityhub) to enhance your documents
>> >> >> >>
>> >> >> >>
>> >> >> >> for (1) there are two possibilities
>> >> >> >>
>> >> >> >> (1a) upload your ontology directly to the "/entityhub"
>> >> >> >>
>> >> >> >> If you have a Stanbol instance running at
>> >> >> >> "http://localhost:8080/"
>> >> >> >> the
>> >> >> >> followng curl command can be used to upload an RDF graph (such as
>> >> >> >> your
>> >> >> >> ontology)
>> >> >> >>
>> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>> >> >> >>
>> >> >> >> This assumes that your Ontology is encoded as
>> >> >> >> "application/rdf+xml".
>> >> >> >> {rdfXmlFile} denotes to the path to the file on the local file
>> >> >> >> system.
>> >> >> >> Please also have a look at [1] for a more detailed description on
>> >> >> >> how
>> >> >> >> to upload RDF data to the "/entityhub" endpoint.
>> >> >> >>
>> >> >> >> (1b) manage the RDF data as an own ReferencedSite
>> >> >> >>
>> >> >> >> The Entityhub also supports the configuration of so called
>> >> >> >> ReferencedSites. This allows to manage different RDF datasets
>> >> >> >> (e.g.
>> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology,
>> >> >> >> ...).
>> >> >> >> Such sites are read-only and accessible under
>> >> >> >> http://localhost:8080/entityhub/site/{siteId}
>> >> >> >>
>> >> >> >> Stanbol also includes an indexing tool that helps you in creating
>> >> >> >> such
>> >> >> >> "referencedSites" for local datasets (such as your Ontology). A
>> >> >> >> detailed description of this process can be found at [3]. [2] is
>> >> >> >> a
>> >> >> >> specific configuration of [3] for the IPTC thesaurus.
>> >> >> >>
>> >> >> >> In general for testing I would suggest to use (1a) because it is
>> >> >> >> much
>> >> >> >> easer to start with. However (1a) will require to load your
>> >> >> >> ontology
>> >> >> >> in memory therefore it will not work for big datasets. In
>> >> >> >> addition
>> >> >> >> (1b) allows you to optimize your ontology (by defining mappings)
>> >> >> >> during the indexing process and it gives you the possibility to
>> >> >> >> use
>> >> >> >> different Ontologies for enhancing your content. Therefore for
>> >> >> >> more
>> >> >> >> complex usage scenarios option (1b) is typically the better
>> >> >> >> solution.
>> >> >> >>
>> >> >> >> (2) Configure the TaxonomylinkingEngine
>> >> >> >>
>> >> >> >> This Engine is by default included in the Full launcher of
>> >> >> >> Stanbol.
>> >> >> >> If
>> >> >> >> you prefer the stable launcher you will need to manually install
>> >> >> >> it
>> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
>> >> >> >> http://localhost:8080/system/console default user: admin pwd:
>> >> >> >> admin).
>> >> >> >> The bundle to install can be found at
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>> >> >> >>
>> >> >> >> Assuming a running Stanbol Instance that includes the
>> >> >> >> TaxonomyLinkingEngine the following steps are required for the
>> >> >> >> configuration:
>> >> >> >> 1. go the "configuration tab"
>> >> >> >> (http://localhost:8080/system/console/configMgr)
>> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy
>> >> >> >> linking"
>> >> >> >> 3. pres on the [+] button on the end of this line (this will open
>> >> >> >> the
>> >> >> >> dialog to configure a new instance of this engine)
>> >> >> >> 4. configure the source. If you used (1a) put "entityhub" in case
>> >> >> >> of
>> >> >> >> (1b) you must enter the siteId of the referenced site.
>> >> >> >> 5. configure the property used to search for labels of the
>> >> >> >> concepts
>> >> >> >> in
>> >> >> >> your Ontology. The default is rdfs:label (typically used for
>> >> >> >> labeling
>> >> >> >> concepts within ontologies, but you might also want to use a
>> >> >> >> different
>> >> >> >> one based on your ontology
>> >> >> >>
>> >> >> >> I would not recommend to change any other properties because this
>> >> >> >> engine is currently under development and changes to this values
>> >> >> >> might
>> >> >> >> not be implemented or even worse break this engine.
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> best
>> >> >> >> Rupert Westenthaler
>> >> >> >>
>> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
>> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
>> >> >> >> [3]
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>> >> >> >>
>> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
>> >> >> >> <sr...@gmail.com>:
>> >> >> >> >
>> >> >> >> > Hello Mr Westenthaler,
>> >> >> >> >
>> >> >> >> > Mr Pereira gave me your contact, in order to ask you a few
>> >> >> >> > questions
>> >> >> >> > about
>> >> >> >> > Apache Stanbol. I suppose that you have received Mr Pereira's
>> >> >> >> > email
>> >> >> >> > which he
>> >> >> >> > sent to me, and you maybe already know what the problem is.
>> >> >> >> >
>> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is to
>> >> >> >> > load
>> >> >> >> > my
>> >> >> >> > ontology, and than to call method which is going to annotate
>> >> >> >> > provided
>> >> >> >> > text,
>> >> >> >> > based on loaded ontology. Could you please explain to me how to
>> >> >> >> > implement
>> >> >> >> > scenario which I described using Apache Stanbol? If you could
>> >> >> >> > provide
>> >> >> >> > me
>> >> >> >> > a
>> >> >> >> > code example, I would be very grateful.
>> >> >> >> >
>> >> >> >> > Thank you very much.
>> >> >> >> >
>> >> >> >> > Best,
>> >> >> >> > Srecko Joksimovic
>> >> >> >>
>> >> >> >> --
>> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> >> | Bodenlehenstraße 11
>> >> >> >> ++43-699-11108907
>> >> >> >> | A-5500 Bischofshofen
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> >> | A-5500 Bischofshofen
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> | A-5500 Bischofshofen
>> >
>> >
>>
>>
>>
>> --
>> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> | Bodenlehenstraße 11                             ++43-699-11108907
>> | A-5500 Bischofshofen
>
>



-- 
| Rupert Westenthaler             rupert.westenthaler@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
That was the problem! Great! It works now.

Still, my old (boring) question... how to access service from Java
application and post string which I would like to annotate? I know how to
implement service client, but could you describe me the process in this
case?

Best,
Srecko Joksimovic

On Mon, Aug 15, 2011 at 1:22 PM, Rupert Westenthaler <
rupert.westenthaler@gmail.com> wrote:

> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
> <sr...@gmail.com> wrote:
> > Hi,
> > I have to ask again...
> > I posted this command: curl -X POST -d "name=Optimization"
> > http://localhost:8080/entityhub/find
> > and the result is as follows:
> > {
> >     "query": {
> >         "selected": [
> >
> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
> >             "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
> >             "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
> >         ],
> >         "constraints": [{
> >             "type": "text",
> >             "patternType": "wildcard",
> >             "text": "Optimization",
> >             "field":
> > "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>
> Looks like that the default search field for the Entityhub is still
> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
> rdfs:label.
>
> I was in the impression that I have changed that some time ago to
> "rdfs:label" as it is the case for ReferencedSites.
>
> In that case you need to explicitly parse rdfs:label as field as in the
> following example
>
>    curl -X POST -d
> "name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
> http://localhost:8080/entityhub/find
>
> best
> Rupert
>
> >         }],
> >         "limit": 5,
> >         "offset": 0
> >     },
> >     "results": []
> > }
> > I did something wrong, but I am not sure what. Could you please help me
> on
> > this one?
> > On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
> > <ru...@gmail.com> wrote:
> >>
> >> Hi
> >>
> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
> >> <sr...@gmail.com> wrote:
> >> > Thank you!
> >> > Now I got message which says:
> >> > Unable to create an Entity that does already exist
> >>
> >> This simple tells you that an Entity you tried to create already
> existed.
> >> So I assume that a previous import of your Ontology was successful.
> >>
> >> > as I understand, this means that I did it right first time. How I can
> >> > read
> >> > ID of this Entity? I did not use -v switch first time when I tried
> >> > upload,
> >> > and now I do not know ID. Or maybe I do, but I am not aware of that...
> >>
> >> You should know the URIs of the concepts in your Ontology.
> >>
> >> curl http://localhost:8080/entityhub/entity?id={concept-uri}
> >>
> >> If you know some labels you can also use the query service
> >>
> >>    curl -X POST -d "name={label}" http://localhost:8080/entityhub/find
> >>
> >> name takes wildcard searches such as "Her?a*" and reaches for values
> >> of the "rdfs:label" property.
> >>
> >> if you want to search labels for properties other than "rdfs:label"
> >> you can use the field parameter.
> >> Here an example for searching all Persons with a "foaf:name" "Ivan*"
> >>
> >>    curl -X POST -d "name=Ivan*&field=http://xmlns.com/foaf/0.1/name"
> >> http://localhost:8080/entityhub/find
> >>
> >>
> >> As an alternative you could also use the query interface as described on
> >>
> >> http://localhost:8080/entityhub/query
> >>
> >> best
> >> Rupert
> >>
> >> > And only one more simple question... Could you please provide me a
> code
> >> > example? I will try to search archive, or other resources that you
> gave
> >> > me.
> >> > Anyway, I would be grateful if you could help me.
> >> > Once again, thank you very much!
> >> > Best,
> >> > Srecko Joksimovic
> >> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
> >> > <ru...@gmail.com> wrote:
> >> >>
> >> >> Hi
> >> >>
> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
> >> >> <sr...@gmail.com> wrote:
> >> >> > Hello Mr Westenthaler,
> >> >> > I have configured Apache Stanbol. I can access services using
> >> >> > http://localhost:8080. I tried to do steps that you described, and
> I
> >> >> > did
> >> >> > not
> >> >> > have a problem with step 2, but I am not sure that I did step
> >> >> > 1 correctly.
> >> >> > When I issued command like this one:
> >> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> >> > "@acm_ccs-proton_rdfxml.owl"
> http://localhost:8080/entityhub/entity
> >> >> > I got response:
> >> >> > curl: (52) Empty reply from server
> >> >> > This file which I am trying to upload is almost 1MB big. It should
> >> >> > not
> >> >> > be a
> >> >> > problem with memory.
> >> >> > Do you have any idea what could be a problem? How I can check that
> I
> >> >> > did
> >> >> > the
> >> >> > job correctly?
> >> >>
> >> >>
> >> >> when you add the '-v' switch to 'curl' than you should see the
> >> >> returned HTTP status code of the response.
> >> >>
> >> >> In case of a success the server returns a "201 Created" and the ID of
> >> >> the first created entity in the
> >> >> Location header field
> >> >>
> >> >> here an example of an response after importing the FOAF file of Ivan
> >> >> Herman
> >> >>
> >> >> < HTTP/1.1 201 Created
> >> >> < Location:
> >> >>
> >> >>
> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
> >> >>
> >> >> with a simple curl request to the url returned for the Location
> header
> >> >> you can easily test the imported data for this entity. To test other
> >> >> resources simple exchange the URI.
> >> >>
> >> >> best
> >> >> Rupert Westenthaler
> >> >>
> >> >> > Best,
> >> >> > Srecko Joksimovic
> >> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
> >> >> > <ru...@gmail.com> wrote:
> >> >> >>
> >> >> >> Hallo Mr Srecko Joksimovic
> >> >> >>
> >> >> >> Two initial Notes:
> >> >> >>
> >> >> >> * I am sending this also to the stanbol-dev list, because I am on
> >> >> >> vacation until end of August and will only read/answer mails from
> >> >> >> time
> >> >> >> to time until than. So maybe others of the Stanbol community will
> be
> >> >> >> able to answer questions more quickly then myself.
> >> >> >> * I am sending this reply via my gmail account, because somehow I
> am
> >> >> >> not able to connect to the SMTP server of salzburgresearch.at.
> >> >> >>
> >> >> >> - - -
> >> >> >>
> >> >> >> Actually this is possible by using the TaxonomyLinkingEngine that
> is
> >> >> >> currently in development.
> >> >> >>
> >> >> >> Basically there are two steps:
> >> >> >>
> >> >> >> (1) upload your Ontology to the Entityhub
> >> >> >> (2) configure an instance of the TaxonomyLinkingEngine to use your
> >> >> >> ontology (as stored by the Entityhub) to enhance your documents
> >> >> >>
> >> >> >>
> >> >> >> for (1) there are two possibilities
> >> >> >>
> >> >> >> (1a) upload your ontology directly to the "/entityhub"
> >> >> >>
> >> >> >> If you have a Stanbol instance running at "http://localhost:8080/
> "
> >> >> >> the
> >> >> >> followng curl command can be used to upload an RDF graph (such as
> >> >> >> your
> >> >> >> ontology)
> >> >> >>
> >> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
> >> >> >>
> >> >> >> This assumes that your Ontology is encoded as
> "application/rdf+xml".
> >> >> >> {rdfXmlFile} denotes to the path to the file on the local file
> >> >> >> system.
> >> >> >> Please also have a look at [1] for a more detailed description on
> >> >> >> how
> >> >> >> to upload RDF data to the "/entityhub" endpoint.
> >> >> >>
> >> >> >> (1b) manage the RDF data as an own ReferencedSite
> >> >> >>
> >> >> >> The Entityhub also supports the configuration of so called
> >> >> >> ReferencedSites. This allows to manage different RDF datasets
> (e.g.
> >> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology,
> ...).
> >> >> >> Such sites are read-only and accessible under
> >> >> >> http://localhost:8080/entityhub/site/{siteId}
> >> >> >>
> >> >> >> Stanbol also includes an indexing tool that helps you in creating
> >> >> >> such
> >> >> >> "referencedSites" for local datasets (such as your Ontology). A
> >> >> >> detailed description of this process can be found at [3]. [2] is a
> >> >> >> specific configuration of [3] for the IPTC thesaurus.
> >> >> >>
> >> >> >> In general for testing I would suggest to use (1a) because it is
> >> >> >> much
> >> >> >> easer to start with. However (1a) will require to load your
> ontology
> >> >> >> in memory therefore it will not work for big datasets. In addition
> >> >> >> (1b) allows you to optimize your ontology (by defining mappings)
> >> >> >> during the indexing process and it gives you the possibility to
> use
> >> >> >> different Ontologies for enhancing your content. Therefore for
> more
> >> >> >> complex usage scenarios option (1b) is typically the better
> >> >> >> solution.
> >> >> >>
> >> >> >> (2) Configure the TaxonomylinkingEngine
> >> >> >>
> >> >> >> This Engine is by default included in the Full launcher of
> Stanbol.
> >> >> >> If
> >> >> >> you prefer the stable launcher you will need to manually install
> it
> >> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
> >> >> >> http://localhost:8080/system/console default user: admin pwd:
> >> >> >> admin).
> >> >> >> The bundle to install can be found at
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>
> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
> >> >> >>
> >> >> >> Assuming a running Stanbol Instance that includes the
> >> >> >> TaxonomyLinkingEngine the following steps are required for the
> >> >> >> configuration:
> >> >> >> 1. go the "configuration tab"
> >> >> >> (http://localhost:8080/system/console/configMgr)
> >> >> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy
> >> >> >> linking"
> >> >> >> 3. pres on the [+] button on the end of this line (this will open
> >> >> >> the
> >> >> >> dialog to configure a new instance of this engine)
> >> >> >> 4. configure the source. If you used (1a) put "entityhub" in case
> of
> >> >> >> (1b) you must enter the siteId of the referenced site.
> >> >> >> 5. configure the property used to search for labels of the
> concepts
> >> >> >> in
> >> >> >> your Ontology. The default is rdfs:label (typically used for
> >> >> >> labeling
> >> >> >> concepts within ontologies, but you might also want to use a
> >> >> >> different
> >> >> >> one based on your ontology
> >> >> >>
> >> >> >> I would not recommend to change any other properties because this
> >> >> >> engine is currently under development and changes to this values
> >> >> >> might
> >> >> >> not be implemented or even worse break this engine.
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> best
> >> >> >> Rupert Westenthaler
> >> >> >>
> >> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
> >> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
> >> >> >> [3]
> >> >> >>
> >> >> >>
> >> >> >>
> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
> >> >> >>
> >> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
> >> >> >> <sr...@gmail.com>:
> >> >> >> >
> >> >> >> > Hello Mr Westenthaler,
> >> >> >> >
> >> >> >> > Mr Pereira gave me your contact, in order to ask you a few
> >> >> >> > questions
> >> >> >> > about
> >> >> >> > Apache Stanbol. I suppose that you have received Mr Pereira's
> >> >> >> > email
> >> >> >> > which he
> >> >> >> > sent to me, and you maybe already know what the problem is.
> >> >> >> >
> >> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is to
> load
> >> >> >> > my
> >> >> >> > ontology, and than to call method which is going to annotate
> >> >> >> > provided
> >> >> >> > text,
> >> >> >> > based on loaded ontology. Could you please explain to me how to
> >> >> >> > implement
> >> >> >> > scenario which I described using Apache Stanbol? If you could
> >> >> >> > provide
> >> >> >> > me
> >> >> >> > a
> >> >> >> > code example, I would be very grateful.
> >> >> >> >
> >> >> >> > Thank you very much.
> >> >> >> >
> >> >> >> > Best,
> >> >> >> > Srecko Joksimovic
> >> >> >>
> >> >> >> --
> >> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> >> >> | Bodenlehenstraße 11
> ++43-699-11108907
> >> >> >> | A-5500 Bischofshofen
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> >> | A-5500 Bischofshofen
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> | A-5500 Bischofshofen
> >
> >
>
>
>
> --
> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> | Bodenlehenstraße 11                             ++43-699-11108907
> | A-5500 Bischofshofen
>

Re: Apache Stanbol

Posted by Rupert Westenthaler <ru...@gmail.com>.
On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic
<sr...@gmail.com> wrote:
> Hi,
> I have to ask again...
> I posted this command: curl -X POST -d "name=Optimization"
> http://localhost:8080/entityhub/find
> and the result is as follows:
> {
>     "query": {
>         "selected": [
>
> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/description",
>             "http:\/\/www.iks-project.eu\/ontology\/rick\/query\/score",
>             "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"
>         ],
>         "constraints": [{
>             "type": "text",
>             "patternType": "wildcard",
>             "text": "Optimization",
>             "field":
> "http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label"

Looks like that the default search field for the Entityhub is still
"http:\/\/www.iks-project.eu\/ontology\/rick\/model\/label" and not
rdfs:label.

I was in the impression that I have changed that some time ago to
"rdfs:label" as it is the case for ReferencedSites.

In that case you need to explicitly parse rdfs:label as field as in the
following example

    curl -X POST -d
"name=Optimization&field=http://www.w3.org/2000/01/rdf-schema#label"
http://localhost:8080/entityhub/find

best
Rupert

>         }],
>         "limit": 5,
>         "offset": 0
>     },
>     "results": []
> }
> I did something wrong, but I am not sure what. Could you please help me on
> this one?
> On Mon, Aug 15, 2011 at 12:28 PM, Rupert Westenthaler
> <ru...@gmail.com> wrote:
>>
>> Hi
>>
>> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic
>> <sr...@gmail.com> wrote:
>> > Thank you!
>> > Now I got message which says:
>> > Unable to create an Entity that does already exist
>>
>> This simple tells you that an Entity you tried to create already existed.
>> So I assume that a previous import of your Ontology was successful.
>>
>> > as I understand, this means that I did it right first time. How I can
>> > read
>> > ID of this Entity? I did not use -v switch first time when I tried
>> > upload,
>> > and now I do not know ID. Or maybe I do, but I am not aware of that...
>>
>> You should know the URIs of the concepts in your Ontology.
>>
>> curl http://localhost:8080/entityhub/entity?id={concept-uri}
>>
>> If you know some labels you can also use the query service
>>
>>    curl -X POST -d "name={label}" http://localhost:8080/entityhub/find
>>
>> name takes wildcard searches such as "Her?a*" and reaches for values
>> of the "rdfs:label" property.
>>
>> if you want to search labels for properties other than "rdfs:label"
>> you can use the field parameter.
>> Here an example for searching all Persons with a "foaf:name" "Ivan*"
>>
>>    curl -X POST -d "name=Ivan*&field=http://xmlns.com/foaf/0.1/name"
>> http://localhost:8080/entityhub/find
>>
>>
>> As an alternative you could also use the query interface as described on
>>
>> http://localhost:8080/entityhub/query
>>
>> best
>> Rupert
>>
>> > And only one more simple question... Could you please provide me a code
>> > example? I will try to search archive, or other resources that you gave
>> > me.
>> > Anyway, I would be grateful if you could help me.
>> > Once again, thank you very much!
>> > Best,
>> > Srecko Joksimovic
>> > On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler
>> > <ru...@gmail.com> wrote:
>> >>
>> >> Hi
>> >>
>> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
>> >> <sr...@gmail.com> wrote:
>> >> > Hello Mr Westenthaler,
>> >> > I have configured Apache Stanbol. I can access services using
>> >> > http://localhost:8080. I tried to do steps that you described, and I
>> >> > did
>> >> > not
>> >> > have a problem with step 2, but I am not sure that I did step
>> >> > 1 correctly.
>> >> > When I issued command like this one:
>> >> > curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> > "@acm_ccs-proton_rdfxml.owl" http://localhost:8080/entityhub/entity
>> >> > I got response:
>> >> > curl: (52) Empty reply from server
>> >> > This file which I am trying to upload is almost 1MB big. It should
>> >> > not
>> >> > be a
>> >> > problem with memory.
>> >> > Do you have any idea what could be a problem? How I can check that I
>> >> > did
>> >> > the
>> >> > job correctly?
>> >>
>> >>
>> >> when you add the '-v' switch to 'curl' than you should see the
>> >> returned HTTP status code of the response.
>> >>
>> >> In case of a success the server returns a "201 Created" and the ID of
>> >> the first created entity in the
>> >> Location header field
>> >>
>> >> here an example of an response after importing the FOAF file of Ivan
>> >> Herman
>> >>
>> >> < HTTP/1.1 201 Created
>> >> < Location:
>> >>
>> >> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
>> >>
>> >> with a simple curl request to the url returned for the Location header
>> >> you can easily test the imported data for this entity. To test other
>> >> resources simple exchange the URI.
>> >>
>> >> best
>> >> Rupert Westenthaler
>> >>
>> >> > Best,
>> >> > Srecko Joksimovic
>> >> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
>> >> > <ru...@gmail.com> wrote:
>> >> >>
>> >> >> Hallo Mr Srecko Joksimovic
>> >> >>
>> >> >> Two initial Notes:
>> >> >>
>> >> >> * I am sending this also to the stanbol-dev list, because I am on
>> >> >> vacation until end of August and will only read/answer mails from
>> >> >> time
>> >> >> to time until than. So maybe others of the Stanbol community will be
>> >> >> able to answer questions more quickly then myself.
>> >> >> * I am sending this reply via my gmail account, because somehow I am
>> >> >> not able to connect to the SMTP server of salzburgresearch.at.
>> >> >>
>> >> >> - - -
>> >> >>
>> >> >> Actually this is possible by using the TaxonomyLinkingEngine that is
>> >> >> currently in development.
>> >> >>
>> >> >> Basically there are two steps:
>> >> >>
>> >> >> (1) upload your Ontology to the Entityhub
>> >> >> (2) configure an instance of the TaxonomyLinkingEngine to use your
>> >> >> ontology (as stored by the Entityhub) to enhance your documents
>> >> >>
>> >> >>
>> >> >> for (1) there are two possibilities
>> >> >>
>> >> >> (1a) upload your ontology directly to the "/entityhub"
>> >> >>
>> >> >> If you have a Stanbol instance running at "http://localhost:8080/"
>> >> >> the
>> >> >> followng curl command can be used to upload an RDF graph (such as
>> >> >> your
>> >> >> ontology)
>> >> >>
>> >> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
>> >> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>> >> >>
>> >> >> This assumes that your Ontology is encoded as "application/rdf+xml".
>> >> >> {rdfXmlFile} denotes to the path to the file on the local file
>> >> >> system.
>> >> >> Please also have a look at [1] for a more detailed description on
>> >> >> how
>> >> >> to upload RDF data to the "/entityhub" endpoint.
>> >> >>
>> >> >> (1b) manage the RDF data as an own ReferencedSite
>> >> >>
>> >> >> The Entityhub also supports the configuration of so called
>> >> >> ReferencedSites. This allows to manage different RDF datasets (e.g.
>> >> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology, ...).
>> >> >> Such sites are read-only and accessible under
>> >> >> http://localhost:8080/entityhub/site/{siteId}
>> >> >>
>> >> >> Stanbol also includes an indexing tool that helps you in creating
>> >> >> such
>> >> >> "referencedSites" for local datasets (such as your Ontology). A
>> >> >> detailed description of this process can be found at [3]. [2] is a
>> >> >> specific configuration of [3] for the IPTC thesaurus.
>> >> >>
>> >> >> In general for testing I would suggest to use (1a) because it is
>> >> >> much
>> >> >> easer to start with. However (1a) will require to load your ontology
>> >> >> in memory therefore it will not work for big datasets. In addition
>> >> >> (1b) allows you to optimize your ontology (by defining mappings)
>> >> >> during the indexing process and it gives you the possibility to use
>> >> >> different Ontologies for enhancing your content. Therefore for more
>> >> >> complex usage scenarios option (1b) is typically the better
>> >> >> solution.
>> >> >>
>> >> >> (2) Configure the TaxonomylinkingEngine
>> >> >>
>> >> >> This Engine is by default included in the Full launcher of Stanbol.
>> >> >> If
>> >> >> you prefer the stable launcher you will need to manually install it
>> >> >> (e.g. by using the Apache Felix Wenconsole accessible under
>> >> >> http://localhost:8080/system/console default user: admin pwd:
>> >> >> admin).
>> >> >> The bundle to install can be found at
>> >> >>
>> >> >>
>> >> >>
>> >> >> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>> >> >>
>> >> >> Assuming a running Stanbol Instance that includes the
>> >> >> TaxonomyLinkingEngine the following steps are required for the
>> >> >> configuration:
>> >> >> 1. go the "configuration tab"
>> >> >> (http://localhost:8080/system/console/configMgr)
>> >> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy
>> >> >> linking"
>> >> >> 3. pres on the [+] button on the end of this line (this will open
>> >> >> the
>> >> >> dialog to configure a new instance of this engine)
>> >> >> 4. configure the source. If you used (1a) put "entityhub" in case of
>> >> >> (1b) you must enter the siteId of the referenced site.
>> >> >> 5. configure the property used to search for labels of the concepts
>> >> >> in
>> >> >> your Ontology. The default is rdfs:label (typically used for
>> >> >> labeling
>> >> >> concepts within ontologies, but you might also want to use a
>> >> >> different
>> >> >> one based on your ontology
>> >> >>
>> >> >> I would not recommend to change any other properties because this
>> >> >> engine is currently under development and changes to this values
>> >> >> might
>> >> >> not be implemented or even worse break this engine.
>> >> >>
>> >> >>
>> >> >>
>> >> >> best
>> >> >> Rupert Westenthaler
>> >> >>
>> >> >> [1] http://markmail.org/message/plertstj6fx4xutj
>> >> >> [2] http://markmail.org/message/rgwug74s3u6olrby
>> >> >> [3]
>> >> >>
>> >> >>
>> >> >> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>> >> >>
>> >> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
>> >> >> <sr...@gmail.com>:
>> >> >> >
>> >> >> > Hello Mr Westenthaler,
>> >> >> >
>> >> >> > Mr Pereira gave me your contact, in order to ask you a few
>> >> >> > questions
>> >> >> > about
>> >> >> > Apache Stanbol. I suppose that you have received Mr Pereira's
>> >> >> > email
>> >> >> > which he
>> >> >> > sent to me, and you maybe already know what the problem is.
>> >> >> >
>> >> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is to load
>> >> >> > my
>> >> >> > ontology, and than to call method which is going to annotate
>> >> >> > provided
>> >> >> > text,
>> >> >> > based on loaded ontology. Could you please explain to me how to
>> >> >> > implement
>> >> >> > scenario which I described using Apache Stanbol? If you could
>> >> >> > provide
>> >> >> > me
>> >> >> > a
>> >> >> > code example, I would be very grateful.
>> >> >> >
>> >> >> > Thank you very much.
>> >> >> >
>> >> >> > Best,
>> >> >> > Srecko Joksimovic
>> >> >>
>> >> >> --
>> >> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> >> | A-5500 Bischofshofen
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> >> | Bodenlehenstraße 11                             ++43-699-11108907
>> >> | A-5500 Bischofshofen
>> >
>> >
>>
>>
>>
>> --
>> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> | Bodenlehenstraße 11                             ++43-699-11108907
>> | A-5500 Bischofshofen
>
>



-- 
| Rupert Westenthaler             rupert.westenthaler@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Thank you!
Now I got message which says:

*Unable to create an Entity that does already exist*
*
*
as I understand, this means that I did it right first time. How I can read
ID of this Entity? I did not use -v switch first time when I tried upload,
and now I do not know ID. Or maybe I do, but I am not aware of that...

And only one more simple question... Could you please provide me a code
example? I will try to search archive, or other resources that you gave me.
Anyway, I would be grateful if you could help me.

Once again, thank you very much!

Best,
Srecko Joksimovic

On Mon, Aug 15, 2011 at 11:57 AM, Rupert Westenthaler <
rupert.westenthaler@gmail.com> wrote:

> Hi
>
> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
> <sr...@gmail.com> wrote:
> > Hello Mr Westenthaler,
> > I have configured Apache Stanbol. I can access services using
> > http://localhost:8080. I tried to do steps that you described, and I did
> not
> > have a problem with step 2, but I am not sure that I did step
> 1 correctly.
> > When I issued command like this one:
> > curl -X POST -H "Content-Type: application/rdf+xml" --data
> > "@acm_ccs-proton_rdfxml.owl" http://localhost:8080/entityhub/entity
> > I got response:
> > curl: (52) Empty reply from server
> > This file which I am trying to upload is almost 1MB big. It should not be
> a
> > problem with memory.
> > Do you have any idea what could be a problem? How I can check that I did
> the
> > job correctly?
>
>
> when you add the '-v' switch to 'curl' than you should see the
> returned HTTP status code of the response.
>
> In case of a success the server returns a "201 Created" and the ID of
> the first created entity in the
> Location header field
>
> here an example of an response after importing the FOAF file of Ivan Herman
>
> < HTTP/1.1 201 Created
> < Location:
> http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy
>
> with a simple curl request to the url returned for the Location header
> you can easily test the imported data for this entity. To test other
> resources simple exchange the URI.
>
> best
> Rupert Westenthaler
>
> > Best,
> > Srecko Joksimovic
> > On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
> > <ru...@gmail.com> wrote:
> >>
> >> Hallo Mr Srecko Joksimovic
> >>
> >> Two initial Notes:
> >>
> >> * I am sending this also to the stanbol-dev list, because I am on
> >> vacation until end of August and will only read/answer mails from time
> >> to time until than. So maybe others of the Stanbol community will be
> >> able to answer questions more quickly then myself.
> >> * I am sending this reply via my gmail account, because somehow I am
> >> not able to connect to the SMTP server of salzburgresearch.at.
> >>
> >> - - -
> >>
> >> Actually this is possible by using the TaxonomyLinkingEngine that is
> >> currently in development.
> >>
> >> Basically there are two steps:
> >>
> >> (1) upload your Ontology to the Entityhub
> >> (2) configure an instance of the TaxonomyLinkingEngine to use your
> >> ontology (as stored by the Entityhub) to enhance your documents
> >>
> >>
> >> for (1) there are two possibilities
> >>
> >> (1a) upload your ontology directly to the "/entityhub"
> >>
> >> If you have a Stanbol instance running at "http://localhost:8080/" the
> >> followng curl command can be used to upload an RDF graph (such as your
> >> ontology)
> >>
> >> curl -X POST -H "Content-Type: application/rdf+xml" --data
> >> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
> >>
> >> This assumes that your Ontology is encoded as "application/rdf+xml".
> >> {rdfXmlFile} denotes to the path to the file on the local file system.
> >> Please also have a look at [1] for a more detailed description on how
> >> to upload RDF data to the "/entityhub" endpoint.
> >>
> >> (1b) manage the RDF data as an own ReferencedSite
> >>
> >> The Entityhub also supports the configuration of so called
> >> ReferencedSites. This allows to manage different RDF datasets (e.g.
> >> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology, ...).
> >> Such sites are read-only and accessible under
> >> http://localhost:8080/entityhub/site/{siteId}
> >>
> >> Stanbol also includes an indexing tool that helps you in creating such
> >> "referencedSites" for local datasets (such as your Ontology). A
> >> detailed description of this process can be found at [3]. [2] is a
> >> specific configuration of [3] for the IPTC thesaurus.
> >>
> >> In general for testing I would suggest to use (1a) because it is much
> >> easer to start with. However (1a) will require to load your ontology
> >> in memory therefore it will not work for big datasets. In addition
> >> (1b) allows you to optimize your ontology (by defining mappings)
> >> during the indexing process and it gives you the possibility to use
> >> different Ontologies for enhancing your content. Therefore for more
> >> complex usage scenarios option (1b) is typically the better solution.
> >>
> >> (2) Configure the TaxonomylinkingEngine
> >>
> >> This Engine is by default included in the Full launcher of Stanbol. If
> >> you prefer the stable launcher you will need to manually install it
> >> (e.g. by using the Apache Felix Wenconsole accessible under
> >> http://localhost:8080/system/console default user: admin pwd: admin).
> >> The bundle to install can be found at
> >>
> >>
> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
> >>
> >> Assuming a running Stanbol Instance that includes the
> >> TaxonomyLinkingEngine the following steps are required for the
> >> configuration:
> >> 1. go the "configuration tab"
> >> (http://localhost:8080/system/console/configMgr)
> >> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy linking"
> >> 3. pres on the [+] button on the end of this line (this will open the
> >> dialog to configure a new instance of this engine)
> >> 4. configure the source. If you used (1a) put "entityhub" in case of
> >> (1b) you must enter the siteId of the referenced site.
> >> 5. configure the property used to search for labels of the concepts in
> >> your Ontology. The default is rdfs:label (typically used for labeling
> >> concepts within ontologies, but you might also want to use a different
> >> one based on your ontology
> >>
> >> I would not recommend to change any other properties because this
> >> engine is currently under development and changes to this values might
> >> not be implemented or even worse break this engine.
> >>
> >>
> >>
> >> best
> >> Rupert Westenthaler
> >>
> >> [1] http://markmail.org/message/plertstj6fx4xutj
> >> [2] http://markmail.org/message/rgwug74s3u6olrby
> >> [3]
> >>
> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
> >>
> >> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
> >> <sr...@gmail.com>:
> >> >
> >> > Hello Mr Westenthaler,
> >> >
> >> > Mr Pereira gave me your contact, in order to ask you a few questions
> >> > about
> >> > Apache Stanbol. I suppose that you have received Mr Pereira's email
> >> > which he
> >> > sent to me, and you maybe already know what the problem is.
> >> >
> >> > Mr Pereira suggested me to use Apache Stanbol. The idea is to load my
> >> > ontology, and than to call method which is going to annotate provided
> >> > text,
> >> > based on loaded ontology. Could you please explain to me how to
> >> > implement
> >> > scenario which I described using Apache Stanbol? If you could provide
> me
> >> > a
> >> > code example, I would be very grateful.
> >> >
> >> > Thank you very much.
> >> >
> >> > Best,
> >> > Srecko Joksimovic
> >>
> >> --
> >> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> >> | Bodenlehenstraße 11                             ++43-699-11108907
> >> | A-5500 Bischofshofen
> >
> >
>
>
>
> --
> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> | Bodenlehenstraße 11                             ++43-699-11108907
> | A-5500 Bischofshofen
>

Re: Apache Stanbol

Posted by Rupert Westenthaler <ru...@gmail.com>.
Hi

On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic
<sr...@gmail.com> wrote:
> Hello Mr Westenthaler,
> I have configured Apache Stanbol. I can access services using
> http://localhost:8080. I tried to do steps that you described, and I did not
> have a problem with step 2, but I am not sure that I did step 1 correctly.
> When I issued command like this one:
> curl -X POST -H "Content-Type: application/rdf+xml" --data
> "@acm_ccs-proton_rdfxml.owl" http://localhost:8080/entityhub/entity
> I got response:
> curl: (52) Empty reply from server
> This file which I am trying to upload is almost 1MB big. It should not be a
> problem with memory.
> Do you have any idea what could be a problem? How I can check that I did the
> job correctly?


when you add the '-v' switch to 'curl' than you should see the
returned HTTP status code of the response.

In case of a success the server returns a "201 Created" and the ID of
the first created entity in the
Location header field

here an example of an response after importing the FOAF file of Ivan Herman

< HTTP/1.1 201 Created
< Location: http://localhost:8080/entityhub/entity?id=http://www.ivan-herman.net/foafExtras.rdf%23Liddy

with a simple curl request to the url returned for the Location header
you can easily test the imported data for this entity. To test other
resources simple exchange the URI.

best
Rupert Westenthaler

> Best,
> Srecko Joksimovic
> On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler
> <ru...@gmail.com> wrote:
>>
>> Hallo Mr Srecko Joksimovic
>>
>> Two initial Notes:
>>
>> * I am sending this also to the stanbol-dev list, because I am on
>> vacation until end of August and will only read/answer mails from time
>> to time until than. So maybe others of the Stanbol community will be
>> able to answer questions more quickly then myself.
>> * I am sending this reply via my gmail account, because somehow I am
>> not able to connect to the SMTP server of salzburgresearch.at.
>>
>> - - -
>>
>> Actually this is possible by using the TaxonomyLinkingEngine that is
>> currently in development.
>>
>> Basically there are two steps:
>>
>> (1) upload your Ontology to the Entityhub
>> (2) configure an instance of the TaxonomyLinkingEngine to use your
>> ontology (as stored by the Entityhub) to enhance your documents
>>
>>
>> for (1) there are two possibilities
>>
>> (1a) upload your ontology directly to the "/entityhub"
>>
>> If you have a Stanbol instance running at "http://localhost:8080/" the
>> followng curl command can be used to upload an RDF graph (such as your
>> ontology)
>>
>> curl -X POST -H "Content-Type: application/rdf+xml" --data
>> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>>
>> This assumes that your Ontology is encoded as "application/rdf+xml".
>> {rdfXmlFile} denotes to the path to the file on the local file system.
>> Please also have a look at [1] for a more detailed description on how
>> to upload RDF data to the "/entityhub" endpoint.
>>
>> (1b) manage the RDF data as an own ReferencedSite
>>
>> The Entityhub also supports the configuration of so called
>> ReferencedSites. This allows to manage different RDF datasets (e.g.
>> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology, ...).
>> Such sites are read-only and accessible under
>> http://localhost:8080/entityhub/site/{siteId}
>>
>> Stanbol also includes an indexing tool that helps you in creating such
>> "referencedSites" for local datasets (such as your Ontology). A
>> detailed description of this process can be found at [3]. [2] is a
>> specific configuration of [3] for the IPTC thesaurus.
>>
>> In general for testing I would suggest to use (1a) because it is much
>> easer to start with. However (1a) will require to load your ontology
>> in memory therefore it will not work for big datasets. In addition
>> (1b) allows you to optimize your ontology (by defining mappings)
>> during the indexing process and it gives you the possibility to use
>> different Ontologies for enhancing your content. Therefore for more
>> complex usage scenarios option (1b) is typically the better solution.
>>
>> (2) Configure the TaxonomylinkingEngine
>>
>> This Engine is by default included in the Full launcher of Stanbol. If
>> you prefer the stable launcher you will need to manually install it
>> (e.g. by using the Apache Felix Wenconsole accessible under
>> http://localhost:8080/system/console default user: admin pwd: admin).
>> The bundle to install can be found at
>>
>> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>>
>> Assuming a running Stanbol Instance that includes the
>> TaxonomyLinkingEngine the following steps are required for the
>> configuration:
>> 1. go the "configuration tab"
>> (http://localhost:8080/system/console/configMgr)
>> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy linking"
>> 3. pres on the [+] button on the end of this line (this will open the
>> dialog to configure a new instance of this engine)
>> 4. configure the source. If you used (1a) put "entityhub" in case of
>> (1b) you must enter the siteId of the referenced site.
>> 5. configure the property used to search for labels of the concepts in
>> your Ontology. The default is rdfs:label (typically used for labeling
>> concepts within ontologies, but you might also want to use a different
>> one based on your ontology
>>
>> I would not recommend to change any other properties because this
>> engine is currently under development and changes to this values might
>> not be implemented or even worse break this engine.
>>
>>
>>
>> best
>> Rupert Westenthaler
>>
>> [1] http://markmail.org/message/plertstj6fx4xutj
>> [2] http://markmail.org/message/rgwug74s3u6olrby
>> [3]
>> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>>
>> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
>> <sr...@gmail.com>:
>> >
>> > Hello Mr Westenthaler,
>> >
>> > Mr Pereira gave me your contact, in order to ask you a few questions
>> > about
>> > Apache Stanbol. I suppose that you have received Mr Pereira's email
>> > which he
>> > sent to me, and you maybe already know what the problem is.
>> >
>> > Mr Pereira suggested me to use Apache Stanbol. The idea is to load my
>> > ontology, and than to call method which is going to annotate provided
>> > text,
>> > based on loaded ontology. Could you please explain to me how to
>> > implement
>> > scenario which I described using Apache Stanbol? If you could provide me
>> > a
>> > code example, I would be very grateful.
>> >
>> > Thank you very much.
>> >
>> > Best,
>> > Srecko Joksimovic
>>
>> --
>> | Rupert Westenthaler             rupert.westenthaler@gmail.com
>> | Bodenlehenstraße 11                             ++43-699-11108907
>> | A-5500 Bischofshofen
>
>



-- 
| Rupert Westenthaler             rupert.westenthaler@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Re: Apache Stanbol

Posted by srecko joksimovic <sr...@gmail.com>.
Hello Mr Westenthaler,

I have configured Apache Stanbol. I can access services using
http://localhost:8080. I tried to do steps that you described, and I did not
have a problem with step 2, but I am not sure that I did step 1 correctly.

When I issued command like this one:

curl -X POST -H "Content-Type: application/rdf+xml" --data
"@acm_ccs-proton_rdfxml.owl" http://localhost:8080/entityhub/entity

I got response:
*curl: (52) Empty reply from server*

This file which I am trying to upload is almost 1MB big. It should not be a
problem with memory.

Do you have any idea what could be a problem? How I can check that I did the
job correctly?

Best,
Srecko Joksimovic

On Tue, Aug 9, 2011 at 4:45 PM, Rupert Westenthaler <
rupert.westenthaler@gmail.com> wrote:

> Hallo Mr Srecko Joksimovic
>
> Two initial Notes:
>
> * I am sending this also to the stanbol-dev list, because I am on
> vacation until end of August and will only read/answer mails from time
> to time until than. So maybe others of the Stanbol community will be
> able to answer questions more quickly then myself.
> * I am sending this reply via my gmail account, because somehow I am
> not able to connect to the SMTP server of salzburgresearch.at.
>
> - - -
>
> Actually this is possible by using the TaxonomyLinkingEngine that is
> currently in development.
>
> Basically there are two steps:
>
> (1) upload your Ontology to the Entityhub
> (2) configure an instance of the TaxonomyLinkingEngine to use your
> ontology (as stored by the Entityhub) to enhance your documents
>
>
> for (1) there are two possibilities
>
> (1a) upload your ontology directly to the "/entityhub"
>
> If you have a Stanbol instance running at "http://localhost:8080/" the
> followng curl command can be used to upload an RDF graph (such as your
> ontology)
>
> curl -X POST -H "Content-Type: application/rdf+xml" --data
> "@{rdfXmlFile}" http://localhost:8080/entityhub/entity
>
> This assumes that your Ontology is encoded as "application/rdf+xml".
> {rdfXmlFile} denotes to the path to the file on the local file system.
> Please also have a look at [1] for a more detailed description on how
> to upload RDF data to the "/entityhub" endpoint.
>
> (1b) manage the RDF data as an own ReferencedSite
>
> The Entityhub also supports the configuration of so called
> ReferencedSites. This allows to manage different RDF datasets (e.g.
> dbpedia.org, geonames.org, IPTC thesaurus [2], your ontology, ...).
> Such sites are read-only and accessible under
> http://localhost:8080/entityhub/site/{siteId}
>
> Stanbol also includes an indexing tool that helps you in creating such
> "referencedSites" for local datasets (such as your Ontology). A
> detailed description of this process can be found at [3]. [2] is a
> specific configuration of [3] for the IPTC thesaurus.
>
> In general for testing I would suggest to use (1a) because it is much
> easer to start with. However (1a) will require to load your ontology
> in memory therefore it will not work for big datasets. In addition
> (1b) allows you to optimize your ontology (by defining mappings)
> during the indexing process and it gives you the possibility to use
> different Ontologies for enhancing your content. Therefore for more
> complex usage scenarios option (1b) is typically the better solution.
>
> (2) Configure the TaxonomylinkingEngine
>
> This Engine is by default included in the Full launcher of Stanbol. If
> you prefer the stable launcher you will need to manually install it
> (e.g. by using the Apache Felix Wenconsole accessible under
> http://localhost:8080/system/console default user: admin pwd: admin).
> The bundle to install can be found at
>
> "{stanbol-trunk}/enhancer/engines/taxonomylinking/target/org.apache.stanbol.enhancer.engine.taxonomy-0.9.0-incubating-SNAPSHOT.jar"
>
> Assuming a running Stanbol Instance that includes the
> TaxonomyLinkingEngine the following steps are required for the
> configuration:
> 1. go the "configuration tab" (
> http://localhost:8080/system/console/configMgr)
> 2. search for "Apache Stanbol Enhancement Engine for Taxonomy linking"
> 3. pres on the [+] button on the end of this line (this will open the
> dialog to configure a new instance of this engine)
> 4. configure the source. If you used (1a) put "entityhub" in case of
> (1b) you must enter the siteId of the referenced site.
> 5. configure the property used to search for labels of the concepts in
> your Ontology. The default is rdfs:label (typically used for labeling
> concepts within ontologies, but you might also want to use a different
> one based on your ontology
>
> I would not recommend to change any other properties because this
> engine is currently under development and changes to this values might
> not be implemented or even worse break this engine.
>
>
>
> best
> Rupert Westenthaler
>
> [1] http://markmail.org/message/plertstj6fx4xutj
> [2] http://markmail.org/message/rgwug74s3u6olrby
> [3]
> http://svn.apache.org/repos/asf/incubator/stanbol/trunk/entityhub/indexing/genericrdf/README.md
>
> Am 08.08.2011, 22:53 Uhr, schrieb srecko joksimovic
> <sr...@gmail.com>:
> >
> > Hello Mr Westenthaler,
> >
> > Mr Pereira gave me your contact, in order to ask you a few questions
> about
> > Apache Stanbol. I suppose that you have received Mr Pereira's email which
> he
> > sent to me, and you maybe already know what the problem is.
> >
> > Mr Pereira suggested me to use Apache Stanbol. The idea is to load my
> > ontology, and than to call method which is going to annotate provided
> text,
> > based on loaded ontology. Could you please explain to me how to implement
> > scenario which I described using Apache Stanbol? If you could provide me
> a
> > code example, I would be very grateful.
> >
> > Thank you very much.
> >
> > Best,
> > Srecko Joksimovic
>
> --
> | Rupert Westenthaler             rupert.westenthaler@gmail.com
> | Bodenlehenstraße 11                             ++43-699-11108907
> | A-5500 Bischofshofen
>