CN108766507B - CQL and standard information model openEHR-based clinical quality index calculation method - Google Patents

CQL and standard information model openEHR-based clinical quality index calculation method Download PDF

Info

Publication number
CN108766507B
CN108766507B CN201810323021.5A CN201810323021A CN108766507B CN 108766507 B CN108766507 B CN 108766507B CN 201810323021 A CN201810323021 A CN 201810323021A CN 108766507 B CN108766507 B CN 108766507B
Authority
CN
China
Prior art keywords
prototype
cql
openehr
template
data
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.)
Active
Application number
CN201810323021.5A
Other languages
Chinese (zh)
Other versions
CN108766507A (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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201810323021.5A priority Critical patent/CN108766507B/en
Publication of CN108766507A publication Critical patent/CN108766507A/en
Application granted granted Critical
Publication of CN108766507B publication Critical patent/CN108766507B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Epidemiology (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Devices For Executing Special Programs (AREA)
  • Machine Translation (AREA)

Abstract

The invention discloses a CQL and standard information model openEHR-based clinical quality index calculation method, which comprises the following steps: step 1, adding a prototype binding grammar in a CQL, and modifying term statement content; step 2, writing a CQL file by using the CQL with the grammar being modified, and analyzing the CQL file to generate a grammar parsing tree; step 3, processing the syntax parse tree to generate an expression logic model object; step 4, converting the prototype binding part in the expression logic model object into prototype query language (AQL) extraction data; step 5, organizing the extracted data according to a template tree structure; and 6, dynamically adding computational logic to the expression logic model object, and performing logic computation on the data to obtain a clinical quality index. The invention solves the problems that the conventional CQL can not use openEHR to express clinical quality indexes and the clinical quality monitoring process is complicated by adopting an openEHR standard system.

Description

CQL and standard information model openEHR-based clinical quality index calculation method
Technical Field
The invention relates to the field of clinical quality monitoring, in particular to a clinical quality index calculation method based on CQL and a standard information model openEHR.
Background
Clinical quality monitoring is an important means for evaluating clinical quality and promoting continuous improvement of clinical quality, and monitoring contents are usually embodied in an index form. With the continuous development of information technology, clinical quality indexes are gradually changed from initial natural language description to domain-specific language expression, so that the problems that monitoring results are difficult to share and compare and the like caused by the ambiguity of natural languages are solved.
Cql (clinical Quality language) is a language designed by HL7 organization to meet the requirements of both clinical Quality monitoring and clinical decision support. The CQL expression logic is human-readable and its contents may also be computer-processed. The CQL supports the expression of clinical quality monitoring index content based on models in QDM, QUICK, FHIR, etc., and these information models have the commonality that concepts and sub-concepts are expressed in a manner similar to object-oriented language [ object.
openEHR is an open electronic medical record specification, which describes medical knowledge and concepts in a layered modeling manner and comprises a Reference Model (RM) and an Archetype Model (AM), wherein the Archetype model consists of archetypes and templates (templates). The reference model defines a set of generic underlying data types and data structures that express medical knowledge and concepts, the prototypes describe each specific medical knowledge and concept by adding constraints to the reference model, and the templates further add constraints to the prototypes to describe specific data requirements according to actual application requirements.
The openEHR based clinical quality index can flexibly meet the information requirement of changeable clinical quality monitoring, and is beneficial to promoting the open sharing and comparison of the clinical quality index among different mechanisms, however, the specific layered modeling mode of the openEHR causes the expression of the concept not to support the expression of the object attribute and the sub-concept thereof, so that the CQL cannot use the openEHR information model to express the clinical quality index.
Disclosure of Invention
The invention provides a CQL and standard information model openEHR-based clinical quality index calculation method, which solves the problems that the conventional CQL cannot use an openEHR information model to express clinical quality indexes and the clinical quality monitoring process is complicated by adopting an openEHR standard system.
A clinical quality index calculation method based on CQL and a standard information model openEHR comprises the following steps:
step 1, adding a prototype binding grammar in a CQL, and modifying term statement content;
step 2, writing a CQL file by using the CQL with the grammar being modified, and analyzing the CQL file to generate a grammar parsing tree;
step 3, processing the syntax parse tree to generate an expression logic model object;
step 4, converting the prototype binding part in the expression logic model object into prototype query language (AQL) extraction data;
step 5, organizing the extracted data according to a template tree structure;
and 6, dynamically adding computational logic to the expression logic model object, and performing logic computation based on the data organized in the step 5 to obtain a clinical quality index.
According to the invention, the CQL is partially modified, so that the CQL can express the clinical quality index based on the openEHR prototype template of the standard information model, and further, the clinical quality index can be calculated by adopting a data system based on openEHR specifications.
The modification of the CQL mainly comprises two parts, namely adding prototype binding grammar and modifying term statement content, when the prototype binding grammar is added, declaring a prototype name, a template name to which the prototype belongs, a path of the prototype in the template and a data item path which needs to be used, and replacing the prototype and the data item by an identifier;
when the term statement content is modified, if the term is an openEHR internal term, the prototype of the term is declared, and the term code is also declared; in the case of openEHR external terms, term names, URLs, and term encodings are declared.
In order to realize the expression of the inclusion relationship between the archetypes in the standard information model openEHR, preferably, step 1 further includes: keywords expressing the inclusion relationship between prototypes are added to the conditional filter expression of the CQL.
In step 3, when processing the syntax parse tree, firstly, preprocessing the syntax parse tree, wherein the preprocessing comprises: and analyzing the prototype binding information in the syntax analysis tree to obtain the data item types of the prototype binding and the inclusion relationship between the prototypes.
The specific process of the pretreatment comprises the following steps: and establishing a mapping relation between the declaration symbol and the expression logic model object, analyzing the reference model type of the data item type bound by the prototype, and mapping the data item type bound by the prototype to the type defined in the CQL.
Processing the syntax parsing tree, and generating an expression logic model object specifically comprises:
a. and analyzing the name, the type and the category of the symbol in the syntax analysis tree, and creating corresponding reference objects aiming at different categories.
The parsed content includes a name, a type and a category of the symbol, where the name is a character string content of the symbol, the type refers to a real data type of the content represented by the symbol, such as a set type, an interval type, and the like, and the category refers to which type the symbol belongs in a language level, for example: global parameters, function parameters, expressions, etc.
b. And analyzing the function call, determining the function existence, and determining that the function parameter is compatible with the form parameter.
c. And resolving the accessor, determining the type of the accessed object, and creating the attribute object.
d. And judging whether the expression meets the specification, wherein the judgment mainly comprises the type, the number and the like of elements in the expression.
e. And creating an expression logic model and generating an XML file.
The key point of the invention is the grammar reconstruction of the CQL, the analysis processing process of the CQL statement is completed by adopting the prior art, and the adaptive processing is carried out aiming at the prototype binding content and the term declaration content in the analysis process.
In step 4, an AQL query statement is generated for each prototype binding according to the information provided by the prototype binding part to extract data content.
Preferably, in step 4, the prototype name in the prototype binding, the template name to which the prototype belongs, the path of the prototype in the template, the path of the prototype data item, and the data extraction preset condition are expressed by the AQL grammar to generate the AQL statement.
Preferably, in step 5, the tree relationship between the template and the prototype in the prototype binding is analyzed, and the extracted data is constructed into a data tree set stored according to the template according to the tree relationship between the template and the prototype.
The tree-like relation is embodied in the form of external keys in data, and the construction process is to construct the relation between a parent data node and a child data node according to the external keys.
And 6, predefining computing logic for each type of the expression logic model, loading an XML file of an expression logic model object, dynamically adding the computing logic for the type, constructing a logic execution tool, calculating by using the logic execution tool to obtain clinical quality indexes, wherein the contents comprise a runtime method, a runtime stack, a reference analysis tool, data and the like.
Compared with the prior art, the method omits the step of model mapping in the process of carrying out clinical quality index calculation on the data system based on the openEHR specification, directly describes the logic of the clinical quality index and the prototype data content through the CQL language, and can carry out clinical quality index calculation on the data conforming to the openEHR specification.
Drawings
FIG. 1 is a flow chart of a method for calculating clinical quality index based on CQL and standard information model openEHR according to the present invention;
FIG. 2 is a flow chart of the present invention for parsing a CQL file;
FIG. 3 is a detailed flow chart of the present invention for preprocessing parse trees;
FIG. 4 is a detailed flow chart of the present invention for processing parse tree parse symbols;
FIG. 5 is a detailed flow chart of the present invention for processing parse tree parse functions;
FIG. 6 is a detailed flow chart of the present invention for processing parse tree parse accessors;
figure 7 is a detailed flow diagram of the generation of an AQL query statement in accordance with prototype binding information in accordance with the present invention.
Detailed Description
The following describes the method for calculating the clinical quality index based on the CQL and the standard information model openEHR in detail with reference to the accompanying drawings.
A clinical quality index calculation method based on CQL and a standard information model openEHR comprises the following steps:
step 1, adding a prototype binding grammar in the CQL and modifying term statement content.
This step corresponds to step S101 in fig. 1, and when the prototype binding syntax is added, a prototype name, a template name to which the prototype belongs, a path of the prototype in the template, and a path of the data item to be used are declared, and the prototype and the data item are replaced with an identifier.
The keys of the prototype binding grammar and their roles are shown in table 1.
TABLE 1
Key word Of significance
archetype Defining a prototype binding and providing a unique identifier
name Defining prototype binding prototype names
in template Defining the name of the template to which the prototype belongs
with path Defining path information of a prototype in a template
elements Defining a set of binding elements and providing an element correspondence path
with predicates Defining the constraint content of prototype binding, the content being an expression
An example of prototype binding is shown in table 2.
TABLE 2
Figure BDA0001624697120000051
When the term statement content is modified, if the term is an openEHR internal term, the prototype of the term is declared, and the term code is also declared; in the case of openEHR external terms, term names, URLs, and term encodings are declared.
The keywords and roles of the term declaration are shown in table 3.
TABLE 3
Figure BDA0001624697120000052
Figure BDA0001624697120000061
An example of the term declaration is shown in table 4.
TABLE 4
Figure BDA0001624697120000062
The step 1 also comprises the following steps: keywords expressing the inclusion relationship between prototypes are added to the conditional filter expression of the CQL. The keyword is contact, which is used to express the inclusion relationship between prototypes, and when writing the conditional filtering expression, the data items required to be matched are defined by the inclusion relationship.
And 2, compiling a CQL file by using the CQL with the grammar being modified, and analyzing the CQL file to generate a grammar parsing tree.
Taking the statistical number of outpatient times in the month as an example, the written CQL file is shown in table 5.
TABLE 5
Figure BDA0001624697120000063
Figure BDA0001624697120000071
As shown in fig. 2, lexical analysis and syntax analysis are performed on the CQL file to generate a syntax parse tree, i.e., step S102 in fig. 1.
And 3, processing the syntax parse tree to generate an expression logic model object, wherein the step comprises the step S103 and the step S104 in the step 1.
Step 103, preprocessing the syntax parse tree, wherein the preprocessing process is as shown in fig. 3, judging the type of the node in the syntax parse tree, and performing the following processing according to the different types of the node:
if the node is the index type, creating an index initial object;
if the node is the expression type, creating an expression initial object;
if the node is the parameter type, a parameter initial object is created;
if the node is the function type, creating a function initial object;
if the node is a prototype binding object, the prototype name is firstly analyzed, the reference model type of the binding element in the prototype is analyzed, the reference model is mapped to several basic types which are already declared by CQL, and finally the prototype binding object is created.
The initial object refers to the object which is not the processed result, but only the declaration symbol and the context mapping relation of the nodes in the parse tree.
Step 104, as shown in fig. 4, performs the following processing for each symbol in the syntax parse tree:
if the symbol is prototype code, creating a prototype binding reference;
if the symbol is a data conditional filter result element, creating a filter result reference;
if the symbol is a symbol alternative name, creating an alternative name reference;
if the symbol is a Let declaration, then creating a Let parameter reference;
if the symbol is a function parameter, creating a function parameter reference;
if the symbol is a global parameter, creating a global parameter reference;
if the symbol is an expression, creating an expression reference;
creating a term reference if the symbol is a term binding code;
if the result type of the symbol belongs to the range, returning after determining the symbol result type, otherwise, judging whether the analysis is the analysis which must be successful, if the analysis must be successful, throwing out the analysis exception, otherwise, obtaining the current symbol from the mapping relation between the preprocessed symbol and the context, processing the context to generate an expression logic model object, recycling the process, and setting whether a flag bit which must be analyzed is true.
As shown in fig. 5, resolving the function call includes:
firstly, analyzing and acquiring a function name, acquiring a function calling parameter, creating a function calling reference, judging whether the function is a system predefined function, if so, directly returning to the system function reference, otherwise, analyzing the content of the function parameter, determining the type and the number of the parameter, and constructing a function calling context by taking the function name, the type and the number of the parameter as a function signature. And analyzing the function statement meeting the conditions, and determining the most meeting function according to the priority.
If the analysis is successful, judging whether the function parameter needs type conversion, if so, creating a type conversion object for the parameter, and replacing the parameter, thereby creating a function call object. If the analysis is unsuccessful, judging whether the current analysis is necessary analysis, and if the current analysis is necessary analysis, throwing out analysis exception; if the analysis is not necessary, acquiring the function statement from the preprocessing result, analyzing the function content to create a function object, executing the analysis process again, and setting whether the flag bit is necessary to be analyzed to be true.
As shown in fig. 6, the procedure for resolving the accessor is as follows:
taking the content on the left side of the point in the access process of the accessor as a left value, and taking the content on the right side of the point as a right value; if the left value is the prototype binding type, acquiring a prototype binding object, and analyzing prototype elements; if the left value is the alternative name type or the expression type or the attribute type, determining the specific type of the left value; if the specific type is a Tuple type, analyzing the attribute in the Tuple type, if the specific type is an Interval type, analyzing the attribute of the Interval type, and if the specific type is a Class type, acquiring the description object corresponding to the Class type from the predefined model and analyzing the attribute of the description object.
And 4, converting the prototype binding part in the expression logic model object into prototype query language (AQL) extraction data, namely step S105.
As shown in fig. 7, the template described in the prototype binding part is used as the object of the FROM keyword, the prototype name is used as the object of the contact keyword, the path information corresponding to the prototype binding data item is obtained as the object of the SELECT keyword, the prototype binding preset condition is analyzed, and the prototype data element path is obtained as the left value of the conditional expression. If the conditional expression is in operation, converting the conditional expression into matches operation; if it is an is not null operation, it is converted to an exist operation.
And step 5, organizing the extracted data according to the template tree structure, namely step 106.
And assembling the extracted data according to a template structure, specifically, constructing a data set corresponding to each template according to the foreign key relationship among the data.
And 6, dynamically adding computational logic to the expression logic model object, and performing logic computation based on the data organized in the step 5, namely step S107.
The added calculation logic is predefined, the adding process is to read an expression logic model object described by XML, and an execution interface is added for each type by means of the function provided by JAXB to perform logic calculation.
Appropriate changes and modifications to the embodiments described above will become apparent to those skilled in the art from the disclosure and teachings of the foregoing description. Therefore, the present invention is not limited to the specific embodiments disclosed and described above, and some modifications and variations of the present invention should fall within the scope of the claims of the present invention. Furthermore, although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims (5)

1. A clinical quality index calculation method based on CQL and a standard information model openEHR is characterized by comprising the following steps:
step 1, adding openEHR prototype binding grammar in CQL and modifying term statement content;
step 2, writing a CQL file by using the CQL with the grammar being modified, and analyzing the CQL file to generate a grammar parsing tree;
step 3, processing the syntax parse tree to generate an expression logic model object;
step 4, converting the prototype binding part in the expression logic model object into a prototype query language AQL to extract data content;
step 5, organizing and collecting the extracted data according to the template tree structure;
and 6, dynamically adding computational logic to the expression logic model object, and performing logic computation based on the data organized in the step 5 to obtain a clinical quality index.
2. The CQL and standard information model openEHR-based clinical quality indicator calculation method of claim 1, wherein, when adding the prototype binding syntax, declares a prototype name, a template name to which the prototype belongs, a path of the prototype in the template, and a path of the data item to be used, and replaces the prototype and the data item with an identifier;
when the term statement content is modified, if the term is an openEHR internal term, the prototype of the term is declared, and the term code is also declared; in the case of openEHR external terms, term names, URLs, and term encodings are declared.
3. The method of claim 1, wherein the step 1 further comprises: keywords expressing the inclusion relationship between prototypes are added to the conditional filter expression of the CQL.
4. The method of claim 1, wherein in step 4, the prototype name in the prototype binding, the template name to which the prototype belongs, the path of the prototype in the template, the path of the prototype data item, and the preset conditions for data extraction are expressed by using AQL syntax to generate the AQL sentence.
5. The method according to claim 1, wherein in step 5, the tree relationship between the template and the prototype in the prototype binding is analyzed, and the extracted data is constructed into the data tree set stored according to the template according to the tree relationship between the template and the prototype.
CN201810323021.5A 2018-04-11 2018-04-11 CQL and standard information model openEHR-based clinical quality index calculation method Active CN108766507B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810323021.5A CN108766507B (en) 2018-04-11 2018-04-11 CQL and standard information model openEHR-based clinical quality index calculation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810323021.5A CN108766507B (en) 2018-04-11 2018-04-11 CQL and standard information model openEHR-based clinical quality index calculation method

Publications (2)

Publication Number Publication Date
CN108766507A CN108766507A (en) 2018-11-06
CN108766507B true CN108766507B (en) 2021-08-17

Family

ID=63981493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810323021.5A Active CN108766507B (en) 2018-04-11 2018-04-11 CQL and standard information model openEHR-based clinical quality index calculation method

Country Status (1)

Country Link
CN (1) CN108766507B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110209699B (en) * 2019-05-22 2021-04-06 浙江大学 Data interface dynamic generation and execution method based on openEHR Composition template
CN110211646B (en) * 2019-05-22 2021-04-06 浙江大学 OCQL and openEHR-based dynamically configurable medical report generation method
CN113297199B (en) * 2020-06-24 2024-03-08 阿里巴巴集团控股有限公司 Method and device for using spatiotemporal data engine and Cassandra database system
CN113205881B (en) * 2021-06-02 2023-07-21 中国人民解放军军事科学院军事医学研究院 OpenEHR prototype and template automatic generation method based on thought guide graph

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104766259A (en) * 2015-03-31 2015-07-08 华据医疗评估信息技术(北京)有限公司 Medical clinical quality monitoring and evaluation system based on single-disease model
CN106844693A (en) * 2017-01-24 2017-06-13 浙江大学 A kind of conversion methods of openEHR Template to relational database
CN106991276A (en) * 2017-03-17 2017-07-28 浙江大学 A kind of data-interface dynamic creation method based on openEHR templates

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130046529A1 (en) * 2009-12-22 2013-02-21 Health Ewords Pty Ltd. Method and System for Classification of Clinical Information
US20120278100A1 (en) * 2011-04-28 2012-11-01 Annuary Healthcare, Inc. Remote, Adjunct, Credentialed Provider-Directed Healthcare Systems and Methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104766259A (en) * 2015-03-31 2015-07-08 华据医疗评估信息技术(北京)有限公司 Medical clinical quality monitoring and evaluation system based on single-disease model
CN106844693A (en) * 2017-01-24 2017-06-13 浙江大学 A kind of conversion methods of openEHR Template to relational database
CN106991276A (en) * 2017-03-17 2017-07-28 浙江大学 A kind of data-interface dynamic creation method based on openEHR templates

Also Published As

Publication number Publication date
CN108766507A (en) 2018-11-06

Similar Documents

Publication Publication Date Title
CN108959433B (en) Method and system for extracting knowledge graph from software project data and asking for questions and answers
CN108766507B (en) CQL and standard information model openEHR-based clinical quality index calculation method
CN111400297B (en) Hadoop-based mass data quality verification method
CN107644323A (en) A kind of intelligent checks system of service-oriented stream
KR20090009834A (en) A generic interface for deep embedding of expression trees in programming languages
CN102360367A (en) XBRL (Extensible Business Reporting Language) data search method and search engine
Agrawal et al. Materialization and incremental update of path information
Verbruggen et al. Semantic programming by example with pre-trained models
CN112183059A (en) Chinese structured event extraction method
CN111695002B (en) Database-independent query method based on XML sentences
CN114528846A (en) Concept network for artificial intelligence and generation method thereof
Lano et al. Model transformation development using automated requirements analysis, metamodel matching, and transformation by example
Yuan et al. Java code clone detection by exploiting semantic and syntax information from intermediate code-based graph
CN111831624A (en) Data table creating method and device, computer equipment and storage medium
Sowa Future directions for semantic systems
Pamungkas et al. B-BabelNet: business-specific lexical database for improving semantic analysis of business process models
Hossain et al. Natural Language–Based Conceptual Modelling Frameworks: State of the Art and Future Opportunities
CN117608656A (en) Mixed front end frame migration method based on AST and LLM
Boukhari et al. The role of user requirements in data repository design
CN110928535B (en) Derived variable deployment method, device, equipment and readable storage medium
CN109408592B (en) AI characteristic engineering knowledge base in decision-making type distributed database system and implementation method thereof
Goh et al. An integrated environment for product development using STEP/EXPRESS
Rajbhoj et al. DocToModel: automated authoring of models from diverse requirements specification documents
CN115935943A (en) Analysis framework supporting natural language structure calculation
CN115345153A (en) Natural language generation method based on concept network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant