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 < [email protected]> wrote: > On Wed, Aug 17, 2011 at 11:46 AM, srecko joksimovic > <[email protected]> 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 > > <[email protected]> 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:[email protected]] > >> Sent: Monday, August 15, 2011 16:43 > >> To: srecko joksimovic; [email protected] > >> Subject: Re: Apache Stanbol > >> > >> On Mon, Aug 15, 2011 at 3:06 PM, srecko joksimovic > >> <[email protected]> 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 > >> > <[email protected]> wrote: > >> >> > >> >> On Mon, Aug 15, 2011 at 1:12 PM, srecko joksimovic > >> >> <[email protected]> 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 > >> >> > <[email protected]> wrote: > >> >> >> > >> >> >> Hi > >> >> >> > >> >> >> On Mon, Aug 15, 2011 at 12:12 PM, srecko joksimovic > >> >> >> <[email protected]> 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 > >> >> >> > <[email protected]> wrote: > >> >> >> >> > >> >> >> >> Hi > >> >> >> >> > >> >> >> >> On Mon, Aug 15, 2011 at 11:06 AM, srecko joksimovic > >> >> >> >> <[email protected]> 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 > >> >> >> >> > <[email protected]> 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 > >> >> >> >> >> <[email protected]>: > >> >> >> >> >> > > >> >> >> >> >> > 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 > >> >> >> >> >> [email protected] > >> >> >> >> >> | Bodenlehenstraße 11 > >> >> >> >> >> ++43-699-11108907 > >> >> >> >> >> | A-5500 Bischofshofen > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> -- > >> >> >> >> | Rupert Westenthaler > [email protected] > >> >> >> >> | Bodenlehenstraße 11 > >> >> >> >> ++43-699-11108907 > >> >> >> >> | A-5500 Bischofshofen > >> >> >> > > >> >> >> > > >> >> >> > >> >> >> > >> >> >> > >> >> >> -- > >> >> >> | Rupert Westenthaler [email protected] > >> >> >> | Bodenlehenstraße 11 > ++43-699-11108907 > >> >> >> | A-5500 Bischofshofen > >> >> > > >> >> > > >> >> > >> >> > >> >> > >> >> -- > >> >> | Rupert Westenthaler [email protected] > >> >> | Bodenlehenstraße 11 ++43-699-11108907 > >> >> | A-5500 Bischofshofen > >> > > >> > > >> > >> > >> > >> -- > >> | Rupert Westenthaler [email protected] > >> | Bodenlehenstraße 11 ++43-699-11108907 > >> | A-5500 Bischofshofen > >> > > > > > > > > -- > | Rupert Westenthaler [email protected] > | Bodenlehenstraße 11 ++43-699-11108907 > | A-5500 Bischofshofen >
