KR101052908B1 - Medical Knowledge Processing System and Method - Google Patents

Medical Knowledge Processing System and Method Download PDF

Info

Publication number
KR101052908B1
KR101052908B1 KR1020090018515A KR20090018515A KR101052908B1 KR 101052908 B1 KR101052908 B1 KR 101052908B1 KR 1020090018515 A KR1020090018515 A KR 1020090018515A KR 20090018515 A KR20090018515 A KR 20090018515A KR 101052908 B1 KR101052908 B1 KR 101052908B1
Authority
KR
South Korea
Prior art keywords
rule
medical knowledge
unit
ontology
model
Prior art date
Application number
KR1020090018515A
Other languages
Korean (ko)
Other versions
KR20100099934A (en
Inventor
김정아
장진영
김윤
조인숙
Original Assignee
서울대학교산학협력단
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 서울대학교산학협력단 filed Critical 서울대학교산학협력단
Priority to KR1020090018515A priority Critical patent/KR101052908B1/en
Publication of KR20100099934A publication Critical patent/KR20100099934A/en
Application granted granted Critical
Publication of KR101052908B1 publication Critical patent/KR101052908B1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology

Abstract

본 발명에서는 온톨로지 기반의 의료지식 처리를 위한 시스템이 제공된다. 이 시스템은 온톨로지 언어의 의료지식 모델을 입력할 수 있는 모델 편집부; 룰 관리자가 룰 서버에서 처리하는 룰을 편집할 수 있는 룰 편집부; 상기 편집된 룰과 상기 모델 편집기에 의해 입력된 의료지식 모델을 저장하기 위한 룰 저장부; 상기 룰 저장소에 룰과 의료지식 모델을 저장하고 검색하는 룰 관리부; 상기 룰 관리부에 의해 검색된 룰과 의료지식 모델을 처리하는 룰 실행부를 포함하는 룰 엔진부 및 의료지식 프로세스 정의를 문서 파일로 저작하는 프로세스 정의 저작부; 상기 저작된 문서 파일을 저장하는 프로세스 정의 저장부; 상기 저장된 문서 파일로 저장된 프로세스 정의를 실행하면서 상기 룰 엔진부로부터 룰을 호출하는 프로세스 실행부를 포함하는 프로세스 엔진부를 포함한다. In the present invention, a system for ontology-based medical knowledge processing is provided. The system includes a model editing unit for inputting a medical knowledge model of the ontology language; A rule editing unit capable of editing a rule processed by the rule manager at the rule server; A rule storage unit for storing the edited rule and the medical knowledge model input by the model editor; A rule manager for storing and retrieving rules and medical knowledge models in the rule repository; A process definition authoring unit authoring a rule engine unit and a medical knowledge process definition including a rule execution unit processing a rule and a medical knowledge model retrieved by the rule management unit into a document file; A process definition storage unit for storing the authored document file; And a process engine unit including a process execution unit for calling a rule from the rule engine unit while executing a process definition stored in the stored document file.

지식 엔진, 의료지식, 룰, 프로세스, 온톨로지 Knowledge Engine, Medical Knowledge, Rules, Process, Ontology

Description

의료 지식처리 시스템 및 방법{System and method for medical knowledge process}System and method for medical knowledge process

본 발명은 의료지식 처리에 관한 것으로, 온톨로지 기반의 일반적 의료규칙을 처리할 수 있는 룰 엔진과 액티비티 그래프(activity graph) 기반의 프로세스에 해당하는 가이드라인 및 임상경로지침(critical path)을 처리할 수 있는 프로세스 엔진을 통합하여 제공하는 것을 그 특징으로 한다. The present invention relates to medical knowledge processing, and can handle guidelines and clinical paths corresponding to rule engines and activity graph-based processes that can handle ontology-based general medical rules. It is characterized by providing an integrated process engine.

본 발명은 보건산업진흥원 및 서울대학교 산학협력재단의 바이오산업화기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다. [과제관리번호: A050909, 과제명: 전자건강기록 아키텍쳐 및 통합의료용어체계, 임상의사결정 지원시스템 연구].The present invention is derived from research conducted as part of the bioindustrial technology development project of the Korea Health Industry Development Institute and the Seoul National University Industry-Academic Cooperation Foundation. [Task Management No .: A050909, Assignment Name: Electronic Health Record Architecture, Integrated Medical Terminology System, Clinical Decision Support System].

어떠한 문제를 해결하기 위해 단계적으로나 내용적으로 더욱 더 복잡해져 가는 현대 사회에서는 해결하고자 하는 문제를 정확히 분류하고 이를 해결하는 해결 프로세스와 내용이 체계적으로 지식베이스에 저장되었을 때 이를 검색하여 호출하여 사용하기 위한 발전된 방식의 요구가 증대되고 있다. In today's society, which is becoming more complex in stages and contents to solve any problem, the problem process and contents to classify the problem to be solved correctly and to solve it are systematically stored in the knowledge base. The demands of advanced methods are increasing.

어떠한 문제점에 대해서 문제점을 해결하는데 가장 적합한 전문가가 미리 문 제해결을 위한 지식베이스를 구축해 놓으면 일일이 전문가의 손을 빌리지 않고 문제를 해결할 수 있는 가능성이 높아진다. If a specialist who is best suited to solving a problem has a knowledge base for solving the problem in advance, the possibility of solving the problem without raising the expert's hand is increased.

하지만, 지식베이스를 구축할 때 관계된 개념들을 상호 연관지어 정의함으로써 좀더 풍부한 내용을 담을 수 있는데, 이러한 방법 중의 하나로서 온톨로지(ontology)에 대한 관심이 높아지고 있다. 온톨로지란 어휘나 개념의 정의 또는 명세(specification)로서 정보시스템 분야에서는 시스템이 다루는 내용에 해당하는 구성요소(개념)를 의미한다. 컴퓨터가 필수적으로 관계되는 모든 정보시스템은 정보시스템이 바라보는 적용영역에 대한 관점(view)의 반영이라 할 수 있는 온톨로지를 가지고 있다. However, when constructing a knowledge base, the related concepts can be correlated to define a richer content. One of these methods is increasing interest in ontology. An ontology is a definition or specification of a vocabulary or concept, and in the field of information systems, it refers to a component (concept) that corresponds to what the system deals with. Every information system in which a computer is essential has an ontology, which is a reflection of the view of the application area viewed by the information system.

온톨로지는 의료·기계제조·금융·전자상거래 등 특정한 응용영역에 대해 만들어지는데, 여기서 해당 응용영역의 기본 개념에 대한 정의와 그들간의 관계에 대한 명세로 이루어지는 것이 일반적이다. Ontologies are created for specific application areas, such as medical, machinery manufacturing, finance, and e-commerce. In general, the ontology consists of a definition of the basic concepts of the application area and a specification of the relationship between them.

예를 들어 하나의 개념인 '환자'에는 그 개념을 설명하는 속성(attribute)을 갖게 되는데, 나이, 성별, 키, 몸무게, 병력, 혈압, 혈당치 등이 있을 수 있을 것이다. 또 이러한 개념들은 서로 다양한 관계를 가질 수 있는데 가장 기본적인 관계로 상하포함관계가 있을 수 있다. 예를 들어 암환자나 고혈압환자는 환자라는 넓은 의미의 개념에 포함되는 하위개념이 될 것이다. For example, a concept 'patient' has attributes describing the concept, such as age, gender, height, weight, medical history, blood pressure, and blood sugar level. In addition, these concepts can have a variety of relationships with each other, the most basic relationship can be a relationship between top and bottom. For example, cancer patients or hypertensive patients will be sub-concepts included in the broader concept of patient.

전문적인 지식처리를 지식베이스화하여 체계적인 문제 해결이나 룰을 제공할 수 있는 대표적인 예로는 의료분야가 있다. The medical field is a representative example that can provide a systematic problem solving or rule by knowledge base of professional knowledge processing.

그 동안 의료의 질과 환자의 안전성을 위한 임상실무지침, 프로토콜, 임상경 로지침은 진료 과정에서 최선의 방침을 적용하도록 의료진을 안내하는 역할을 해 왔다. 그러나, 그 내용이 매우 방대하여, 의료진이 그 내용을 모두 기억하고 환자를 진료하는 것은 불가능한 일이다. In the meantime, clinical practice guidelines, protocols, and clinical pathway guidelines for quality of care and patient safety have guided medical staff to apply best practices in the course of care. However, the contents are so vast that it is impossible for the medical staff to remember them all and treat the patients.

특정한 질병 또는 그러한 질병을 앓고 있는 환자에 대하여 적절한 치료를 위해서 미리 의사나 의료 관계자라는 전문가가 입력한 임상지식 등의 의료지식을 이용하여 미리 지식베이스를 구축하여 놓을 수 있다. 이러한 지식베이스 구축에 온톨로지를 이용할 수 있다. 의료 분야에서는 특별히 의료지식과 의료 규칙의 정확하고도 신속한 처리가 생명이라 할 수 있으며, 이를 위해서 일반적 의료 규칙을 처리하는 룰 엔진과 액티비티 기반의 프로세스에 해당하는 가이드라인을 처리할 수 있는 프로세스 엔진이 결합되어 제공될 때 더욱 효과적인 의료지식 처리가 가능할 것이다. In order to appropriately treat a specific disease or a patient suffering from such a disease, a knowledge base may be constructed in advance using medical knowledge, such as clinical knowledge inputted by a doctor or a healthcare professional. Ontology can be used to construct such knowledge base. In the medical field, in particular, accurate and rapid processing of medical knowledge and medical rules is life. For this purpose, a rule engine for processing general medical rules and a process engine for processing guidelines based on activity-based processes are provided. When provided in combination, more effective medical knowledge processing will be possible.

본 발명이 해결하고자 하는 기술적 과제는 의료지식 처리를 위한 시스템에서 일반적 의료규칙을 처리할 수 있는 룰 엔진과 액티비티 기반의 프로세스에 해당하는 가이드라인을 통합한 의료지식 엔진을 통해 효과적이고 신속한 의료지식 처리 시스템과 방법에 관한 것이다. The technical problem to be solved by the present invention is effective and rapid medical knowledge processing through a medical knowledge engine incorporating a rule engine that can process general medical rules in the system for medical knowledge processing and guidelines corresponding to activity-based processes System and method.

또한, 온톨로지에 의해 의료규칙을 처리하기 위해 더욱 발전된 룰 엔진에 관한 것이다. It also relates to a more advanced rule engine for processing medical rules by ontology.

상기의 과제를 해결하기 위해, 온톨로지 언어의 의료지식 모델을 입력할 수 있는 모델 편집부; 룰 관리자가 룰 서버에서 처리하는 룰을 편집할 수 있는 룰 편집부; 상기 편집된 룰과 상기 모델 편집기에 의해 입력된 의료지식 모델을 저장하기 위한 룰 저장부; 상기 룰 저장소에 룰과 의료지식 모델을 저장하고 검색하는 룰 관리부; 상기 룰 관리부에 의해 검색된 룰과 의료지식 모델을 처리하는 룰 실행부를 포함하는 룰 엔진부 및 온톨로지 언어로 의료지식 프로세스 정의를 문서 파일로 저작하는 프로세스 정의 저작부; 상기 저작된 문서 파일을 저장하는 프로세스 정의 저장부; 상기 저장된 문서 파일로 저장된 프로세스 정의를 실행하면서 상기 룰 엔진부로부터 룰을 호출하는 프로세스 실행부를 포함하는 프로세스 엔진부를 포함하는 온톨로지 기반의 의료지식 처리 시스템이 제공된다. In order to solve the above problems, the model editing unit for inputting the medical knowledge model of the ontology language; A rule editing unit capable of editing a rule processed by the rule manager at the rule server; A rule storage unit for storing the edited rule and the medical knowledge model input by the model editor; A rule manager for storing and retrieving rules and medical knowledge models in the rule repository; A rule engine unit including a rule execution unit for processing the rule retrieved by the rule manager and a medical knowledge model and a process definition authoring unit for authoring a medical knowledge process definition in a document file in an ontology language; A process definition storage unit for storing the authored document file; An ontology-based medical knowledge processing system including a process engine unit including a process execution unit for calling a rule from the rule engine unit while executing a process definition stored as the stored document file is provided.

상기의 또 다른 과제를 해결하기 위해, 온톨로지 언어의 의료지식 모델을 입 력할 수 있는 모델 편집부; 룰 관리자가 룰 서버에서 처리하는 룰을 편집할 수 있는 룰 편집부; 상기 편집된 룰과 상기 모델 편집기에 의해 입력된 의료지식 모델을 저장하는 룰 저장부; 상기 룰 저장소에 저장된 룰과 의료지식 모델을 검색하는 룰 관리부; 및 상기 룰 관리부에 의해 검색된 룰과 의료지식 모델을 처리하는 룰 실행부를 포함하는 온톨로지 기반의 의료지식 처리를 위한 룰 엔진 시스템이 제공된다. In order to solve the above another problem, the model editing unit for inputting the medical knowledge model of the ontology language; A rule editing unit capable of editing a rule processed by the rule manager at the rule server; A rule storage unit for storing the edited rule and the medical knowledge model input by the model editor; A rule manager for searching for rules and medical knowledge models stored in the rule repository; And it provides a rule engine system for the ontology-based medical knowledge processing including a rule execution unit for processing the rule and the medical knowledge model retrieved by the rule manager.

상기의 또 다른 과제를 해결하기 위해, 온톨로지 언어로 의료지식 프로세스 정의를 문서 파일 형태로 저작하는 단계; 프로세스 실행이 개시되어 상기 프로세스 정의가 로드되는 단계; 상기 로드된 프로세스 정의 내의 하나 이상의 하부 액티비티들을 실행하는 단계를 포함하되, 상기 하부 액티비티가 룰 엔진 호출 액티비티인 경우 룰을 호출한 후 다시 상기 하부 액티비티를 실행하는 단계로 돌아가고, 상기 하부 액티비티가 순차복합 액티비티인 경우 상기 하나 이상의 하부 액티비티 전체를 순차적으로 실행하고, 상기 하부 액티비티가 병렬복합 액티비티인 경우 상기 하나 이상의 하부 액티비티를 동시에 실행하고, 및 상기 하부 액티비티가 조건복합 액티비티인 경우 상기 하나 이상의 하부 액티비티들을 상기 조건복합 액티비티에서 제시한 조건이 만족되는 경우만 실행하는 것을 특징으로 하는 온톨로지 기반의 의료지식을 처리하는 컴퓨터 프로그램이 포함된 컴퓨터 가독 매체가 제공된다. In order to solve the above another problem, authoring a medical knowledge process definition in the form of a document file in the ontology language; Starting process execution to load the process definition; Executing one or more sub-activities in the loaded process definition, wherein if the sub-activity is a rule engine call activity, return to executing the sub-activity again after invoking a rule, and the sub-activities are sequentially compounded. In the case of an activity, the entirety of the at least one lower activity is executed sequentially; in the case in which the lower activity is a parallel complex activity, the at least one lower activity is simultaneously executed; and if the lower activity is a conditional activity, the at least one lower activity is executed. Provided is a computer readable medium including a computer program for processing ontology-based medical knowledge, which is executed only when the conditions set forth in the conditional complex activity are satisfied.

상기의 과제해결 수단을 통해서 의료지식 처리를 위한 시스템에서 일반적 의료규칙을 처리할 수 있는 룰 엔진과 액티비티 기반의 프로세스에 해당하는 가이드라인을 통합한 의료지식 처리 시스템과 방법이 제공되고, 또한, 온톨로지에 의해 의료규칙을 처리하기 위해 더욱 발전된 룰 엔진이 제공될 수 있다. Through the above problem solving means, there is provided a medical knowledge processing system and method incorporating a rule engine capable of processing general medical rules in a system for medical knowledge processing and guidelines corresponding to an activity-based process. A more advanced rule engine can be provided for processing medical rules.

이하 첨부한 도면을 참조하면서 본 발명에 따른 의료 지식처리 시스템 및 방법에 대해 좀더 자세히 기술하기로 한다. 본 발명을 서술함에 있어서 관련된 공지기술 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략될 것이다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 클라이언트나 운용자, 사용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 각 용어의 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. Hereinafter, a medical knowledge processing system and method according to the present invention will be described in detail with reference to the accompanying drawings. In describing the present invention, when it is determined that detailed descriptions of related well-known technologies or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. In addition, terms to be described below are terms defined in consideration of functions in the present invention, which may vary according to a client's or operator's intention or custom. Therefore, the definition of each term should be made based on the contents throughout the specification.

도 1은 본 발명에 따른 의료지식 처리 시스템을 간략하게 도시한 블럭도이다. 1 is a block diagram schematically showing a medical knowledge processing system according to the present invention.

본 발명에 따른 의료지식 처리 시스템은 크게 프로세스 엔진부(100)와 룰 엔진부(140)로 나누어진다. 프로세스 엔진부(100)에서는 임상경로지침을 처리하는 부분이라 할 수 있다. 프로세스 엔진부(100)는 프로세스 정의를 기술하고 저작하는 프로세스 정의 저작부(110)와 프로세스 정의 저작부(110)에서 정의한 프로세스 정의 문서 파일을 저장하는 프로세스 정의 저장부(120), 그리고 이렇게 저장된 프로세스 정의 문서 파일을 호출하여 실행하는 프로세스 실행부(130)를 포함한다. 프로세스 실행부(130)는 룰 엔진부(140)를 호출하기도 한다. 프로세스 정의 문서 파일은 보통 XML 문서 파일로 이루어진다. 프로세스 정의 문서 파일은 액티비티 기반의 의료지식을 처리한다. 액티비티 기반의 프로세스 정의 문서 파일의 자세한 내용은 도 3에서 설명한다. The medical knowledge processing system according to the present invention is largely divided into a process engine unit 100 and a rule engine unit 140. The process engine unit 100 may be referred to as a part for processing the clinical path guide. The process engine unit 100 includes a process definition authoring unit 110 for describing and authoring a process definition, a process definition storage unit 120 for storing a process definition document file defined by the process definition authoring unit 110, and the stored process. And a process execution unit 130 for calling and executing the definition document file. The process execution unit 130 may call the rule engine 140. Process definition document files usually consist of XML document files. The process definition document file handles activity-based medical knowledge. The details of the activity-based process definition document file are described in FIG. 3.

도 2는 본 발명에 따른 의료지식 처리 시스템에서 룰 엔진을 나타내는 블럭도이다. 2 is a block diagram showing a rule engine in the medical knowledge processing system according to the present invention.

본 발명에서는 도 1에서 이미 설명한 바와 같이 프로세스 엔진부(100)의 프로세스 실행부(130)에서 룰 엔진부(140)를 호출함으로써 프로세스 엔진과 룰 엔진이 통합된 엔진이 제공된다. As described above with reference to FIG. 1, an engine in which the process engine and the rule engine are integrated is provided by calling the rule engine 140 from the process execution unit 130 of the process engine unit 100.

도 2에 따른 룰 엔진(200)은 모델 편집부(210), 룰 편집부(220), 룰 관리부(230), 룰 저장부(240), 룰 실행부(250), 입출력 컴포넌트부(260)로 구성된다. The rule engine 200 according to FIG. 2 includes a model editing unit 210, a rule editing unit 220, a rule managing unit 230, a rule storing unit 240, a rule executing unit 250, and an input / output component unit 260. do.

모델 편집부(210)에서는 지식표현 기반이 되는 영역의 지식 모델을 편집한다. 지식 모델은 해당 지식의 전문가가 편집하도록 한다. 예를 들어 의료지식을 편집은 전문가인 의사나 의료기관 종사자 등이 담당하여 해당 모델을 편집하도록 한다. 이 때 지식 모델은 온톨로지를 기반으로 하여 생성된다. The model editor 210 edits the knowledge model of the area on which the knowledge expression is based. Knowledge models should be edited by the expert of that knowledge. For example, the editing of medical knowledge should be handled by a doctor or medical practitioner who is an expert to edit the model. At this time, the knowledge model is generated based on the ontology.

온톨로지를 기반으로 하여 지식 모델을 생성하는 다음과 같다. 예를 들어 혈압조절권고안은 환자의 혈압이 현재 잘 유지되고 있는지, 환자의 목표혈압수치는 얼마인지를 권고하기 위해서 각 고혈압 단계별 수축기/이완기 혈압의 최대치와 추가적으로 환자의 목표혈압 수치를 제시하기 위해 정상혈압 수치를 지식 모델에 정의한다. 또한 검사권고안은 고혈압 관리를 위해 주기적으로 갱신되어야 할 검사수치들 중 현재 갱신되어야 할 검사를 권고하기 위해서 고혈압 관리를 위해 주기적으로 갱신되어야 할 검사코드와 각 검사의 유효기간을 수명(lifespan)에 대한 일단위로 지식 모델에 정의한다. Create knowledge model based on ontology as follows. For example, the recommendation for blood pressure control is normal to provide maximum patient systolic / diastolic blood pressure levels for each hypertension and additional target blood pressure levels to recommend how well the patient's blood pressure is currently maintained and what the patient's target blood pressure is. Define blood pressure levels in the knowledge model. In addition, the Recommendation recommends the test code to be periodically updated for the management of hypertension and the expiration date of each test to recommend the tests that should be updated periodically for the management of hypertension. Defined in the knowledge model on a daily basis.

룰 편집부(220)는 룰 관리자가 의료 룰 서버에서 처리할 수 있는 룰을 입력하는 편집기이다. 룰을 편집하는 예는 다음과 같다. 앞선 예에서 고혈압 환자가 당뇨가 있는지 여부를 판단하여 당뇨가 없다면, 관리단계(ControlledStage)의 수축기/이완기 혈압이 목표 혈압이 되고, 당뇨가 있다면 관리단계(ControlledStage)의 수축기/이완기 혈압에서 10씩 뺀 값을 목표 혈압으로 설정하는 룰을 편집한다. The rule editing unit 220 is an editor for inputting a rule that the rule manager can process in the medical rule server. An example of editing a rule is as follows. In the previous example, if the patient with hypertension is diabetic and does not have diabetes, the systolic / diastolic blood pressure of the Controlled Stage becomes the target blood pressure, and if there is diabetes, the systolic / diastolic blood pressure of the Controlled Stage is subtracted by 10 Edit the rule to set the value to the target blood pressure.

룰 실행부(250)는 룰 서버의 중심 컴포넌트라고 할 수 있다. 사용자가 정의한 룰을 사용자가 정의한 정보와, 룰 엔진 입력 파일을 기반으로 룰의 처리를 담당한다. 룰 엔진 입력 파일은 XML 형식이 사용될 수 있다. The rule execution unit 250 may be referred to as a central component of the rule server. Responsible for processing rules based on user defined rules and rule engine input files. The rule engine input file can be in XML format.

룰 저장부(240)는 룰 관리자가 룰 편집기를 통하여 정의한 각각의 룰을 저장하는 저장소이다. 입출력 컴포넌트(260)에서는 룰 실행부(250)에 필요한 룰을 호출한다. 룰 실행부(250)로부터 룰을 실행하기 위한 요청을 받으면 룰 관리부(230)는 룰 저장부(240)를 검색하여 필요한 지식을 검색한다. 필요한 지식이 검색되면 룰 관리부(230)는 룰 실행부(250)에 필요한 지식을 넘겨주고, 룰 실행부(250)는 입출력 컴포넌트(260)에 처리 결과값을 업무별 출력 인터페이스 XML에 세팅하여 넘겨주고 입출력 컴포넌트(260)는 이러한 결과값이 세팅된 XML 파일을 사용자 인터페이스(270)에 넘겨준다. 사용자 인터페이스(270)는 결과값이 세팅된 XML 파일이 병원정보 시스템(280)에서 사용되도록 전달한다. 룰 엔진 실행에 필요한 기술 플랫폼은 자바 가상 머신(Java Virtual Machine)이 사용된다. 앞에서 기술한 바와 같이 룰 엔진은 프로세스 엔진부에서의 호출에 응답한다. The rule storage unit 240 is a repository for storing each rule defined by the rule manager through the rule editor. The input / output component 260 calls a rule required by the rule execution unit 250. Upon receiving a request for executing a rule from the rule execution unit 250, the rule manager 230 searches the rule storage unit 240 to search for necessary knowledge. When the necessary knowledge is found, the rule manager 230 passes the necessary knowledge to the rule execution unit 250, and the rule execution unit 250 sets the processing result value to the input / output component 260 in the task output interface XML and passes it. The input / output component 260 passes the XML file with these result values to the user interface 270. The user interface 270 delivers the XML file with the result set to be used in the hospital information system 280. The technology platform required to run the rule engine is a Java virtual machine. As described above, the rule engine responds to calls from the process engine unit.

도 3은 본 발명에 따른 프로세스 정의 파일의 구조를 나타내는 일실시예이 다. 3 is an embodiment illustrating the structure of a process definition file according to the present invention.

프로세스 정의 파일은 보통 XML로 구성된다. 내부의 구조는 도 3과 같이 무한 깊이(Depth)의 트리구조를 갖는다. 각 블록 간의 정의는 301 블록과 303 블록과 같이 단순 상속관계일 수 있고, 302와 304와 같이 포함관계일 수 있다. Process definition files usually consist of XML. The internal structure has a tree structure of infinite depth as shown in FIG. 3. The definition between each block may be a simple inheritance relationship, such as blocks 301 and 303, and may be an inclusion relationship, such as 302 and 304.

먼저 프로세스 정의 내에는 활동의 단위인 다수의 하위 액티비티(320)를 담는다. 즉, 프로세스 정의(310)는 하나 이상의 하위 액티비티(320)를 담고 있다. 이러한 하위 액티비티의 유형에는 크게 두가지로 나뉘는데, 하나는 룰 호출 액티비티(330)이고 또 하나는 복합 액티비티(340)이다. First, a process definition contains a number of child activities 320 that are units of activity. That is, process definition 310 contains one or more sub-activities 320. There are two main types of sub-activities: rule call activity 330 and compound activity 340.

룰 호출 액티비티(330)는 단위 룰 오브젝트의 룰 호출을 담당하고 단순히 작업이 끝날 수 있는 정의를 담는다. 반면에 복합 액티비티(340)는 다양한 형태의 액티비티를 하위 액티비티로 담을 수 있다. 그 세부 유형으로는 순차복합 액티비티(350), 병렬복합 액티비티(360), 조건복합 액티비티(370)로 나눌 수 있다. The rule call activity 330 is responsible for rule invocation of the unit rule object and simply contains a definition in which work can be completed. On the other hand, the composite activity 340 may contain various types of activities as sub-activities. The subtypes may be divided into a sequential activity 350, a parallel activity 360, and a conditional activity 370.

순차복합 액티비티(350)는 순차적인 흐름으로 하부 액티비티가 수행되는 경우이다. 병렬복합 액티비티(360)는 하부액티비티들이 모두 동시에 실행되는 경우이다. 마지막으로 조건복합 액티비티(370)는 조건에 부합된 하부 액티비티 만을 실행하는 규약이 담기는 경우이다. 복합 액티비티(340)는 자신을 자신에 담을 수 있게 되므로 결국 무한 깊이(Depth)의 트리(tree)구조의 자료구조가 된다. The sequential activity 350 is a case where the lower activity is performed in a sequential flow. The parallel compound activity 360 is a case where all of the lower activities are executed at the same time. Finally, the conditional compound activity 370 is a case in which a rule is executed to execute only the lower activity that satisfies the condition. Since the composite activity 340 can contain itself, it becomes a data structure of a tree structure of infinite depth.

도 4는 본 발명에 따라 사용자가 프로세스 정의를 저장하거나 프로세스를 실행하는 단계를 흐름도로 나타낸 것이다. 4 is a flow chart illustrating steps in which a user stores a process definition or executes a process in accordance with the present invention.

사용자가 시스템에 로그인(420)하게 되면 프로세스 편집 메뉴 또는 프로세스 실행 메뉴 중 하나가 선택(430)될 수 있다. When the user logs in to the system 420, one of the process editing menu or the process execution menu may be selected 430.

프로세스 편집 메뉴가 선택되면 사용자는 프로세스 정의 도구를 통하여 프로세스 정의를 작성(441)하게 되고, 작성된 프로세스 정의는 서버에 저장(443)된다. When the process edit menu is selected, the user creates a process definition 441 through the process definition tool, and the created process definition is stored 444 in the server.

프로세스 실행 메뉴가 선택되면 프로세스 엔진이 프로세스 정의 파일을 로드(451)한다. 로드된 프로세스 정의 파일에 따라 하위 액티비티를 실행(452)한다. 이 때 액티비티를 판단(453)하여 룰 엔진 호출 액티비티인 경우 해당 룰 엔진을 호출하여 결과를 얻고(455) 상위 액티비티로 돌아간다(456). If the process execution menu is selected, the process engine loads (451) the process definition file. The child activity executes (452) according to the loaded process definition file. At this time, the activity is determined (453), and in the case of a rule engine call activity, the rule engine is called to obtain a result (455), and the process returns to a higher activity (456).

만일 액티비티를 판단(453)하여 실행할 하위 액티비티가 순차복합 액티비티인 경우 모든 하위 액티비티들을 순차적으로 실행(460)한다. 또 병렬복합 액티비티인 경우에는 모든 하위 액티비티들을 동시에 실행(470)한다. 또 조건복합 액티비티인 경우에는 조건에 부합되는 하위 액티비티 만을 수행(480)한다. If the lower activity to be executed is determined 453 and the lower activity to be executed is a sequential compound activity, all the lower activities are sequentially executed 460. In the case of a parallel complex activity, all lower activities are executed at the same time (470). In addition, in the case of the condition compound activity, only the lower activity meeting the condition is performed (480).

이상과 같이 본 발명은 양호한 실시예에 근거하여 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것이므로, 본 발명이 속하는 기술분야의 숙련자라면 이 발명의 기술사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능할 것이다. 그러므로, 이 발명의 보호범위는 첨부된 청구범위에 의해서만 한정될 것이며, 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다. As described above, the present invention has been described based on the preferred embodiments, but these embodiments are intended to illustrate the present invention, not to limit the present invention, so that those skilled in the art to which the present invention pertains can practice the above without departing from the technical spirit of the present invention. Various changes, modifications or adjustments to the example will be possible. Therefore, the protection scope of the present invention will be limited only by the appended claims, and should be construed as including all changes, modifications or adjustments.

도 1은 본 발명에 따른 의료지식 처리 시스템을 간략하게 도시한 블럭도이다. 1 is a block diagram schematically showing a medical knowledge processing system according to the present invention.

도 2는 본 발명에 따른 의료지식 처리 시스템에서 룰 엔진을 나타내는 블럭도이다. 2 is a block diagram showing a rule engine in the medical knowledge processing system according to the present invention.

도 3은 본 발명에 따른 프로세스 정의 파일의 구조를 나타내는 일실시예이다. 3 is an embodiment illustrating the structure of a process definition file according to the present invention.

도 4는 본 발명에 따라 사용자가 프로세스 정의를 저장하거나 프로세스를 실행하는 단계를 흐름도로 나타낸 것이다. 4 is a flow chart illustrating steps in which a user stores a process definition or executes a process in accordance with the present invention.

Claims (7)

온톨로지 언어의 의료지식 모델을 입력할 수 있는 모델 편집부;A model editing unit capable of inputting a medical knowledge model of an ontology language; 룰 관리자가 룰 서버에서 처리하는 룰을 편집할 수 있는 룰 편집부;A rule editing unit capable of editing a rule processed by the rule manager at the rule server; 상기 편집된 룰과 상기 모델 편집부에 의해 입력된 의료지식 모델을 저장하기 위한 룰 저장부;A rule storage unit for storing the edited rule and the medical knowledge model input by the model editing unit; 상기 룰 저장부에 룰과 의료지식 모델을 저장하고 검색하는 룰 관리부; 및A rule manager which stores and retrieves a rule and a medical knowledge model in the rule storage unit; And 상기 룰 관리부에 의해 검색된 룰과 의료지식 모델을 처리하는 룰 실행부를 포함하여, 온톨로지 기반의 의료규칙을 처리하는 룰 엔진부; 및A rule engine unit for processing an ontology-based medical rule, including a rule execution unit for processing a rule retrieved by the rule manager and a medical knowledge model; And 의료지식 프로세스 정의를 문서 파일로 저작하는 프로세스 정의 저작부;A process definition authoring unit for authoring a medical knowledge process definition as a document file; 상기 저작된 문서 파일을 저장하는 프로세스 정의 저장부; 및A process definition storage unit for storing the authored document file; And 상기 저장된 문서 파일로 저장된 프로세스 정의를 실행하면서 상기 룰 엔진부로부터 룰을 호출하는 프로세스 실행부를 포함하여, 액티비티 그래프 기반의 프로세스에 해당하는 가이드라인 및 임상경로지침을 처리하는 프로세스 엔진부를 포함하는 온톨로지 기반의 의료지식 처리 시스템.Ontology-based comprising a process engine unit for processing guidelines and clinical path instructions corresponding to an activity graph-based process, including a process execution unit for calling a rule from the rule engine unit while executing a process definition stored in the stored document file Medical knowledge processing system. 제1항에 있어서, 상기 프로세스 저작부가 저작하는 문서 파일은 XML 형식인 것을 특징으로 하는 온톨로지 기반의 의료지식 처리 시스템.The ontology-based medical knowledge processing system of claim 1, wherein the document file authored by the process authoring unit is in XML format. 삭제delete 제1항에 있어서, 상기 룰 엔진부는 사용자 인터페이스로부터 의료지식 요청을 입력받아 상기 룰 실행부로부터 처리된 상기 의료지식 요청에 따른 결과를 상기 사용자 인터페이스에 전달하는 입출력 컴포넌트부를 더 포함하는 것을 특징으로 하는 온톨로지 기반의 의료지식 처리 시스템.The apparatus of claim 1, wherein the rule engine unit further comprises an input / output component unit configured to receive a medical knowledge request from a user interface and transmit a result according to the medical knowledge request processed by the rule execution unit to the user interface. Ontology-based medical knowledge processing system. 제4항에 있어서, 상기 입출력 컴포넌트부가 전달하는 상기 결과는 XML 형식에 셋팅되는 것을 특징으로 하는 온톨로지 기반의 의료지식 처리 시스템.The ontology-based medical knowledge processing system of claim 4, wherein the result transmitted by the input / output component unit is set in an XML format. 제4항에 있어서, 상기 입출력 컴포넌트에 의료지식 요청을 하고 상기 결과를 수신하는 사용자 인터페이스부를 더 포함하는 것을 특징으로 하는 온톨로지 기반의 의료지식 처리 시스템.The ontology-based medical knowledge processing system of claim 4, further comprising a user interface configured to make a medical knowledge request to the input / output component and receive the result. 삭제delete
KR1020090018515A 2009-03-04 2009-03-04 Medical Knowledge Processing System and Method KR101052908B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090018515A KR101052908B1 (en) 2009-03-04 2009-03-04 Medical Knowledge Processing System and Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090018515A KR101052908B1 (en) 2009-03-04 2009-03-04 Medical Knowledge Processing System and Method

Publications (2)

Publication Number Publication Date
KR20100099934A KR20100099934A (en) 2010-09-15
KR101052908B1 true KR101052908B1 (en) 2011-07-29

Family

ID=43006066

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090018515A KR101052908B1 (en) 2009-03-04 2009-03-04 Medical Knowledge Processing System and Method

Country Status (1)

Country Link
KR (1) KR101052908B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130097476A (en) * 2012-02-24 2013-09-03 가천의과학대학교 산학협력단 A customized management service providing system using ontology
KR20180058253A (en) 2016-11-23 2018-06-01 한국전자통신연구원 Data processing apparatus and method for merging deterministic and non-deterministic knowledge information processing

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101311964B1 (en) * 2011-12-14 2013-09-26 한국 한의학 연구원 Apparatus and method for serching caution information of krean medicine
KR102179177B1 (en) * 2018-10-02 2020-11-18 주식회사 플랜잇파트너스 System for storing and searching distributed data storage for hospital medical records fast search, and method thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070072387A (en) * 2005-12-30 2007-07-04 고려대학교 산학협력단 System for managing workflow on grid and method thereof
US20070178501A1 (en) * 2005-12-06 2007-08-02 Matthew Rabinowitz System and method for integrating and validating genotypic, phenotypic and medical information into a database according to a standardized ontology

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070178501A1 (en) * 2005-12-06 2007-08-02 Matthew Rabinowitz System and method for integrating and validating genotypic, phenotypic and medical information into a database according to a standardized ontology
KR20070072387A (en) * 2005-12-30 2007-07-04 고려대학교 산학협력단 System for managing workflow on grid and method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130097476A (en) * 2012-02-24 2013-09-03 가천의과학대학교 산학협력단 A customized management service providing system using ontology
KR20180058253A (en) 2016-11-23 2018-06-01 한국전자통신연구원 Data processing apparatus and method for merging deterministic and non-deterministic knowledge information processing

Also Published As

Publication number Publication date
KR20100099934A (en) 2010-09-15

Similar Documents

Publication Publication Date Title
Yao et al. CONFlexFlow: integrating flexible clinical pathways into clinical decision support systems using context and rules
Wang et al. Design and implementation of the GLIF3 guideline execution engine
Isern et al. Computer-based execution of clinical guidelines: a review
Isern et al. Ontology-driven execution of clinical guidelines
De Clercq et al. Computer-interpretable guideline formalisms
AU2012382008B2 (en) Patient information interface
Jafarpour et al. Exploiting semantic web technologies to develop OWL-based clinical practice guideline execution engines
US20090276246A1 (en) Automated Interdisciplinary Plan of Care Generation System
CN110291555A (en) System and method for promoting the calculating analysis to health status
KR101052908B1 (en) Medical Knowledge Processing System and Method
Pereira Detro et al. Applying process mining and semantic reasoning for process model customisation in healthcare
Braun et al. Validating archetypes for the multiple sclerosis functional composite
Young et al. Runtime application of Hybrid-Asbru clinical guidelines
US8121860B2 (en) Patient care and treatment data structure and processing system
Giannoulis et al. Designing and implementing a collaborative health knowledge system
Colantonio et al. A knowledge editing service for multisource data management in remote health monitoring
Martínez-Costa et al. Ontology Patterns for Clinical Information Modelling.
Helmer et al. A sensor-enhanced health information system to support automatically controlled exercise training of COPD patients
Nan et al. DCCSS: A meta-model for dynamic clinical checklist support systems
CN112397173A (en) Chronic disease cooperative management system for multiple disease categories
Staccini et al. Integration of health care process analysis in the design of a clinical information system: applying to the blood transfusion process.
Zerari et al. Dynamic context-aware Business Process flexibility: an artefact-based approach using process mining
Dang GILBERT: A Reimagined Biomedical Data Storage and Analysis Pipeline
Klein Koerkamp The road from analytical CDSS invention to implementation in healthcare
Das et al. Knowledge-based method for building patient decision-analytic tools

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140709

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160204

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170626

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180620

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 9