CN106528797A - 基于Elasticsearch的DSL查询方法 - Google Patents

基于Elasticsearch的DSL查询方法 Download PDF

Info

Publication number
CN106528797A
CN106528797A CN201610994634.2A CN201610994634A CN106528797A CN 106528797 A CN106528797 A CN 106528797A CN 201610994634 A CN201610994634 A CN 201610994634A CN 106528797 A CN106528797 A CN 106528797A
Authority
CN
China
Prior art keywords
elasticsearch
dsl
query
inquiry
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610994634.2A
Other languages
English (en)
Inventor
程永新
宋辉
张刘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Qingwei Software Co Ltd
Original Assignee
Shanghai Qingwei Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Qingwei Software Co Ltd filed Critical Shanghai Qingwei Software Co Ltd
Priority to CN201610994634.2A priority Critical patent/CN106528797A/zh
Publication of CN106528797A publication Critical patent/CN106528797A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于Elasticsearch的DSL查询方法,包括如下步骤:a)在Elasticsearch客户端层添加DSL解析引擎,解析客户端传递的查询语句;b)将来自客户端的查询语句翻译成相应的文法树结构,并根据文法树的深度优先遍历,构造Elasticsearch的原生查询功能;c)获取Elasticsearch的查询结果。本发明通过在Elasticsearch客户端层添加DSL解析引擎对Elasticsearch进行二次封装,维护容易,扩展性强,提升Elasticsearch的查询可用性,减少学习成本,降低出错率,能够应对多版本的Elasticsearch,降低系统升级带来的影响。

Description

