跳到内容
新问题

对这个项目有疑问吗?注册一个免费的GitHub帐户以打开一个问题,并联系其维护者和社区。

单击“注册GitHub”,表示您同意我们的服务条款隐私声明。我们偶尔会向您发送与帐户相关的电子邮件。

已经在GitHub上了?登录到您的帐户

添加smwgFieldType功能(SMW_FIELDT_CHAR_OCASE),参考文献1912 #2499

已合并
将1个提交合并到
2017年6月11日

对话

詹姆斯
复制链接
贡献者

@詹姆斯 詹姆斯 评论2017年6月10日

本请购单参考了:#1912,http://wikimedia.7.x6.nabble.com/Non-case-sensitive-search-possible-tp5075393p5075402.html

本PR涉及或包含:

  • 添加新的smwg字段类型功能带标志的设置SMW_FIELDT_CHAR_NOCASE公司可以更改字段类型,使字段搜索在wpg类型实体的不区分大小写的LIKE匹配(MySQL)(_W)1912年模型
  • 设置和标志SMW_FIELDT_CHAR_NOCASE公司默认情况下被禁用,因为“……尚未对从VARBINARY切换到整理VARCHAR字段类型如何影响搜索性能进行全面分析”
  • 延伸smwgSparqlQ功能以支持SMW_SPARQL_QF_NOCASE公司(SPARQLStore(SPARQL商店))
  • 更改设置需要运行setupStore.php更新.php
  • 如果SMW_FIELDT_CHAR_NOCASE公司已启用,则它将应用于BLOB、URI类型和smw_快捷键字段(匹配PAGE类型实体)

本公关包括:

  • 测试(单元/集成)
  • CI生成已通过

@詹姆斯 詹姆斯补充这个增强 改变现有功能或行为标签2017年6月10日
@詹姆斯
复制链接
贡献者 作者

詹姆斯 评论2017年6月10日

好的,这比之前预期的要花更多的精力,但这应该让用户能够更容易地切换字段类型,并在希望避免全文索引时,可以对LIKE/NLIKE进行不区分大小写的搜索。

限制和限制在默认设置.phpsmwg字段类型功能作为一个好东西,我会把SMW_SPARQL_QF_NOCASE公司标志SPARQLStore(SPARQL商店)这样LIKE/NLIKE也同样不区分大小写。

  • 80%的LOC(锁定)是由于单元测试或集成测试,或者删除了一些全局状态,否则会导致单元测试失败
  • 集成测试包括[[有页面::noCASE]][[有文本::noCASE]][[有页码::NOcase]][[有文本::NOcase]]

@詹姆斯
复制链接
贡献者 作者

这些示例是集成测试的一部分:

  • [[有页面::noCASE]][[有文本::noCASE]]
  • [[有页码::NOcase]][[有文本::NOcase]]
  • [[有页面::NOoNcase]][[有文本::NOoNcase]]

并支持(或不支持)以下查询:

  • [[有页码::~*noCa*]]
  • [[有文本::~*NOcA*]]
  • [[有页码::!~*noCa*]]
  • [[有文本::!~*NOcA*]]
  • [[有文本::nocase]]它使用非近似值,但扩展了精确不敏感匹配的匹配深度(用例[[包含关键字::SEARCH]],[[Has keyword::search]],[[包含关键字::sEaRch]])
  • [[有文本::!nocase]]
  • [[有页码::!nocase]]_wpg类型的NOCASE设置不支持,因为使用了不同的字段来匹配不区分大小写的DBKEY
  • [[有页码::nocase]]同上

PS:如果启用,则全文索引(#1481)仅在以下情况下生效~/!~查询。

免费注册 在GitHub上加入此对话.已经有帐户了吗?登录以发表评论
标签
增强 改变现有功能或行为
项目
还没有
开发

成功合并此请求可能会解决这些问题。

还没有

2名参与者