On Wed, May 15, 2013 at 9:45 PM, Erik Antelman <[email protected]> wrote:
> Sorry for posting before lurking awhile, but I was really frustrated and
> hot on getting past this.
>
> I wanted to get some Keyword Entity tags, so I dumped a large taxonomy
> (DiseaseOntology) into the entity hub. I realize it would be best to have
> created a managed site but I hadn't see the eHealth demo yet. I believed it
> should have worked, just perhaps not the most efficient.
>
A ManagedSite is about 3times faster as the Entityhub, when
adding/updating new Entities. Users that need to update a lot of
Entities on a regular basis should also activate commitWithin for the
SolrYard configured for the ManagedSite by setting
org.apache.stanbol.entityhub.yard.solr.immediateCommit=false
org.apache.stanbol.entityhub.yard.solr.commitWithinDuration=10000
Deactivating immediateCommit will disable a commit after adding each
single Entity to the SolrIndex. The commitWithinDuration sets the
according Solr Feature to the time as specified in ms (default 10sec).
> I was sure the entityhub got populated correctly by being able to .../find
> ../query and get results.
> But when run in an enhancement chain, nothing was being found.
>
> I crawled in and turned up logs and something interesting was observed.
> Since I had a case that worked .../query and one that didn't I was able to
> find the differences.
>
> Deep inside SolrYard I find that what works is string like this:
> q=(((_\!@/rdfs\:label/:"foobar")))
Searches for literals in any language (including those with no language defined)
> What doesn't work is:
> q=(((@en/rdfs\:label/:"foobar")))
Searches for English language literals
> This also doesn't work
> q=(((@/rdfs\:label/:"foobar")))
>
Searches for literals with no language defined
Entity Linking uses searches for Literals
* in the language of the current document and
* those with no language defined
If you do not get any results, than it is most likely because the
language tags of your rdfs:labels are in an other language as the
document you parsed to the enhancer.
In the configuration of the EntityhubLinkingEngine configuration you
can configure the "Default Matching Language"
(enhancer.engines.linking.defaultMatchingLanguage) to the language of
the labels in your ontology. If you do so searches will be in the
language of the doc and the language you have specified.
best
Rupert
> I do not know what the _!@ language syntax does to SOLR retrieval and how
> I realize that the entities probably have no language tag, but
> the tantalizing functionality expressed through find and query working.
> --
> for(;;); /* [email protected] */
--
| Rupert Westenthaler [email protected]
| Bodenlehenstraße 11 ++43-699-11108907
| A-5500 Bischofshofen