Difference between revisions of "Reference:BlueSpiceExtendedSearch"
(→Technical information) |
(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-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]
ExtendedSearch is able to search for articles and attachments according to both title and content. The first hits are shown as you are typing the search term into the box. If you do not get a suitable hit straight away, the search results can be refined by using facets. BlueSpice has a superior, better organised search function than MediaWiki.
Usage / Features[edit | edit source]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 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
Technical information[edit | edit source]
Configuration[edit | edit source]
- .
- 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 please 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=fullFull-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, BlueSpice pro |active=Yes , BlueSpice Farm, BlueSpice Cloud |compatible=BlueSpice |category=Search and Navigation |docu=https://www.mediawiki.org/wiki/Extension:ExtendedSearch }} __TOC__ ==Description== '''ExtendedSearch''' is able to search for articles and attachments according to both title and content. The first hits are shown as you are typing the search term into the box. If you do not get a suitable hit straight away, the search results can be refined by using facets. BlueSpice has a superior, better organised search function than MediaWiki. ==Usage / Features== * Search titles, * 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 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 and * Sentence components. ==Technical information== ===Configuration=== . *Search for sentence fragments. Some aspects of this extension can be configured on [[Special:BlueSpicePreferencesBlueSpiceConfigManager]], 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 [[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 please visit our [https://en.help.bluespice.com/wiki/Extensions/ExtendedSearch user manual.] ==Try free our BlueSpice== [https://en.demo.bluespice.com/wiki/Main_Page BlueSpice Demo.] [[de:{{FULLPAGENAME}}]][[en:{{FULLPAGENAME}}]] [[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. }}
(23 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{BSExtensionInfo |
− | |desc= | + | |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, BlueSpice pro | + | |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 |
− | + | |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 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: | |
− | |||
− | + | *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. |
− | |||
− | |||
− | + | }} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |