Difference between revisions of "Reference:BlueSpiceExtendedSearch"
m (Text replacement - "For detailed description and usage please visit our" to "For detailed description and usage, visit our") |
(Tag: 2017 source edit) |
Extension: BlueSpiceExtendedSearch
Overview | |||
---|---|---|---|
Description: | Full-text search in articles and files, faceted search, fuzzy search, spellchecker and sorting as well as search-as-you-type and auto-complete functionality. Elasticsearch search backend | ||
State: | stable | Dependency: | BlueSpice |
Developer: | HalloWelt | License: |
GPL v3 only-3.0-onlyProperty "BSExtensionInfoLicense" (as page type) with input value "</br>GPL-3.0-only" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process. |
Type: | BlueSpice | Category: | Search and Navigation |
Edition: | BlueSpice free, BlueSpice pro, BlueSpice Farm, BlueSpice Cloud | ||
Features
Contents
Description[edit | edit source]
BlueSpiceExtendedSearch replacesExtendedSearch replaces the default MediaWiki search engine. It is based on ElasticSearch engine, and provides many improvements over the standard MediaWiki search both in terms of quality of indexed content and user interface.
Technical information[edit | edit source]
Configuration[edit | edit source]
- Search titles.
- Search the full content.
- Search uploaded or linked files (Office documents and PDFs).
- Search image data.
- Search-as-you-type and auto-complete.
- Ignore upper and lower case (case-insensitive).
- Search with the operators AND, OR, NOT.
- Search with wildcards.
- Search for phrases.
- Fuzzy search.
- Search for sentence fragments.
Some aspects of this extension can be configured on Special:BlueSpiceConfigManager, under section "ExtendedSearch". Here wiki administrators can configure:
- Number of suggestions matching search term.
- Default search method - fulltext or title.
- Location of external directories to index, eg: D:\MyDirectory.
- External URL to index from.
- Number of highlight snippets.
- File extensions to index.
- Types of files/pages to index.
- Number of results on special page.
- Namespaces for "Similar pages".
- Number of facets.
- Various search preferences.
- Solr core instance - name of Solr core holding wiki index.
- Ping time (in seconds).
- Sorl URL - URL to the Solr service - must be accessible to the wiki.
Users are required to have "extendedsearch-viewspecialpage" permission in order to see search result special page.
Requirements[edit | edit source]
This extension requires BlueSpiceFoundation.
ExtendedSearch requires an external service - Solr which acts as a backend for the search. To set up this service, software like Tomcat is needed to run Solr.
User manual[edit | edit source]
For detailed description and usage, visit our user manual.
Try free our BlueSpice[edit | edit source]
- external file paths
- layout of the autocomplete box
- language filter
- exclude patterns
Configuration (server)
For boosting by match percent, the following settings are available in the extension itself: "ESMatchPercentBoostFactor": {
"description": "How much to boost the result based on the percent of its title taken up by the search term. Set to 0 to disable",
"public": false,
"value": "0.5"
},
"ESMatchPercentTitleField": {
"description": "Field on which to base the match percent boosting. If empty, default title field of the source will be used",
"public": false,
"value": ""
},
Description:
- ESMatchPercentBoostFactor: The value here is multiplied by the the match percent and by the score of the document. Example: The search term is "Test". The search finds for example "Testpage" and - let's say - assigns a score of 20 to this result. Your search term matches 50 percent of the found name, so its match factor is 0.5. This factor is then multiplied by the value in this setting (by default 0.5), which gives the total boost factor of 0.25. The final score is calculated as "original score + (original score * boost factor)" => 20 + (20 * 0.25 ) = 20 + 5 = 25. This means that because your search term matches 50% of the result, it got boosted by the factor of 5.
- ESMatchPercentTitleField: Field on which the match analysis is performed. Defaults to nothing, so whatever the search lookup sets. It can be set to "prefixed_text" to calculate match percent on the title with namespace prefix, for example, or to something like "basename" to calculate the match percent only on the page name, without the namespace prefix.
Technical Information[edit source]
This information applies to BlueSpice 3 . Technical details for BlueSpice cloud can differ in some cases.
Requirements[edit source]
- MediaWiki: 1.31
- BlueSpiceFoundation: 3.2
Integrates into[edit source]
- BlueSpiceArticleInfo
- BlueSpiceExtendedSearch
- BlueSpiceExtendedStatistics
- BlueSpicePrivacy
- BlueSpiceSimpleFarmer
- BlueSpiceTagCloud
- BlueSpiceVisualEditorConnector
- VisualEditor
Special pages[edit source]
- BSSearchAdmin
- BSSearchCenter
Permissions[edit source]
Name | Description | Role |
---|---|---|
extendedsearch-search-externalfile | Search for external files | accountmanager, admin, author, bot, commenter, editor, maintenanceadmin, reader, reviewer, structuremanager |
extendedsearch-search-repofile | Search for files | accountmanager, admin, author, bot, commenter, editor, maintenanceadmin, reader, reviewer, structuremanager |
extendedsearch-search-specialpage | Search for special pages | accountmanager, admin, author, bot, commenter, editor, maintenanceadmin, reader, reviewer, structuremanager |
extendedsearch-search-wikipage | Search for pages | accountmanager, admin, author, bot, commenter, editor, maintenanceadmin, reader, reviewer, structuremanager |
Configuration[edit source]
Name | Value |
---|---|
ESAllowIndexingDocumentsWithoutContent | true |
ESAutoRecognizeSubpages | true |
ESAutoSetLangFilter | false |
ESBackendClass | '\\BS\\ExtendedSearch\\Backend' |
ESBackendHost | '127.0.0.1' |
ESBackendPort | '9200' |
ESBackendTransport | 'http' |
ESCompactAutocomplete | false |
ESDefaultSearchOperator | 'AND' |
ESEnableSearchHistoryTracking | true |
ESEnableTypeFilter | true |
ESExternalFilePaths | array ( ) |
ESLookupModifierRegExPatterns | array ( 0 => '[0-9]{2}\\-[0-9]{2}\\-[0-9]{4}', 1 => '[0-9]{4}\\-[0-9]{2}\\-[0-9]{2}', 2 => '[0-9]{2}\\-[0-9]{4}\\-[0-9]{2}', 3 => '[0-9]{2}\\/[0-9]{2}\\/[0-9]{4}', 4 => '[0-9]{4}\\/[0-9]{2}\\/[0-9]{2}', 5 => '[0-9]{2}\\/[0-9]{4}\\/[0-9]{2}', 6 => '[0-9]{2}\\.[0-9]{2}\\.[0-9]{4}', 7 => '[0-9]{4}\\.[0-9]{2}\\.[0-9]{2}', 8 => '[0-9]{2}\\.[0-9]{4}\\.[0-9]{2}', 9 => '[0-9]{2}\\\\[0-9]{2}\\\\[0-9]{4}', 10 => '[0-9]{4}\\\\[0-9]{2}\\\\[0-9]{2}', 11 => '[0-9]{2}\\\\[0-9]{4}\\\\[0-9]{2}', 12 => '[0-9]{1}\\-[0-9]{2}\\-[0-9]{4}', 13 => '[0-9]{4}\\-[0-9]{2}\\-[0-9]{1}', 14 => '[0-9]{1}\\-[0-9]{4}\\-[0-9]{2}', 15 => '[0-9]{4}\\-[0-9]{1}\\-[0-9]{2}', 16 => '[0-9]{2}\\-[0-9]{4}\\-[0-9]{1}', 17 => '[0-9]{2}\\-[0-9]{1}\\-[0-9]{4}', 18 => '[0-9]{1}\\/[0-9]{2}\\/[0-9]{4}', 19 => '[0-9]{4}\\/[0-9]{2}\\/[0-9]{1}', 20 => '[0-9]{1}\\/[0-9]{4}\\/[0-9]{2}', 21 => '[0-9]{4}\\/[0-9]{1}\\/[0-9]{2}', 22 => '[0-9]{2}\\/[0-9]{4}\\/[0-9]{1}', 23 => '[0-9]{2}\\/[0-9]{1}\\/[0-9]{4}', 24 => '[0-9]{1}\\.[0-9]{2}\\.[0-9]{4}', 25 => '[0-9]{4}\\.[0-9]{2}\\.[0-9]{1}', 26 => '[0-9]{1}\\.[0-9]{4}\\.[0-9]{2}', 27 => '[0-9]{4}\\.[0-9]{1}\\.[0-9]{2}', 28 => '[0-9]{2}\\.[0-9]{4}\\.[0-9]{1}', 29 => '[0-9]{2}\\.[0-9]{1}\\.[0-9]{4}', 30 => '[0-9]{1}\\\\[0-9]{2}\\\\[0-9]{4}', 31 => '[0-9]{4}\\\\[0-9]{2}\\\\[0-9]{1}', 32 => '[0-9]{1}\\\\[0-9]{4}\\\\[0-9]{2}', 33 => '[0-9]{4}\\\\[0-9]{1}\\\\[0-9]{2}', 34 => '[0-9]{2}\\\\[0-9]{4}\\\\[0-9]{1}', 35 => '[0-9]{2}\\\\[0-9]{1}\\\\[0-9]{4}', 36 => '[0-9]{2}\\-[0-9]{2}\\-[0-9]{2}', 37 => '[0-9]{2}\\/[0-9]{2}\\/[0-9]{2}', 38 => '[0-9]{2}\\.[0-9]{2}\\.[0-9]{2}', 39 => '[0-9]{2}\\\\[0-9]{2}\\\\[0-9]{2}', 40 => '[0-9]{1}\\-[0-9]{1}\\-[0-9]{4}', 41 => '[0-9]{4}\\-[0-9]{1}\\-[0-9]{1}', 42 => '[0-9]{1}\\-[0-9]{4}\\-[0-9]{1}', 43 => '[0-9]{1}\\/[0-9]{1}\\/[0-9]{4}', 44 => '[0-9]{4}\\/[0-9]{1}\\/[0-9]{1}', 45 => '[0-9]{1}\\/[0-9]{4}\\/[0-9]{1}', 46 => '[0-9]{1}\\.[0-9]{1}\\.[0-9]{4}', 47 => '[0-9]{4}\\.[0-9]{1}\\.[0-9]{1}', 48 => '[0-9]{1}\\.[0-9]{4}\\.[0-9]{1}', 49 => '[0-9]{1}\\\\[0-9]{1}\\\\[0-9]{4}', 50 => '[0-9]{4}\\\\[0-9]{1}\\\\[0-9]{1}', 51 => '[0-9]{1}\\\\[0-9]{4}\\\\[0-9]{1}', 52 => '[0-9]{1}\\-[0-9]{1}\\-[0-9]{2}', 53 => '[0-9]{2}\\-[0-9]{1}\\-[0-9]{1}', 54 => '[0-9]{1}\\-[0-9]{2}\\-[0-9]{1}', 55 => '[0-9]{1}\\/[0-9]{1}\\/[0-9]{2}', 56 => '[0-9]{2}\\/[0-9]{1}\\/[0-9]{1}', 57 => '[0-9]{1}\\/[0-9]{2}\\/[0-9]{1}', 58 => '[0-9]{1}\\.[0-9]{1}\\.[0-9]{2}', 59 => '[0-9]{2}\\.[0-9]{1}\\.[0-9]{1}', 60 => '[0-9]{1}\\.[0-9]{2}\\.[0-9]{1}', 61 => '[0-9]{1}\\\\[0-9]{1}\\\\[0-9]{2}', 62 => '[0-9]{2}\\\\[0-9]{1}\\\\[0-9]{1}', 63 => '[0-9]{1}\\\\[0-9]{2}\\\\[0-9]{1}', 64 => '[0-9]{2}\\-[0-9]{4}', 65 => '[0-9]{2}\\/[0-9]{4}', 66 => '[0-9]{2}\\.[0-9]{4}', 67 => '[0-9]{2}\\\\[0-9]{4}', 68 => '[0-9]{4}\\-[0-9]{2}', 69 => '[0-9]{4}\\/[0-9]{2}', 70 => '[0-9]{4}\\.[0-9]{2}', 71 => '[0-9]{4}\\\\[0-9]{2}', 72 => '[0-9]{2}\\-[0-9]{2}', 73 => '[0-9]{2}\\/[0-9]{2}', 74 => '[0-9]{2}\\.[0-9]{2}', 75 => '[0-9]{2}\\\\[0-9]{2}', ) |
ESMatchPercentBoostFactor | '0.5' |
ESMatchPercentTitleField | '' |
ESOfferOperatorSuggestion | true |
ESRecentBoostFactor | '0.5' |
ESSearchCenterDefaultFilters | array ( 0 => 'namespace_text', 1 => 'categories', ) |
ESSearchInRawWikitext | true |
ESSourceConfig | array ( 'wikipage' => array ( 'skip_namespaces' => array ( 0 => 8, 1 => 9, ), ), 'repofile' => array ( 'extension_blacklist' => array ( 0 => 'mp4', ), 'max_size' => 20000000, ), 'externalfile' => array ( 'extension_blacklist' => array ( 0 => 'mp4', ), 'max_size' => 20000000, ), ) |
ESWildcardingOperators | array ( 0 => '+', 1 => '|', 2 => '*', 3 => '(', 4 => ')', 5 => '~', ) |
ESWildcardingSeparators | array ( 0 => ',', 1 => '.', 2 => ';', 3 => '-', 4 => '_', ) |
ExtendedSearchExternalFilePathsExcludes | array ( ) |
TagSearchSearchFieldTemplatePath | '/resources/templates' |
API Modules[edit source]
- bs-extendedsearch-autocomplete
- bs-extendedsearch-query
- bs-extendedsearch-resultrelevance
- bs-extendedsearch-stats
- bs-extendedsearch-triggerupdate
- bs-extendedsearch-type-store
Hooks[edit source]
{{BSExtensionInfoboxBSExtensionInfo |desc=Full-text search in articles and files, faceted search, fuzzy search, spellchecker and sorting as well as search-as-you-type and auto-complete functionality. |status=stable |developer=HalloWelt |type=BlueSpice |edition=BlueSpice free |active=Yes , BlueSpice pro, BlueSpice Farm, BlueSpice Cloud |compatible=BlueSpice |category=Search and Navigation |license=GPL v3 only |docu=https://www.mediawiki.org/wiki/Extension:ExtendedSearch }} __TOC__ ==Description== '''BlueSpiceExtendedSearch''' replaces features='''ExtendedSearch''' replaces the default MediaWiki search engine. It is based on ElasticSearch engine, and provides many improvements over the standard MediaWiki search both in terms of quality of indexed content and user interface. ==Usage / Features== *Search titles. *Search the full content. *Search uploaded or linked files (Office documents and PDFs). *Search image data. *Search-as-you-type and auto-complete. *Ignore upper and lower case (case-insensitive). *Search with the operators AND, OR, NOT. *Search with wildcards. *Search for phrases. *Fuzzy search. *Sentence components. ==Technical information== ===Configuration=== Search for sentence fragments. Some aspects of this extension can be configured on [[Special:BlueSpiceConfigManager]], under section "ExtendedSearch". Here wiki administrators can configure: *Number of suggestions matching search term. *Default search method - fulltext or title. *Location of external directories to index, eg: D:\MyDirectory. *External URL to index from. *Number of highlight snippets. *File extensions to index. *Types of files/pages to index. *Number of results on special page. *Namespaces for "Similar pages". *Number of facets. *Various search preferences. *Solr core instance - name of Solr core holding wiki index. *Ping time (in seconds). *Sorl URL - URL to the Solr service - must be accessible to the wiki. ===Rights (permissions)=== Users are required to have "extendedsearch-viewspecialpage" permission in order to see search result special page. ===Requirements=== This extension requires [[Reference:BlueSpiceFoundation|BlueSpiceFoundation]]. ExtendedSearch requires an external service - Solr which acts as a backend for the search. To set up this service, software like Tomcat is needed to run Solr. ==User manual== For detailed description and usage, visit our [[Manual:Extension/ExtendedSearch|user manual]]. ==Try free our BlueSpice== [https://en.demo.bluespice.com/wiki/Main_Page BlueSpice Demo.] [[de:Referenz:{{PAGENAME}}]] [[en:Reference:{{PAGENAME}}]] [[Category:BlueSpice free]] [[Category:Extension]]external file paths *layout of the autocomplete box *language filter *exclude patterns ===Configuration (server)=== For boosting by match percent, the following settings are available in the extension itself:<syntaxhighlight lang="json"> "ESMatchPercentBoostFactor": { "description": "How much to boost the result based on the percent of its title taken up by the search term. Set to 0 to disable", "public": false, "value": "0.5" }, "ESMatchPercentTitleField": { "description": "Field on which to base the match percent boosting. If empty, default title field of the source will be used", "public": false, "value": "" }, </syntaxhighlight> Description: *'''ESMatchPercentBoostFactor''': The value here is multiplied by the the match percent and by the score of the document. Example: The search term is "Test". The search finds for example "Testpage" and - let's say - assigns a score of 20 to this result. Your search term matches 50 percent of the found name, so its match factor is 0.5. This factor is then multiplied by the value in this setting (by default 0.5), which gives the total boost factor of 0.25. The final score is calculated as "original score + (original score * boost factor)" => 20 + (20 * 0.25 ) = 20 + 5 = 25. This means that because your search term matches 50% of the result, it got boosted by the factor of 5. *'''ESMatchPercentTitleField:''' Field on which the match analysis is performed. Defaults to nothing, so whatever the search lookup sets. It can be set to "prefixed_text" to calculate match percent on the title with namespace prefix, for example, or to something like "basename" to calculate the match percent only on the page name, without the namespace prefix. }}
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{BSExtensionInfo |
|desc=Full-text search in articles and files, faceted search, fuzzy search, spellchecker and sorting as well as search-as-you-type and auto-complete functionality. | |desc=Full-text search in articles and files, faceted search, fuzzy search, spellchecker and sorting as well as search-as-you-type and auto-complete functionality. | ||
|status=stable | |status=stable | ||
|developer=HalloWelt | |developer=HalloWelt | ||
|type=BlueSpice | |type=BlueSpice | ||
− | |edition=BlueSpice free | + | |edition=BlueSpice free, BlueSpice pro, BlueSpice Farm, BlueSpice Cloud |
− | |||
|compatible=BlueSpice | |compatible=BlueSpice | ||
|category=Search and Navigation | |category=Search and Navigation | ||
|license=GPL v3 only | |license=GPL v3 only | ||
− | | | + | |features='''ExtendedSearch''' replaces the default MediaWiki search engine. It is based on ElasticSearch engine, and provides many improvements over the standard MediaWiki search both in terms of quality of indexed content and user interface. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | ''' | ||
− | |||
− | |||
*Search titles. | *Search titles. | ||
Line 29: | Line 20: | ||
*Search for phrases. | *Search for phrases. | ||
*Fuzzy search. | *Fuzzy search. | ||
− | * | + | *Search for sentence fragments. |
− | |||
− | |||
− | |||
Some aspects of this extension can be configured on [[Special:BlueSpiceConfigManager]], under section "ExtendedSearch". Here wiki administrators can configure: | Some aspects of this extension can be configured on [[Special:BlueSpiceConfigManager]], under section "ExtendedSearch". Here wiki administrators can configure: | ||
− | * | + | *external file paths |
− | + | *layout of the autocomplete box | |
− | + | *language filter | |
− | * | + | *exclude patterns |
− | |||
− | * | ||
− | |||
− | |||
− | |||
− | |||
− | * | ||
− | + | ===Configuration (server)=== | |
− | + | For boosting by match percent, the following settings are available in the extension itself:<syntaxhighlight lang="json"> | |
− | + | "ESMatchPercentBoostFactor": { | |
+ | "description": "How much to boost the result based on the percent of its title taken up by the search term. Set to 0 to disable", | ||
+ | "public": false, | ||
+ | "value": "0.5" | ||
+ | }, | ||
+ | "ESMatchPercentTitleField": { | ||
+ | "description": "Field on which to base the match percent boosting. If empty, default title field of the source will be used", | ||
+ | "public": false, | ||
+ | "value": "" | ||
+ | }, | ||
+ | </syntaxhighlight> | ||
− | |||
− | |||
− | + | Description: | |
− | This | + | *'''ESMatchPercentBoostFactor''': The value here is multiplied by the the match percent and by the score of the document. Example: The search term is "Test". The search finds for example "Testpage" and - let's say - assigns a score of 20 to this result. Your search term matches 50 percent of the found name, so its match factor is 0.5. This factor is then multiplied by the value in this setting (by default 0.5), which gives the total boost factor of 0.25. The final score is calculated as "original score + (original score * boost factor)" => 20 + (20 * 0.25 ) = 20 + 5 = 25. This means that because your search term matches 50% of the result, it got boosted by the factor of 5. |
− | + | *'''ESMatchPercentTitleField:''' Field on which the match analysis is performed. Defaults to nothing, so whatever the search lookup sets. It can be set to "prefixed_text" to calculate match percent on the title with namespace prefix, for example, or to something like "basename" to calculate the match percent only on the page name, without the namespace prefix. | |
− | + | }} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |