Anyone got any idea how to fix this? I'm out of ideas.

On Mon, 5 Oct 2020 at 14:33, Mikael Pesonen <[email protected]>
wrote:

>
> Sorry, correction: "language AND <any other words here>" and "language
> OR <any other words here>" return same results as "language <any other
> words here>" and same results as "language".
>
> On 5.10.2020 14:27, Mikael Pesonen wrote:
> >
> > Hi,
> >
> > forgot to mention that AND and OR in query returns also no results.
> > I'm somewhat familiar with Lucene syntax but seems like none of the
> > syntax works with my setup.
> > There are no errors in Jena log, only the warning about
> > AnalyzingQueryParser.
> >
> >
> >
> > On 5.10.2020 13:49, Lorenz Buehmann wrote:
> >> It's Lucene syntax so a look into its documentation[1] could help.
> >>
> >> Regarding multiple words, default Boolean operator is "OR", i.e.
> >>
> >> "language <any other words here>" is equivalent to "language OR <any
> >> other words here>". Obviously the result will contain all at least
> >> documents with "language". Use AND operator if it must contain both.
> >>
> >> Fuzzy queries and proximity queries are also explained in the Lucene
> >> docs[1].
> >>
> >>
> >>
> >> [1] https://lucene.apache.org/core/8_6_2/queryparser/index.html
> >>
> >> On 05.10.20 11:22, Mikael Pesonen wrote:
> >>> I'm having trouble making other that one word queries.
> >>>
> >>> For example "language <any other words here>" gives same result,
> >>> regardless of the other words.
> >>>
> >>> Using quotes "\"some query\"" returns no results.
> >>>
> >>>
> >>>
> >>> So I would like to make "fuzzy" multiword queries where for example
> >>>
> >>> "language technology" returns different results  that "language
> >>> management"
> >>>
> >>> And also to query "\"language technology\"" which should return exact
> >>> matches.
> >>>
> >>>
> >>>
> >>> I'm using latest Jena with  AnalyzingQueryParser, which gives warning
> >>>
> >>>   WARN  TextIndexLucene :: Deprecated query parser type
> >>> 'AnalyzingQueryParser'. Defaulting to standard QueryParser
> >>>
> >>> Also tried other parsers.
> >>>
> >>>
> >>> Config:
> >>>
> >>> @prefix :<http://localhost/jena_example/#>  .
> >>> @prefix rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>  .
> >>> @prefix rdfs:<http://www.w3.org/2000/01/rdf-schema#>  .
> >>> @prefix tdb:<http://jena.hpl.hp.com/2008/tdb#>  .
> >>> @prefix ja:<http://jena.hpl.hp.com/2005/11/Assembler#> .
> >>> @prefix text:<http://jena.apache.org/text#>  .
> >>> @prefix skos:<http://www.w3.org/2004/02/skos/core#> .
> >>> @prefix fuseki:<http://jena.apache.org/fuseki#>  .
> >>> @prefix vcard:<http://www.w3.org/2006/vcard/ns#> .
> >>> @prefix dcterms:<http://purl.org/dc/terms/> .
> >>>
> >>> @prefix lsrm:<https://resource.lingsoft.fi/ns/resource_meta#> .
> >>>
> >>> ## Example of a TDB dataset and text index
> >>> ## Initialize TDB
> >>> [] ja:loadClass "org.apache.jena.tdb.TDB" .
> >>> tdb:DatasetTDB  rdfs:subClassOf  ja:RDFDataset .
> >>> tdb:GraphTDB    rdfs:subClassOf  ja:Model .
> >>>
> >>> ## Initialize text query
> >>> [] ja:loadClass       "org.apache.jena.query.text.TextQuery" .
> >>> # A TextDataset is a regular dataset with a text index.
> >>> text:TextDataset      rdfs:subClassOf   ja:RDFDataset .
> >>> # Lucene index
> >>> text:TextIndexLucene  rdfs:subClassOf   text:TextIndex .
> >>>
> >>>
> >>> :text_dataset rdf:type     text:TextDataset ;
> >>>       text:dataset   :my_dataset ;
> >>>       text:index     <#indexLucene> ;
> >>>       .
> >>>
> >>> # A TDB dataset used for RDF storage
> >>> :my_dataset rdf:type      tdb:DatasetTDB ;
> >>>       tdb:location "/home/text/tools/jena_data/" ;
> >>> #    tdb:unionDefaultGraph true ; # Optional
> >>>       .
> >>>
> >>> # Text index description
> >>> <#indexLucene> a text:TextIndexLucene ;
> >>>       text:directory <file:/home/text/tools/jena_text_index/> ;
> >>>       text:entityMap <#entMap> ;
> >>>       text:storeValues true ;
> >>>       text:analyzer [ a text:StandardAnalyzer ] ;
> >>>       text:queryAnalyzer [ a text:KeywordAnalyzer ] ;
> >>>       text:queryParser text:AnalyzingQueryParser ;
> >>>       text:multilingualSupport true ;
> >>>    .
> >>>
> >>> <#entMap> a text:EntityMap ;
> >>>       text:defaultField     "vcard_fn" ;
> >>>       text:entityField      "uri" ;
> >>>       text:uidField         "uid" ;
> >>>       text:langField        "lang" ;
> >>>       text:graphField       "graph" ;
> >>>       text:map (
> >>>            [ text:field "vcard_fn" ; text:predicate vcard:fn ]
> >>>            [ text:field "skos_prefLabel"  ; text:predicate
> >>> skos:prefLabel ]
> >>>            [ text:field "skos_altLabel"  ; text:predicate
> >>> skos:altLabel ]
> >>>            [ text:field "lsrm_content" ; text:predicate lsrm:content]
> >>>            [ text:field "dcterms_title" ; text:predicate dcterms:title]
> >>>            [ text:field "dcterms_description" ; text:predicate
> >>> dcterms:description]
> >>>            ) .
> >>>
> >>> <#service> rdf:type fuseki:Service ;
> >>>       fuseki:name                     "/ds" ;   #
> >>> http://host:port/ds-ro
> >>>       fuseki:serviceQuery             "query" ;    # SPARQL query
> >>> service
> >>>       fuseki:serviceQuery             "sparql" ;   # SPARQL query
> >>> service
> >>>       fuseki:serviceUpdate            "update" ;   # SPARQL update
> >>> service
> >>>       fuseki:serviceUpload            "upload" ;   # Non-SPARQL upload
> >>> service
> >>>       fuseki:serviceReadWriteGraphStore "data" ;     # SPARQL Graph
> >>> store protocol (read and write)
> >>>       fuseki:dataset           :text_dataset ;
> >>>       .
> >
>
>

Reply via email to