[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:stajic:it":3,"public-menus:all":38,"$f3snuq8xv6z1mz":221,"related:portfolio:solr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung:it:1":424},{"statusCode":4,"data":5,"message":37},200,{"tenantId":6,"lang":7,"defaultLang":8,"siteUrl":9,"contactEmail":10,"brandName":11,"logoUrl":12,"siteName":11,"siteDescription":13,"ogImage":10,"robotsIndex":14,"socialLinks":10,"reservedSlugs":10,"seoPolicy":15},"stajic","it","de","https:\u002F\u002Fstajic.de",null,"Stajic Platform","\u002FLogo_Planet.svg","Stajic Portal",true,{"branding":16,"relatedContent":17,"crossDomainLinks":18},{"logoUrl":12},{"enabled":14},[19,22,25,28,31,34],{"url":20,"label":21,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Ffigure.rocks","figure.rocks",{"url":23,"label":24,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Floving.rocks","loving.rocks",{"url":26,"label":27,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.com","bazify.com",{"url":29,"label":30,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.de","bazify.de",{"url":32,"label":33,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.at","bazify.at",{"url":35,"label":36,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.ba","bazify.ba","Portal settings resolved",[39,45],{"id":40,"name":41,"location":42,"isActive":14,"isDefault":43,"items":44},1,"main-navigation","header",false,[],{"id":46,"name":47,"location":48,"isActive":14,"isDefault":14,"items":49},4,"main-menu","sidebar",[50,66,79,93,103,118,133],{"id":51,"title":52,"url":60,"target":61,"icon":62,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":64,"portfolioId":10,"children":65},"item-18",{"de":53,"en":54,"es":55,"fr":56,"it":54,"ru":57,"sr":58,"zh":59},"Startseite","Home","Inicio","Accueil","Главная","Почетна","首页","\u002Ffull-stack-web-developer-munich-performance-seo-and-maintainable-builds","_self","i-lucide-home","page",111,[],{"id":67,"title":68,"url":75,"target":61,"icon":76,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":77,"portfolioId":10,"children":78},"item-22",{"de":69,"en":69,"es":70,"fr":69,"it":71,"ru":72,"sr":73,"zh":74},"Vision","Visión","Visione","Видение","Визија","想象","\u002Fueber-uns-webdesign-muenchen-webaplikation","i-lucide-eye",113,[],{"id":80,"title":81,"url":89,"target":61,"icon":90,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":91,"portfolioId":10,"children":92},"item-19",{"de":82,"en":83,"es":84,"fr":83,"it":85,"ru":86,"sr":87,"zh":88},"Leistungen","Services","Servicios","Servizi","Услуги","Услуге","服务","\u002Fservices-dienstleistungen-muenchen","i-lucide-wrench",116,[],{"id":94,"title":95,"url":99,"target":61,"icon":100,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":101,"portfolioId":10,"children":102},"item-23",{"de":96,"en":96,"es":96,"fr":96,"it":96,"ru":97,"sr":97,"zh":98},"Blog","Блог","博客","\u002Fblog","i-lucide-book-open",112,[],{"id":104,"title":105,"url":114,"target":61,"icon":115,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":116,"portfolioId":10,"children":117},"item-32",{"de":106,"en":107,"es":108,"fr":109,"it":110,"ru":111,"sr":112,"zh":113},"Neue Technologien","New Technologies","Nuevas tecnologías","Nouvelles technologies","Nuove tecnologie","Новые технологии","Нове технологије","新技术！","\u002Fneue-webtechnologien","i-lucide-sparkles",122,[],{"id":119,"title":120,"url":129,"target":61,"icon":130,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":131,"portfolioId":10,"children":132},"item-20",{"de":121,"en":122,"es":123,"fr":124,"it":125,"ru":126,"sr":127,"zh":128},"Kontakt","Contact us!","Contacto","Contact","Contatto","Контакт","Контактирајте нас","联系我们！","\u002Fcontact","i-lucide-mail",115,[],{"id":134,"title":135,"url":144,"target":61,"icon":145,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":146,"portfolioId":10,"children":147},"item-21",{"de":136,"en":137,"es":138,"fr":139,"it":140,"ru":141,"sr":142,"zh":143},"Unsere Arbeit","Our Work","Nuestro trabajo","Nos réalisations","I nostri lavori","Наши работы","Наши радови","文件夹","\u002Fportfolio","i-lucide-briefcase",114,[148,161,175,191,206],{"id":149,"title":150,"url":144,"target":61,"icon":159,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":146,"portfolioId":10,"children":160},"item-24",{"de":151,"en":152,"es":153,"fr":154,"it":155,"ru":156,"sr":157,"zh":158},"Alle Projekte","All Projects","Todos los proyectos","Tous les projets","Tutti i progetti","Все проекты","Сви пројекти","所有项目","i-lucide-grid-3x3",[],{"id":162,"title":163,"url":171,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":174},"item-29",{"de":164,"en":165,"es":166,"fr":167,"it":168,"ru":169,"sr":170,"zh":143},"Local Roots, Global Reach","Local Roots - Global Reach","Empresa local ","Entreprise locale","Azienda locale","Местная компания","Локално предузеће глобално тржиште","\u002Fportfolio\u002Flocal-roots-global-reach-communication-media-systems-for-modern-business","i-lucide-globe-2","custom",[],{"id":176,"title":177,"url":186,"target":61,"icon":187,"isActive":14,"type":188,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":189,"children":190},"menu-2916d060-8681-482a-af9a-c107a8bc30d8",{"de":178,"en":179,"es":180,"fr":181,"it":182,"ru":183,"sr":184,"zh":185},"Von Rohdaten zu verifizierbarem KI-Kontext: Eine praktische Architektur für agentenbereite Informationen","From Raw Data to Verifiable AI Context:","De datos sin procesar a contexto de IA verificable: una arquitectura práctica para información lista para agentes","Des données brutes au contexte d'IA vérifiable : une architecture pratique pour des informations prêtes pour les agents","Dai dati grezzi a un contesto IA verificabile: Un'architettura pratica per informazioni pronte per gli agenti","От необработанных данных к верифицируемому контексту ИИ: практическая архитектура информации, готовой для агентов","Od sirovih podataka do proverljivog AI konteksta: Praktična arhitektura za informacije spremne za agente","从原始数据到可验证的 AI 上下文：面向智能体就绪信息的实用架构","\u002Fportfolio\u002Ffrom-raw-data-to-verifiable-ai-context-a-practical-architecture-for-agent-ready-information","i-lucide-database","portfolio",22,[],{"id":192,"title":193,"url":202,"target":61,"icon":203,"isActive":14,"type":188,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":204,"children":205},"menu-e2061cd7-ff53-49d5-a0e8-3d49090577c0",{"de":194,"en":195,"es":196,"fr":197,"it":198,"ru":199,"sr":200,"zh":201},"Präsenzplattformen — Unternehmenskommunikation","Presence Platforms — Enterprise Communication","Plataformas de presencia — Comunicación empresarial","Plateformes de présence — Communication d'entreprise","Presence Platforms — Comunicazione aziendale","Платформы присутствия — Корпоративные коммуникации","Presence platforme — Poslovna komunikacija","Presence 平台 — 企业通信","\u002Fportfolio\u002Fpresence-platforms-enterprise-communication-that-wins-without-competing","i-lucide-badge-percent",21,[],{"id":207,"title":208,"url":217,"target":61,"icon":218,"isActive":14,"type":188,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":219,"children":220},"menu-a781582e-e90d-418e-b8c9-b070bc37c37e",{"de":209,"en":210,"es":211,"fr":212,"it":213,"ru":214,"sr":215,"zh":216},"Maximierung des POS-ROI durch Konsistenz","Maximizing POS ROI Through Consistent","Maximizar el ROI del POS a través de constante","Maximiser le ROI du PDV grâce à la cohérence","Massimizzare il ROI del POS attraverso costante","Максимизация ROI POS за счет последовательного","Maksimizacija POS ROI-ja kroz dosledno","通过持续最大化 POS 投资回报率","\u002Fportfolio\u002Ffrom-vision-to-value-maximizing-pos-roi-through-consistent-ci-creation-and-strategic-branding","i-lucide-briefcase-business",11,[],{"statusCode":4,"data":222,"message":423},{"id":223,"title":224,"slug":225,"content":226,"contentJson":227,"excerpt":295,"featuredImage":296,"featuredImageAlt":297,"featuredImageCaption":10,"featuredImageTitle":10,"featuredImageCopyright":10,"featuredImageAuthor":10,"featuredImageSourceUrl":10,"featuredImageLicense":10,"featuredImageIsAiGenerated":43,"status":298,"publishedAt":299,"createdAt":300,"updatedAt":301,"seoLocalePaths":302,"author":310,"translations":315},"15","Solr Fuzzy Suggester e Solr Infix Suggester su Ajax","solr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","{\"time\":1766400020000,\"blocks\":[{\"data\":{\"text\":\"Descrizione del Progetto\",\"level\":2},\"type\":\"header\"},{\"data\":{\"text\":\"Per una ricerca efficiente su un sito web, è importante che gli utenti trovino rapidamente e facilmente i risultati appropriati. Solr Fuzzy Suggester e Solr Infix Suggester offrono una soluzione efficiente per questo. Possono essere richiamati e filtrati tramite query Ajax.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Il suggeritore viene attivato tramite il componente XML SuggestComponent nel file solrconfig.xml, come mostrato nel seguente esempio di codice:\"},\"type\":\"paragraph\"},{\"data\":{\"code\":\"\u003CsearchComponent name=\\\"suggest\\\" class=\\\"solr.SuggestComponent\\\">\\n  \u003Clst name=\\\"suggester\\\">\\n    \u003Cstr name=\\\"name\\\">mySuggester\u003C\u002Fstr>\\n    \u003Cstr name=\\\"lookupImpl\\\">FuzzyLookupFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"dictionaryImpl\\\">DocumentDictionaryFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"field\\\">suggest_field\u003C\u002Fstr>\\n    \u003Cstr name=\\\"weightField\\\">weight\u003C\u002Fstr>\\n    \u003Cstr name=\\\"suggestAnalyzerFieldType\\\">text_general\u003C\u002Fstr>\\n    \u003Cstr name=\\\"buildOnStartup\\\">true\u003C\u002Fstr>\\n  \u003C\u002Flst>\\n\u003C\u002FsearchComponent>\"},\"type\":\"code\"},{\"data\":{\"text\":\"Utilizzando Solr Fuzzy Suggester e Solr Infix Suggester, gli utenti possono ottenere rapidamente e facilmente risultati pertinenti, poiché ricevono suggerimenti e funzionalità di completamento automatico. I risultati delle query possono quindi essere filtrati per garantire che vengano visualizzati solo i risultati più rilevanti.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Implementando queste tecnologie, i siti web possono offrire funzionalità di ricerca migliorate e una migliore esperienza utente.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Esempio di Configurazione (Evidenziatore di Sintassi)\",\"level\":3},\"type\":\"header\"},{\"data\":{\"code\":\"\u003CsearchComponent name=\\\"suggest\\\" class=\\\"solr.SuggestComponent\\\">\\n  \u003Clst name=\\\"suggester\\\">\\n    \u003Cstr name=\\\"name\\\">mySuggester\u003C\u002Fstr>\\n    \u003Cstr name=\\\"lookupImpl\\\">FuzzyLookupFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"dictionaryImpl\\\">DocumentDictionaryFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"field\\\">cat\u003C\u002Fstr>\\n    \u003Cstr name=\\\"weightField\\\">price\u003C\u002Fstr>\\n    \u003Cstr name=\\\"suggestAnalyzerFieldType\\\">string\u003C\u002Fstr>\\n    \u003Cstr name=\\\"buildOnStartup\\\">false\u003C\u002Fstr>\\n  \u003C\u002Flst>\\n\u003C\u002FsearchComponent>\"},\"type\":\"code\"},{\"data\":{\"text\":\"L'immagine mostra cosa fa il suggeritore: l'input non produce una corrispondenza esatta e Solr Suggester restituisce suggerimenti simili. Esistono diversi modi per determinare la somiglianza tra stringhe. Ne menzionerò due qui.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"1) Fuzzy (distanza di Levenshtein)\",\"level\":3},\"type\":\"header\"},{\"data\":{\"text\":\"La prima possibilità è fuzzy, che si basa sull'algoritmo della distanza di Levenshtein.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"In JavaScript, apparirebbe così:\"},\"type\":\"paragraph\"},{\"data\":{\"code\":\"function levenshtein(a, b) {\\n  var t = [], u, i, j, m = a.length, n = b.length;\\n  if (!m) { return n; }\\n  if (!n) { return m; }\\n  for (j = 0; j \u003C= n; j++) { t[j] = j; }\\n  for (i = 1; i \u003C= m; i++) {\\n    for (u = [i], j = 1; j \u003C= n; j++) {\\n      u[j] = a[i - 1] === b[j - 1] ? t[j - 1] : Math.min(t[j - 1], t[j], u[j - 1]) + 1;\\n    } t = u;\\n  } return u[n];\\n}\\n\u002F\u002F a and b are strings\"},\"type\":\"code\"},{\"data\":{\"text\":\"2) Infix (corrispondenza del prefisso e indice Lucene)\",\"level\":3},\"type\":\"header\"},{\"data\":{\"text\":\"La seconda possibilità è infix, che si basa sulla corrispondenza del prefisso con i token nel testo indicizzato. Utilizza l'indice Lucene per il suo dizionario. Lucene è una libreria di ricerca full-text (Apache Software Foundation) che contiene librerie di programmazione open-source.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"In pratica, è una struttura indicizzata che crea token durante l'elaborazione. Gli spazi possono segnare la fine o l'inizio di una stringa. Le singole stringhe vengono normalizzate per una migliore corrispondenza — ad esempio, convertendo le lettere maiuscole in minuscole — e vengono indicizzate anche più varianti correlate dal dizionario.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Il vantaggio risiede nelle opzioni che possono essere definite nella query, il che fornisce maggiore flessibilità.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Cosa fanno i motori di ricerca commerciali?\",\"level\":3},\"type\":\"header\"},{\"data\":{\"text\":\"Una combinazione di entrambi gli approcci è essenzialmente ciò che offrono la maggior parte dei motori di ricerca. Quando si inserisce l'input nel campo di ricerca, le singole stringhe vengono suggerite nel contesto di altre stringhe e termini. Ciò si traduce in una ricerca semantica.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Per i grandi fornitori di ricerca, questi risultati vengono adattati commercialmente e indirizzano gli utenti verso indici prioritari. Le pagine vengono ordinate e categorizzate tramite regole e linee guida. I gruppi di interesse vengono determinati tramite tecnologie di tracciamento, algoritmi di intelligenza artificiale e marketing di database, e la ricerca viene adattata al gruppo target.\"},\"type\":\"paragraph\"}],\"version\":\"2.30.0\"}",{"time":228,"blocks":229,"version":294},1766400020000,[230,234,238,241,245,248,251,255,258,261,264,267,270,273,276,279,282,285,288,291],{"data":231,"type":42},{"text":232,"level":233},"Descrizione del Progetto",2,{"data":235,"type":237},{"text":236},"Per una ricerca efficiente su un sito web, è importante che gli utenti trovino rapidamente e facilmente i risultati appropriati. Solr Fuzzy Suggester e Solr Infix Suggester offrono una soluzione efficiente per questo. Possono essere richiamati e filtrati tramite query Ajax.","paragraph",{"data":239,"type":237},{"text":240},"Il suggeritore viene attivato tramite il componente XML SuggestComponent nel file solrconfig.xml, come mostrato nel seguente esempio di codice:",{"data":242,"type":244},{"code":243},"\u003CsearchComponent name=\"suggest\" class=\"solr.SuggestComponent\">\n  \u003Clst name=\"suggester\">\n    \u003Cstr name=\"name\">mySuggester\u003C\u002Fstr>\n    \u003Cstr name=\"lookupImpl\">FuzzyLookupFactory\u003C\u002Fstr>\n    \u003Cstr name=\"dictionaryImpl\">DocumentDictionaryFactory\u003C\u002Fstr>\n    \u003Cstr name=\"field\">suggest_field\u003C\u002Fstr>\n    \u003Cstr name=\"weightField\">weight\u003C\u002Fstr>\n    \u003Cstr name=\"suggestAnalyzerFieldType\">text_general\u003C\u002Fstr>\n    \u003Cstr name=\"buildOnStartup\">true\u003C\u002Fstr>\n  \u003C\u002Flst>\n\u003C\u002FsearchComponent>","code",{"data":246,"type":237},{"text":247},"Utilizzando Solr Fuzzy Suggester e Solr Infix Suggester, gli utenti possono ottenere rapidamente e facilmente risultati pertinenti, poiché ricevono suggerimenti e funzionalità di completamento automatico. I risultati delle query possono quindi essere filtrati per garantire che vengano visualizzati solo i risultati più rilevanti.",{"data":249,"type":237},{"text":250},"Implementando queste tecnologie, i siti web possono offrire funzionalità di ricerca migliorate e una migliore esperienza utente.",{"data":252,"type":42},{"text":253,"level":254},"Esempio di Configurazione (Evidenziatore di Sintassi)",3,{"data":256,"type":244},{"code":257},"\u003CsearchComponent name=\"suggest\" class=\"solr.SuggestComponent\">\n  \u003Clst name=\"suggester\">\n    \u003Cstr name=\"name\">mySuggester\u003C\u002Fstr>\n    \u003Cstr name=\"lookupImpl\">FuzzyLookupFactory\u003C\u002Fstr>\n    \u003Cstr name=\"dictionaryImpl\">DocumentDictionaryFactory\u003C\u002Fstr>\n    \u003Cstr name=\"field\">cat\u003C\u002Fstr>\n    \u003Cstr name=\"weightField\">price\u003C\u002Fstr>\n    \u003Cstr name=\"suggestAnalyzerFieldType\">string\u003C\u002Fstr>\n    \u003Cstr name=\"buildOnStartup\">false\u003C\u002Fstr>\n  \u003C\u002Flst>\n\u003C\u002FsearchComponent>",{"data":259,"type":237},{"text":260},"L'immagine mostra cosa fa il suggeritore: l'input non produce una corrispondenza esatta e Solr Suggester restituisce suggerimenti simili. Esistono diversi modi per determinare la somiglianza tra stringhe. Ne menzionerò due qui.",{"data":262,"type":42},{"text":263,"level":254},"1) Fuzzy (distanza di Levenshtein)",{"data":265,"type":237},{"text":266},"La prima possibilità è fuzzy, che si basa sull'algoritmo della distanza di Levenshtein.",{"data":268,"type":237},{"text":269},"In JavaScript, apparirebbe così:",{"data":271,"type":244},{"code":272},"function levenshtein(a, b) {\n  var t = [], u, i, j, m = a.length, n = b.length;\n  if (!m) { return n; }\n  if (!n) { return m; }\n  for (j = 0; j \u003C= n; j++) { t[j] = j; }\n  for (i = 1; i \u003C= m; i++) {\n    for (u = [i], j = 1; j \u003C= n; j++) {\n      u[j] = a[i - 1] === b[j - 1] ? t[j - 1] : Math.min(t[j - 1], t[j], u[j - 1]) + 1;\n    } t = u;\n  } return u[n];\n}\n\u002F\u002F a and b are strings",{"data":274,"type":42},{"text":275,"level":254},"2) Infix (corrispondenza del prefisso e indice Lucene)",{"data":277,"type":237},{"text":278},"La seconda possibilità è infix, che si basa sulla corrispondenza del prefisso con i token nel testo indicizzato. Utilizza l'indice Lucene per il suo dizionario. Lucene è una libreria di ricerca full-text (Apache Software Foundation) che contiene librerie di programmazione open-source.",{"data":280,"type":237},{"text":281},"In pratica, è una struttura indicizzata che crea token durante l'elaborazione. Gli spazi possono segnare la fine o l'inizio di una stringa. Le singole stringhe vengono normalizzate per una migliore corrispondenza — ad esempio, convertendo le lettere maiuscole in minuscole — e vengono indicizzate anche più varianti correlate dal dizionario.",{"data":283,"type":237},{"text":284},"Il vantaggio risiede nelle opzioni che possono essere definite nella query, il che fornisce maggiore flessibilità.",{"data":286,"type":42},{"text":287,"level":254},"Cosa fanno i motori di ricerca commerciali?",{"data":289,"type":237},{"text":290},"Una combinazione di entrambi gli approcci è essenzialmente ciò che offrono la maggior parte dei motori di ricerca. Quando si inserisce l'input nel campo di ricerca, le singole stringhe vengono suggerite nel contesto di altre stringhe e termini. Ciò si traduce in una ricerca semantica.",{"data":292,"type":237},{"text":293},"Per i grandi fornitori di ricerca, questi risultati vengono adattati commercialmente e indirizzano gli utenti verso indici prioritari. Le pagine vengono ordinate e categorizzate tramite regole e linee guida. I gruppi di interesse vengono determinati tramite tecnologie di tracciamento, algoritmi di intelligenza artificiale e marketing di database, e la ricerca viene adattata al gruppo target.","2.30.0","Per una ricerca efficace sul sito web, è importante che gli utenti trovino rapidamente e facilmente risultati pertinenti. Solr Fuzzy Suggester e Solr Infix Suggester offrono una soluzione efficiente per questo. Possono essere richiamati e filtrati tramite query Ajax.","\u002Fuploads\u002F2019\u002F11\u002FSolr-Suggester-Fuzzy-infix.webp","Solr-Suggester-Fuzzy-infix","PUBLISHED","2025-10-30T13:36:00.000Z","2025-10-30T13:36:08.109Z","2025-12-25T18:35:30.027Z",{"en":303,"de":304,"sr":305,"es":306,"fr":307,"it":308,"ru":309},"\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","\u002Fde\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","\u002Fsr\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","\u002Fes\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","\u002Ffr\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","\u002Fit\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung","\u002Fru\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung",{"id":311,"login":312,"email":313,"displayName":314},"1","admin","","Admin User",[316,380],{"lang":317,"title":318,"content":319,"contentJson":320,"excerpt":379},"en","Solr Fuzzy Suggester and Solr Infix Suggester over Ajax","{\"time\":1766400020000,\"blocks\":[{\"data\":{\"text\":\"Project Description\",\"level\":2},\"type\":\"header\"},{\"data\":{\"text\":\"For efficient searching on a website, it is important that users quickly and easily find the appropriate results. Solr Fuzzy Suggester and Solr Infix Suggester offer an efficient solution for this. They can be called and filtered via Ajax queries.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"The suggester is activated via the XML component SuggestComponent in the solrconfig.xml file, as shown in the following code example:\"},\"type\":\"paragraph\"},{\"data\":{\"code\":\"\u003CsearchComponent name=\\\"suggest\\\" class=\\\"solr.SuggestComponent\\\">\\n  \u003Clst name=\\\"suggester\\\">\\n    \u003Cstr name=\\\"name\\\">mySuggester\u003C\u002Fstr>\\n    \u003Cstr name=\\\"lookupImpl\\\">FuzzyLookupFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"dictionaryImpl\\\">DocumentDictionaryFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"field\\\">suggest_field\u003C\u002Fstr>\\n    \u003Cstr name=\\\"weightField\\\">weight\u003C\u002Fstr>\\n    \u003Cstr name=\\\"suggestAnalyzerFieldType\\\">text_general\u003C\u002Fstr>\\n    \u003Cstr name=\\\"buildOnStartup\\\">true\u003C\u002Fstr>\\n  \u003C\u002Flst>\\n\u003C\u002FsearchComponent>\"},\"type\":\"code\"},{\"data\":{\"text\":\"By using Solr Fuzzy Suggester and Solr Infix Suggester, users can quickly and easily get relevant results, as they receive suggestions and auto-completion features. Query results can then be filtered to ensure that only the most relevant results are displayed.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"By implementing these technologies, websites can offer improved search functionality and a better user experience.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"Configuration Example (Syntax Highlighter)\",\"level\":3},\"type\":\"header\"},{\"data\":{\"code\":\"\u003CsearchComponent name=\\\"suggest\\\" class=\\\"solr.SuggestComponent\\\">\\n  \u003Clst name=\\\"suggester\\\">\\n    \u003Cstr name=\\\"name\\\">mySuggester\u003C\u002Fstr>\\n    \u003Cstr name=\\\"lookupImpl\\\">FuzzyLookupFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"dictionaryImpl\\\">DocumentDictionaryFactory\u003C\u002Fstr>\\n    \u003Cstr name=\\\"field\\\">cat\u003C\u002Fstr>\\n    \u003Cstr name=\\\"weightField\\\">price\u003C\u002Fstr>\\n    \u003Cstr name=\\\"suggestAnalyzerFieldType\\\">string\u003C\u002Fstr>\\n    \u003Cstr name=\\\"buildOnStartup\\\">false\u003C\u002Fstr>\\n  \u003C\u002Flst>\\n\u003C\u002FsearchComponent>\"},\"type\":\"code\"},{\"data\":{\"text\":\"The image shows what the suggester does: the input does not yield an exact match, and the Solr Suggester returns similar suggestions. There are several ways to determine string similarity. I will mention two here.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"1) Fuzzy (Levenshtein distance)\",\"level\":3},\"type\":\"header\"},{\"data\":{\"text\":\"The first possibility is fuzzy, which is based on the Levenshtein distance algorithm.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"In JavaScript, it would look like this:\"},\"type\":\"paragraph\"},{\"data\":{\"code\":\"function levenshtein(a, b) {\\n  var t = [], u, i, j, m = a.length, n = b.length;\\n  if (!m) { return n; }\\n  if (!n) { return m; }\\n  for (j = 0; j \u003C= n; j++) { t[j] = j; }\\n  for (i = 1; i \u003C= m; i++) {\\n    for (u = [i], j = 1; j \u003C= n; j++) {\\n      u[j] = a[i - 1] === b[j - 1] ? t[j - 1] : Math.min(t[j - 1], t[j], u[j - 1]) + 1;\\n    } t = u;\\n  } return u[n];\\n}\\n\u002F\u002F a and b are strings\"},\"type\":\"code\"},{\"data\":{\"text\":\"2) Infix (prefix matching and Lucene index)\",\"level\":3},\"type\":\"header\"},{\"data\":{\"text\":\"The second possibility is infix, which is based on prefix matching with tokens in the indexed text. It uses the Lucene index for its dictionary. Lucene is a full-text search library (Apache Software Foundation) that contains open-source programming libraries.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"In practice, it is an indexed structure that creates tokens during processing. Spaces can mark the end or beginning of a string. Individual strings are normalized for better matches — for example, converting uppercase letters to lowercase — and multiple related variants from the dictionary are also indexed.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"The advantage lies in the options that can be defined in the query, which provides greater flexibility.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"What do commercial search engines do?\",\"level\":3},\"type\":\"header\"},{\"data\":{\"text\":\"A combination of both approaches is essentially what most search engines offer. When entering input into the search field, individual strings are suggested in the context of other strings and terms. This results in semantic search.\"},\"type\":\"paragraph\"},{\"data\":{\"text\":\"For large search providers, these results are commercially adjusted and direct users towards priority indices. Pages are sorted and categorized via rules and guidelines. Interest groups are determined via tracking technologies, AI algorithms, and database marketing, and the search is tailored to the target group.\"},\"type\":\"paragraph\"}],\"version\":\"2.30.0\"}",{"time":228,"blocks":321,"version":294},[322,325,328,331,333,336,339,342,344,347,350,353,356,358,361,364,367,370,373,376],{"data":323,"type":42},{"text":324,"level":233},"Project Description",{"data":326,"type":237},{"text":327},"For efficient searching on a website, it is important that users quickly and easily find the appropriate results. Solr Fuzzy Suggester and Solr Infix Suggester offer an efficient solution for this. They can be called and filtered via Ajax queries.",{"data":329,"type":237},{"text":330},"The suggester is activated via the XML component SuggestComponent in the solrconfig.xml file, as shown in the following code example:",{"data":332,"type":244},{"code":243},{"data":334,"type":237},{"text":335},"By using Solr Fuzzy Suggester and Solr Infix Suggester, users can quickly and easily get relevant results, as they receive suggestions and auto-completion features. Query results can then be filtered to ensure that only the most relevant results are displayed.",{"data":337,"type":237},{"text":338},"By implementing these technologies, websites can offer improved search functionality and a better user experience.",{"data":340,"type":42},{"text":341,"level":254},"Configuration Example (Syntax Highlighter)",{"data":343,"type":244},{"code":257},{"data":345,"type":237},{"text":346},"The image shows what the suggester does: the input does not yield an exact match, and the Solr Suggester returns similar suggestions. There are several ways to determine string similarity. I will mention two here.",{"data":348,"type":42},{"text":349,"level":254},"1) Fuzzy (Levenshtein distance)",{"data":351,"type":237},{"text":352},"The first possibility is fuzzy, which is based on the Levenshtein distance algorithm.",{"data":354,"type":237},{"text":355},"In JavaScript, it would look like this:",{"data":357,"type":244},{"code":272},{"data":359,"type":42},{"text":360,"level":254},"2) Infix (prefix matching and Lucene index)",{"data":362,"type":237},{"text":363},"The second possibility is infix, which is based on prefix matching with tokens in the indexed text. It uses the Lucene index for its dictionary. Lucene is a full-text search library (Apache Software Foundation) that contains open-source programming libraries.",{"data":365,"type":237},{"text":366},"In practice, it is an indexed structure that creates tokens during processing. Spaces can mark the end or beginning of a string. Individual strings are normalized for better matches — for example, converting uppercase letters to lowercase — and multiple related variants from the dictionary are also indexed.",{"data":368,"type":237},{"text":369},"The advantage lies in the options that can be defined in the query, which provides greater flexibility.",{"data":371,"type":42},{"text":372,"level":254},"What do commercial search engines do?",{"data":374,"type":237},{"text":375},"A combination of both approaches is essentially what most search engines offer. When entering input into the search field, individual strings are suggested in the context of other strings and terms. This results in semantic search.",{"data":377,"type":237},{"text":378},"For large search providers, these results are commercially adjusted and direct users towards priority indices. Pages are sorted and categorized via rules and guidelines. Interest groups are determined via tracking technologies, AI algorithms, and database marketing, and the search is tailored to the target group.","For effective website search, it is important that users quickly and easily find relevant results. Solr Fuzzy Suggester and Solr Infix Suggester offer an efficient solution for this. They can be called and filtered via Ajax queries.",{"lang":7,"title":224,"content":226,"contentJson":381,"excerpt":295},{"time":228,"blocks":382,"version":294},[383,385,387,389,391,393,395,397,399,401,403,405,407,409,411,413,415,417,419,421],{"data":384,"type":42},{"text":232,"level":233},{"data":386,"type":237},{"text":236},{"data":388,"type":237},{"text":240},{"data":390,"type":244},{"code":243},{"data":392,"type":237},{"text":247},{"data":394,"type":237},{"text":250},{"data":396,"type":42},{"text":253,"level":254},{"data":398,"type":244},{"code":257},{"data":400,"type":237},{"text":260},{"data":402,"type":42},{"text":263,"level":254},{"data":404,"type":237},{"text":266},{"data":406,"type":237},{"text":269},{"data":408,"type":244},{"code":272},{"data":410,"type":42},{"text":275,"level":254},{"data":412,"type":237},{"text":278},{"data":414,"type":237},{"text":281},{"data":416,"type":237},{"text":284},{"data":418,"type":42},{"text":287,"level":254},{"data":420,"type":237},{"text":290},{"data":422,"type":237},{"text":293},"Portfolio erfolgreich abgerufen",{"items":425,"source":507,"manualIds":508,"manualMatchedIds":509},[426,432,439,446,453,460,466,473,480,487,494,501],{"id":311,"slug":427,"title":428,"excerpt":429,"featuredImage":430,"publishedAt":431},"nuxtwo-theme-showcase","Piattaforma di produzione di livello enterprise","Piattaforma CMS e portale di livello enterprise con architettura multi-database, vero multilinguismo e migrazione WordPress professionale. Sviluppata per sistemi di pubblicazione scalabili, sicuri e orientati al futuro.","\u002Fuploads\u002F2025\u002F01\u002Fhow-to-scan-and-clean-your-cloud-linux-server-from-malware-large.webp","2025-10-31T05:31:00.000Z",{"id":433,"slug":434,"title":435,"excerpt":436,"featuredImage":437,"publishedAt":438},"14","digitalisierungsportal-archiv-museum-bibliothek-ead-lido-mets-mods","Portale di digitalizzazione per Archivio Museo Biblioteca","Il Deutsche Museum Digitale si dedica alla digitalizzazione e all'apertura scientifica dei fondi della collezione di oggetti, dell'archivio e della biblioteca del Deutsches Museum.","\u002Fuploads\u002F2019\u002F04\u002F2019-11-21_101547_digital.deutsches-museum.de_-1.webp","2025-10-30T11:36:00.000Z",{"id":440,"slug":441,"title":442,"excerpt":443,"featuredImage":444,"publishedAt":445},"19","from-global-business-to-the-kitchen-a-reverse-communication-system-that-still-scales","Dal business globale alla cucina — Un sistema di comunicazione inversa che continua a scalare","Smetti di scalare seguendo il rumore. Parti dai segnali globali, riducili a poche verità stabili e trasformali in template settimanali, checklist e “menu” ripetibili che generino valore reale.","\u002Fuploads\u002F2026\u002F02\u002Ffrom-global-business-to-the-kitchen-a-reverse-communication-system-that-still-scales-1771251820950-zhp2bz.webp","2026-02-16T10:13:00.000Z",{"id":447,"slug":448,"title":449,"excerpt":450,"featuredImage":451,"publishedAt":452},"20","from-global-business-to-the-kitchen-enterprise-media-os-that-scales-calmly-stajic-de-showcase-portals","Dal business globale alla cucina — Enterprise Media OS che scala con calma (stajic.de + Showcase Portals)","La strategia globale funziona solo se sopravvive alla cucina: vincoli, cadenza, chiarezza e output misurabile. Ecco come un Enterprise Media OS trasforma il rumore del mercato in sistemi ripetibili — con figure.rocks e loving.rocks come implementazioni dimostrative.","\u002Fuploads\u002F2026\u002F02\u002Ffrom-global-business-to-the-kitchen-enterprise-media-os-that-scales-calmly-stajic-de-showcase-portals-1771252973332-rpajor.webp","2026-02-16T02:39:00.000Z",{"id":454,"slug":455,"title":456,"excerpt":457,"featuredImage":458,"publishedAt":459},"18","local-roots-global-reach-communication-media-systems-for-modern-business","Radici locali, portata globale — Sistemi di comunicazione e media per il business moderno","Aiuto le aziende locali a presentarsi come brand globali: posizionamento chiaro, contenuti ad alto rendimento e una distribuzione che trasforma l'attenzione in lead.","\u002Fuploads\u002F2026\u002F02\u002Flocal-roots-global-reach-communication-media-systems-for-modern-business-1771251472163-5ujsqm.webp","2026-02-16T02:13:00.000Z",{"id":461,"slug":462,"title":463,"excerpt":10,"featuredImage":464,"publishedAt":465},"16","automobile-bauer-joomla","Web Presence Making a Statement - Automobile Bauer Joomla","\u002Fuploads\u002F2014\u002F09\u002F2019-11-21_145554_automobile-bauer.de_.webp","2025-10-30T14:36:08.121Z",{"id":467,"slug":468,"title":469,"excerpt":470,"featuredImage":471,"publishedAt":472},"17","integration-von-gpt-4-mit-libreoffice-auf-ubuntu-eine-vollstaendige-anleitung","LibreOffice ChatGPT Integrazione Macro Caso di Studio","Esplora l'integrazione personalizzata della macro Python OpenAI per ChatGPT in LibreOffice, migliorando i flussi di lavoro con l'assistenza dell'IA direttamente nei tuoi documenti.","\u002Fuploads\u002F2024\u002F05\u002FDALL·E-2024-05-21-23.36.22-An-illustration-of-a-modern-desktop-environment-showing-LibreOffice-on-an-Ubuntu-system.-The-image-should-depict-a-Python-script-running-within-LibreO-large.webp","2026-01-15T17:44:00.000Z",{"id":474,"slug":475,"title":476,"excerpt":477,"featuredImage":478,"publishedAt":479},"23","source-of-truth-enterprise-intelligence-platform","Piattaforma di intelligence aziendale Source of Truth","Una piattaforma di intelligence aziendale self-hosted e governata dalle evidenze che trasforma la conoscenza interna dell'azienda, i documenti e i dati aziendali in intelligence tracciabile per la ricerca, le decisioni, il monitoraggio e l'esecuzione controllata dell'IA.","\u002Fuploads\u002F2026\u002F10\u002Fsource-of-truth-enterprise-intelligence-platform-1791975594140-vygojf.webp","2026-10-14T06:27:00.000Z",{"id":481,"slug":482,"title":483,"excerpt":484,"featuredImage":485,"publishedAt":486},"22","from-raw-data-to-verifiable-ai-context-a-practical-architecture-for-agent-ready-information","Da dati grezzi a contesto AI verificabile: un'architettura pratica per informazioni pronte per gli agenti","I sistemi di IA non falliscono principalmente perché mancano di più testo. Falliscono perché identità, provenienza, conflitti, incognite e validità sono spesso assenti dal contesto che ricevono. Questo articolo documenta un'architettura pratica per trasformare dati aziendali eterogenei in oggetti informativi controllati e riutilizzabili per esseri umani, applicazioni e agenti.","\u002Fuploads\u002F2026\u002F09\u002Ffrom-raw-data-to-verifiable-ai-context-a-practical-architecture-for-agent-ready-information-1790741906168-mo6sw7.webp","2026-09-30T00:16:00.000Z",{"id":488,"slug":489,"title":490,"excerpt":491,"featuredImage":492,"publishedAt":493},"21","presence-platforms-enterprise-communication-that-wins-without-competing","Presence Platforms — Comunicazione aziendale che vince senza competere","Una Presence Platform trasforma le operazioni in chiarezza di livello decisionale: claim governati, formati ripetibili, collegamenti interni che indirizzano le decisioni e un ciclo di apprendimento settimanale che consolida fiducia e pipeline.","\u002Fuploads\u002F2026\u002F02\u002Fpresence-platforms-enterprise-communication-that-wins-without-competing-1771263312197-h9p74p.webp","2026-02-16T14:01:00.000Z",{"id":495,"slug":496,"title":497,"excerpt":498,"featuredImage":499,"publishedAt":500},"11","from-vision-to-value-maximizing-pos-roi-through-consistent-ci-creation-and-strategic-branding","Dalla Visione al Valore: Massimizzare il ROI del POS attraverso la Creazione di una CI Coerente e il Branding Strategico","Nel retail moderno, colmare il divario tra visione creativa e valore finanziario richiede l'allineamento della Corporate Identity (CI) con il Point of Sale (POS). Questo caso studio esplora il framework per eliminare la frizione cognitiva per migliorare il ROI.","\u002Fuploads\u002F2026\u002F02\u002Ffrom-vision-to-value-maximizing-pos-roi-through-consistent-ci-creation-and-strategic-branding-1771265752834-ha552f.webp","2025-10-30T08:36:00.000Z",{"id":502,"slug":503,"title":504,"excerpt":505,"featuredImage":506,"publishedAt":438},"12","seo-sem-branding-mobile-webseite-muenchen","SEO Mobile Webapp Monaco","SEO per applicazioni web mobili a Monaco di Baviera: indicizzazione pulita, Analytics, Sitemap strutturate e ottimizzazione per Google News come solido fondamento per una visibilità duratura.","\u002Fuploads\u002F2014\u002F09\u002FSEO-Mobile-Webapplikation-Muenchen-www.stajic.de_4.webp","fallback",[],[]]