基于Elasticsearch的DSL查询方法
技术领域
本发明涉及一种分布式的实时搜索和分析引擎,尤其涉及一种基于Elasticsearch的DSL查询方法。
背景技术
Elasticsearch是一个基于Lucene的搜索服务器,提供一个分布式的实时搜索和分析引擎,基于其提供的RESTful接口可以很好的定制数据检索、分析服务。Elasticsearch支持很多查询方式,其中一种就是DSL,其定义了一套基于JSON数据结构的查询语言,即它是把请求写在JSON里面,然后进行相关的查询。
ElasticSearch作为当前流行的企业级搜索引擎,设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。但是现有Elasticsearch提供的查询语法繁杂,语义上不容易理解,多条件组合的查询嵌套结构,结构冗长,出错后难以排查。此外,Elasticsearch多版本的查询API不一致,需要根据升级的版本修改业务查询功能,升级困难。
发明内容
本发明所要解决的技术问题是提供一种基于Elasticsearch的DSL查询方法,维护容易,扩展性强,能够提升Elasticsearch的查询可用性,减少学习成本,降低出错率,能够应对多版本的Elasticsearch,降低系统升级带来的影响。
本发明为解决上述技术问题而采用的技术方案是提供一种基于Elasticsearch的DSL查询方法,包括如下步骤:a)在Elasticsearch客户端层添加DSL解析引擎,解析客户端传递的查询语句;b)将来自客户端的查询语句翻译成相应的文法树结构,并根据文法树的深度优先遍历,构造Elasticsearch的原生查询功能;c)获取Elasticsearch的查询结果。
上述的基于Elasticsearch的DSL查询方法,其中,所述步骤a)中的DSL解析引擎为客户端提供统一的查询入口,并将代码以插件的方式打包放入Elasticsearch的plugin目录下,作为插件启动。
上述的基于Elasticsearch的DSL查询方法,其中,所述DSL解析引擎提供叶查询子句和复合查询子句,包含查询上下文和过滤器上下文这两种执行环境;查询上下文中,查询操作不仅仅进行查询,还要计算分值,用于确定相关度;在过滤器上下文中,查询操作仅判断是否满足查询条件,并缓存查询的结果。
上述的基于Elasticsearch的DSL查询方法,其中,所述步骤b)先采用Antlr的g4定义模板文件,定义过滤条件和全文检索条件,接着利用g4工具生成文法解析类,再继承MainBaseVisitor文法树访问类实现深度优先遍历。
本发明对比现有技术有如下的有益效果:本发明提供的基于Elasticsearch的DSL查询方法,通过在Elasticsearch客户端层添加DSL解析引擎对Elasticsearch进行二次封装,维护容易,扩展性强,提升Elasticsearch的查询可用性,减少学习成本,降低出错率,能够应对多版本的Elasticsearch,降低系统升级带来的影响。
附图说明
图1为本发明基于Elasticsearch的DSL查询架构示意图;
图2为本发明生成的深度优先遍历的访问器。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
图1为本发明基于Elasticsearch的DSL查询架构示意图。
请参见图1,本发明提供的基于Elasticsearch的DSL查询方法,包括如下步骤:
a)在Elasticsearch客户端层添加DSL解析引擎,解析客户端传递的查询语句;
b)将来自客户端的查询语句翻译成相应的文法树结构,并根据文法树的深度优先遍历,构造Elasticsearch的原生查询功能;
c)获取Elasticsearch的查询结果。
本发明提供的基于Elasticsearch的DSL查询方法,主要流程实现如下:
1)文法模板定义
继承采用Antlr的g4定义模板文件,定义过滤条件及全文检索条件。
2)文法解析
利用g4工具生成文法解析类。代码如下:
3)文法树深度优先遍历
继承MainBaseVisitor文法树访问类,实现自定义深度优先遍历的访问器,程序会根据文法树,如图2所示。将自定义的文法语言转换为Elasticsearch的查询功能。
4)生成Elasticsearch的查询功能
将多种文法组合一起,构建成功能完善的Elasticsearch的查询功能,以DSL语言替换Elasticsearch复杂的查询语言。核心代码包括查询记录数、排序、计算最小得分和指定routes。将代码以插件的方式打包放入Elasticsearch的plugin目录下,作为插件启动,客户端就能通过新的查询语言进行Elasticsearch查询。
本发明的Elasticsearch中的DSL主要由叶查询子句(Leaf query Cluase)和复合查询子句(Compound query Cluase)两部分组成。
叶查询子句(Leaf query Cluase),这种查询可以单独使用,针对某一特定的字段查询特定的值,比如match、term、range等。
复合查询子句(Compound query Cluase),这种查询配合其他的叶查询或者复合查询,用于在逻辑上,组成更为复杂的查询,比如bool。查询虽然包含这两种,但是查询在不同的执行环境下,操作还是不一样的。查询上下文中,查询操作不仅仅会进行查询,还会计算分值,用于确定相关度;在过滤器上下文中,查询操作仅判断是否满足查询条件。
在查询上下文中,ES中索引的数据都会存储一个_score分值,分值越高就代表越匹配。在过滤器上下文中,它不会去计算任何分值,也不会关心返回的排序问题,因此效率会高一点。另外,经常使用过滤器,ES会自动的缓存过滤器的内容,这对于查询来说,会提高很多性能。
本发明提供的基于Elasticsearch的DSL查询方法,通过在Elasticsearch客户端层添加DSL解析引擎对Elasticsearch进行二次封装,维护容易,扩展性强。具体优点如下:1、通用性的DSL查询语言定义,做到可以配置,文法修改方便;2、以插件的方式集成进Elasticsearch框架中,不需要修改Elasticsearch代码,没有任何侵入性;3、提升Elasticsearch的查询可用性,减少学习成本,降低出错率;4、提供统一的查询入口,升级Elasticsearh只需修改文法转换器逻辑,降低业务系统的耦合度;5、使用简单,提供DSL方式的查询接口,利用Java生产环境中原生态库集成;6、文法解析、转换过程不会降低整体集群使用性能;7维护容易,扩展性强。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

Claims (4)

1.一种基于Elasticsearch的DSL查询方法,其特征在于,包括如下步骤:
a)在Elasticsearch客户端层添加DSL解析引擎,解析客户端传递的查询语句;
b)将来自客户端的查询语句翻译成相应的文法树结构,并根据文法树的深度优先遍历,构造Elasticsearch的原生查询功能;
c)获取Elasticsearch的查询结果。
2.如权利要求1所述的基于Elasticsearch的DSL查询方法,其特征在于,所述步骤a)中的DSL解析引擎为客户端提供统一的查询入口,并将代码以插件的方式打包放入Elasticsearch的plugin目录下,作为插件启动。
3.如权利要求2所述的基于Elasticsearch的DSL查询方法,其特征在于,所述DSL解析引擎提供叶查询子句和复合查询子句,包含查询上下文和过滤器上下文这两种执行环境;查询上下文中,查询操作不仅仅进行查询,还要计算分值,用于确定相关度;在过滤器上下文中,查询操作仅判断是否满足查询条件,并缓存查询的结果。
4.如权利要求1所述的基于Elasticsearch的DSL查询方法,其特征在于,所述步骤b)先采用Antlr的g4定义模板文件,定义过滤条件和全文检索条件,接着利用g4工具生成文法解析类,再继承MainBaseVisitor文法树访问类实现深度优先遍历。
CN201610994634.2A 2016-11-10 2016-11-10 基于Elasticsearch的DSL查询方法 Pending CN106528797A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610994634.2A CN106528797A (zh) 2016-11-10 2016-11-10 基于Elasticsearch的DSL查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610994634.2A CN106528797A (zh) 2016-11-10 2016-11-10 基于Elasticsearch的DSL查询方法

Publications (1)

Publication Number Publication Date
CN106528797A true CN106528797A (zh) 2017-03-22

Family

ID=58350777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610994634.2A Pending CN106528797A (zh) 2016-11-10 2016-11-10 基于Elasticsearch的DSL查询方法

Country Status (1)

Country Link
CN (1) CN106528797A (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107153535A (zh) * 2017-03-27 2017-09-12 武汉斗鱼网络科技有限公司 一种操作ElasticSearch的方法及装置
CN107341217A (zh) * 2017-06-27 2017-11-10 武汉斗鱼网络科技有限公司 一种数据获取方法及设备
CN107341249A (zh) * 2017-07-07 2017-11-10 北京奇艺世纪科技有限公司 服务器信息的存储和提取方法及系统、提取装置
CN107368578A (zh) * 2017-07-20 2017-11-21 山东合天智汇信息技术有限公司 一种快速生成es查询语句的方法及系统
CN107491544A (zh) * 2017-08-25 2017-12-19 上海德拓信息技术股份有限公司 一种增强非关系型数据库分析能力的数据处理平台
WO2018228034A1 (zh) * 2017-06-15 2018-12-20 北京京东尚科信息技术有限公司 生成弹性搜索请求的方法和装置
CN109271182A (zh) * 2017-07-18 2019-01-25 北京京东尚科信息技术有限公司 用于搜索引擎升级的方法及装置
CN109325047A (zh) * 2018-11-22 2019-02-12 北京明朝万达科技股份有限公司 一种交互式ElasticSearch深度分页查询方法和设备
CN109739882A (zh) * 2019-01-04 2019-05-10 南威软件股份有限公司 一种基于Presto和Elasticsearch的大数据查询优化方法
CN110020006A (zh) * 2017-07-27 2019-07-16 北京国双科技有限公司 查询语句的生成方法及相关设备
CN110020333A (zh) * 2017-07-27 2019-07-16 北京嘀嘀无限科技发展有限公司 数据分析方法及装置、电子设备、存储介质
CN110543517A (zh) * 2019-08-26 2019-12-06 汉纳森(厦门)数据股份有限公司 一种基于Elasticsearch实现海量数据复杂查询方法、装置及介质
CN110968763A (zh) * 2018-09-30 2020-04-07 北京国双科技有限公司 数据处理的方法及装置
CN111026931A (zh) * 2019-12-09 2020-04-17 中国建设银行股份有限公司 一种数据查询方法、装置、设备及介质
CN111046060A (zh) * 2019-12-11 2020-04-21 杭州安恒信息技术股份有限公司 一种基于Elasticsearch的数据检索方法、装置、设备、介质
CN111797111A (zh) * 2020-05-17 2020-10-20 冠群信息技术(南京)有限公司 一种基于es搜索引擎的动态组合查询方法
CN112199233A (zh) * 2020-10-16 2021-01-08 新华三信息安全技术有限公司 一种elasticsearch可视化数据的校验方法、装置及设备
US11182093B2 (en) 2019-05-02 2021-11-23 Elasticsearch B.V. Index lifecycle management
US11188531B2 (en) * 2018-02-27 2021-11-30 Elasticsearch B.V. Systems and methods for converting and resolving structured queries as search queries
US11431558B2 (en) 2019-04-09 2022-08-30 Elasticsearch B.V. Data shipper agent management and configuration systems and methods
US11461270B2 (en) 2018-10-31 2022-10-04 Elasticsearch B.V. Shard splitting
US11556388B2 (en) 2019-04-12 2023-01-17 Elasticsearch B.V. Frozen indices
US11580133B2 (en) 2018-12-21 2023-02-14 Elasticsearch B.V. Cross cluster replication
US11604674B2 (en) 2020-09-04 2023-03-14 Elasticsearch B.V. Systems and methods for detecting and filtering function calls within processes for malware behavior
US11914592B2 (en) 2018-02-27 2024-02-27 Elasticsearch B.V. Systems and methods for processing structured queries over clusters
US11943295B2 (en) 2019-04-09 2024-03-26 Elasticsearch B.V. Single bi-directional point of policy control, administration, interactive queries, and security protections

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719156A (zh) * 2009-12-30 2010-06-02 南开大学 一种在关系型数据库中无缝集成纯xml查询引擎的系统
CN103123650A (zh) * 2013-03-06 2013-05-29 同方知网(北京)技术有限公司 一种基于整数映射的xml数据库全文索引方法
CN105260403A (zh) * 2015-09-22 2016-01-20 广东同望科技股份有限公司 通用跨数据库访问方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719156A (zh) * 2009-12-30 2010-06-02 南开大学 一种在关系型数据库中无缝集成纯xml查询引擎的系统
CN103123650A (zh) * 2013-03-06 2013-05-29 同方知网(北京)技术有限公司 一种基于整数映射的xml数据库全文索引方法
CN105260403A (zh) * 2015-09-22 2016-01-20 广东同望科技股份有限公司 通用跨数据库访问方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周映 等: "ElasticSearch在电子商务系统中的应用实例", 《信息技术与标准化》 *

Cited By (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018176822A1 (zh) * 2017-03-27 2018-10-04 武汉斗鱼网络科技有限公司 一种操作ElasticSearch的方法及装置
CN107153535B (zh) * 2017-03-27 2020-08-04 武汉斗鱼网络科技有限公司 一种操作ElasticSearch的方法及装置
CN107153535A (zh) * 2017-03-27 2017-09-12 武汉斗鱼网络科技有限公司 一种操作ElasticSearch的方法及装置
CN109145014A (zh) * 2017-06-15 2019-01-04 北京京东尚科信息技术有限公司 生成弹性搜索请求的方法和装置
WO2018228034A1 (zh) * 2017-06-15 2018-12-20 北京京东尚科信息技术有限公司 生成弹性搜索请求的方法和装置
CN107341217B (zh) * 2017-06-27 2020-02-07 武汉斗鱼网络科技有限公司 一种数据获取方法及设备
WO2019000897A1 (zh) * 2017-06-27 2019-01-03 武汉斗鱼网络科技有限公司 一种数据获取方法及设备
CN107341217A (zh) * 2017-06-27 2017-11-10 武汉斗鱼网络科技有限公司 一种数据获取方法及设备
CN107341249A (zh) * 2017-07-07 2017-11-10 北京奇艺世纪科技有限公司 服务器信息的存储和提取方法及系统、提取装置
CN109271182A (zh) * 2017-07-18 2019-01-25 北京京东尚科信息技术有限公司 用于搜索引擎升级的方法及装置
CN109271182B (zh) * 2017-07-18 2022-09-06 北京京东尚科信息技术有限公司 用于搜索引擎升级的方法及装置
CN107368578A (zh) * 2017-07-20 2017-11-21 山东合天智汇信息技术有限公司 一种快速生成es查询语句的方法及系统
CN107368578B (zh) * 2017-07-20 2020-05-12 山东合天智汇信息技术有限公司 一种快速生成es查询语句的方法及系统
CN110020006A (zh) * 2017-07-27 2019-07-16 北京国双科技有限公司 查询语句的生成方法及相关设备
CN110020333A (zh) * 2017-07-27 2019-07-16 北京嘀嘀无限科技发展有限公司 数据分析方法及装置、电子设备、存储介质
CN110020006B (zh) * 2017-07-27 2021-04-27 北京国双科技有限公司 查询语句的生成方法及相关设备
CN107491544A (zh) * 2017-08-25 2017-12-19 上海德拓信息技术股份有限公司 一种增强非关系型数据库分析能力的数据处理平台
CN107491544B (zh) * 2017-08-25 2020-12-29 上海德拓信息技术股份有限公司 一种增强非关系型数据库分析能力的数据处理平台
US11188531B2 (en) * 2018-02-27 2021-11-30 Elasticsearch B.V. Systems and methods for converting and resolving structured queries as search queries
US11914592B2 (en) 2018-02-27 2024-02-27 Elasticsearch B.V. Systems and methods for processing structured queries over clusters
CN110968763A (zh) * 2018-09-30 2020-04-07 北京国双科技有限公司 数据处理的方法及装置
US11461270B2 (en) 2018-10-31 2022-10-04 Elasticsearch B.V. Shard splitting
CN109325047A (zh) * 2018-11-22 2019-02-12 北京明朝万达科技股份有限公司 一种交互式ElasticSearch深度分页查询方法和设备
US11580133B2 (en) 2018-12-21 2023-02-14 Elasticsearch B.V. Cross cluster replication
CN109739882A (zh) * 2019-01-04 2019-05-10 南威软件股份有限公司 一种基于Presto和Elasticsearch的大数据查询优化方法
US11943295B2 (en) 2019-04-09 2024-03-26 Elasticsearch B.V. Single bi-directional point of policy control, administration, interactive queries, and security protections
US11431558B2 (en) 2019-04-09 2022-08-30 Elasticsearch B.V. Data shipper agent management and configuration systems and methods
US11556388B2 (en) 2019-04-12 2023-01-17 Elasticsearch B.V. Frozen indices
US11182093B2 (en) 2019-05-02 2021-11-23 Elasticsearch B.V. Index lifecycle management
US11586374B2 (en) 2019-05-02 2023-02-21 Elasticsearch B.V. Index lifecycle management
CN110543517B (zh) * 2019-08-26 2022-05-10 汉纳森(厦门)数据股份有限公司 一种基于Elasticsearch实现海量数据复杂查询方法、装置及介质
CN110543517A (zh) * 2019-08-26 2019-12-06 汉纳森(厦门)数据股份有限公司 一种基于Elasticsearch实现海量数据复杂查询方法、装置及介质
CN111026931A (zh) * 2019-12-09 2020-04-17 中国建设银行股份有限公司 一种数据查询方法、装置、设备及介质
CN111046060A (zh) * 2019-12-11 2020-04-21 杭州安恒信息技术股份有限公司 一种基于Elasticsearch的数据检索方法、装置、设备、介质
CN111046060B (zh) * 2019-12-11 2023-04-25 杭州安恒信息技术股份有限公司 一种基于Elasticsearch的数据检索方法、装置、设备、介质
CN111797111A (zh) * 2020-05-17 2020-10-20 冠群信息技术(南京)有限公司 一种基于es搜索引擎的动态组合查询方法
US11604674B2 (en) 2020-09-04 2023-03-14 Elasticsearch B.V. Systems and methods for detecting and filtering function calls within processes for malware behavior
CN112199233B (zh) * 2020-10-16 2022-08-26 新华三信息安全技术有限公司 一种elasticsearch可视化数据的校验方法、装置及设备
CN112199233A (zh) * 2020-10-16 2021-01-08 新华三信息安全技术有限公司 一种elasticsearch可视化数据的校验方法、装置及设备

Similar Documents

Publication Publication Date Title
CN106528797A (zh) 基于Elasticsearch的DSL查询方法
CN106934062B (zh) 一种查询elasticsearch的实现方法及系统
CN102479252B (zh) 查询语句转换装置及查询语句转换方法
CN108052547B (zh) 基于问句和知识图结构分析的自然语言问答方法及系统
CN107133267B (zh) 查询elasticsearch集群的方法、装置、电子设备和可读存储介质
CN107491561B (zh) 一种基于本体的城市交通异构数据集成系统及方法
US10282444B2 (en) Disambiguating join paths for natural language queries
CN104915341B (zh) 可视化多数据库etl集成方法和系统
CN102609451B (zh) 面向流式数据处理的sql查询计划生成方法
CN103425726B (zh) 使用业务智能工具访问开放数据
CN104657439A (zh) 用于自然语言精准检索的结构化查询语句生成系统及方法
CN106407302B (zh) 支持通过简单sql调用中间件数据库特有功能的方法
WO2023221408A1 (zh) 深度学习框架的算子处理方法、装置、设备和存储介质
US20120066236A1 (en) Method for semantic service registration and query based on wordnet
CN103927360A (zh) 基于图模型的软件项目语义信息表示及检索方法
CN106844380A (zh) 一种数据库操作方法、信息处理方法和相应装置
CN107515887A (zh) 一种适用于多种大数据管理系统的交互式查询方法
CN104657440A (zh) 结构化查询语句生成系统及方法
CN109308300B (zh) 一种逻辑运算的处理方法、装置、转换插件及存储介质
US20130097151A1 (en) Transformation of complex data source result sets to normalized sets for manipulation and presentation
CN102750358A (zh) 一种系统数据模型到cim模型的映射方法及系统
CN103064876A (zh) 面向地理信息应用的空间数据服务化获取方法
CN109145009B (zh) 一种基于SQL检索ElasticSearch的方法
CN108388635A (zh) 数据搜索方法、装置、介质和计算设备
CN102999600A (zh) 一种嵌入式数据库自动生成方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170322