Method and system for handling contextual data
Patent Information
- Application Number
- PCT/EP2026/057839
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-21
- Filing Date
- 2026-03-19
- Publication Date
- 2026-09-24
Smart Images

Figure EP2026057839_24092026_PF_FP_ABST
Abstract
Description
[0001] P36761 PCOO / LGO
[0002] Title: METHOD AND SYSTEM FOR HANDLING CONTEXTUAL DATA
[0003] FIELD OF THE INVENTION
[0004] The present development is directed to a system and method for handling contextual data. The data is, for instance, unstructured contextual data, such as medical data.
[0005] BACKGROUND OF THE INVENTION
[0006] Physicians and other medical providers document their clinical encounters with patients in narrative format for most part. While the physicians often follow a semi-structured methodology (i.e., Subjective, Objective, Assessment, Plan), as a general rule the documentation can be regarded as unstructured, i.e. resulting in unstructured data. Most physicians conform to their own style of documentation for each type of assessment made when they encounter the patient. This assessment is made by the physician after examining the patient and coming up with differential diagnoses but potentially also taking into consideration multiple factors such as socio-economics, availability of resources for treatment, etc. However, for different patients with similar assessment the documentation presents small variability and a high degree of repetition.
[0007] US2010017227 relates to computerized and / or automated healthcare clinical scenarios, status or collection of patient information using natural language processing techniques for the reduction of task redundancies in patient documentation for doctors and other health care professionals.
[0008] In addition to structure however, context also matters significantly to enable interpretation of data. Contextual data is the background information that provides a broader understanding of an event, person, or item. This data is used for framing what is known in a larger picture. Many industries use contextual data to get an edge and find unique ways to understand the information which has been collected.
[0009] Context or contextual information is any information about any entity that can be used to effectively reduce the amount of reasoning required (via filtering, aggregation, and inference) for decision making within the scope of a specific application. Contextualisation is then the process of identifying the data relevant to an entity based on the entity's contextual information. Contextualisation can exclude irrelevant data from consideration and has the potential to reduce data from several aspects including volume, velocity, and variety in large-scale data intensive applications.
[0010] In healthcare, context of data may be even more important. Herein, context may impact the correctness of a decision, whereas in healthcare, decisions based on context are the basis of a diagnosis. The accuracy of a diagnosis is, in turn, directly related to the successful outcome of a medical treatment. For instance, when one clinician has observed redness at a part of the skin of a patient and inputs this factual observation in a database system, only the relevant context - such as the redness results from an impact, or on the other hand from a rash, infection or fever - will allow another clinician to subsequently arrive at a correct conclusion and thus to continue with the correct procedure to cure the patient.SNOMED International is a not-for-profit organization that owns, administers and develops SNOMED-CT, the world’s most comprehensive clinical terminology. Systemized Nomenclature of Medicine-Clinical Terms (SNOMED-CT) enables the safe, accurate and effective exchange of health information, which is an essential foundation to improve healthcare around the world. Currently, SNOMED-CT may be regarded as the best set of global standards for health terminology. Herein, SNOMED-CT enables clinicians to store patient information in a structured and contextual manner.
[0011] Nevertheless, in practice, significant human intervention and interpretation of data is required, for instance to avoid errors. Especially when patient data is transferred from one location to another, for instance between hospitals but even from one department to another of the same hospital, the party receiving the data may require significant time and effort to correctly interpret the stored patient data. Different medical equipment, for instance, may use different database systems to store or import patient data. Also, other data sets, such as the ICD-10 data system, may use, at least in part, different terminologies (ICD10Data.com is a free reference website designed for the fast lookup of all current American ICD-10-CM (diagnosis) and ICD-10-PCS (procedure) medical billing codes).
[0012] US2017011183 discloses a system for automated medical decision-making. The system may include a first parser configured to parse text associated with medical information sources to obtain medical information and a second parser configured to parse patient data to obtain processed patient data. A processor, in communication with the first parser and the second parser, is configured to structure the medical information to form structured medical metadata in an intelligent medical database. Based on the structured medical metadata, the processor creates a causal network and receives the patient data from patient data sources. When the patient data is parsed by the second parser and the processed patient data is obtained, the processor maps the processed patient data against the causal network and generates the medical decision for the patient based on the mapping.
[0013] US2023071217 discloses a clinical documentation system. A computer implemented method for managing medical information includes displaying a number of user interface elements within a graphical user interface, receiving medical information for a patient in a first user interface element of the user interface elements, processing the medical information to identify one or more semantic items, the one or more semantic items including a first semantic item, processing a medical record for the patient according to first semantic item, the processing including identifying a number of medical information items related to the first semantic item, and presenting at least some medical information items of the number of medical information items in a second user interface element configured to display medical information items related to the first semantic item.
[0014] US2012278102 discloses techniques for enabling real-time automated interpretation of clinical narratives. The automated interpretation can be achieved by translating narrative text into a clinical terminology-encoded structural representation such as the Systemized Nomenclature of Medicine-Clinical Terms (SNOMED-CT) example of such clinical terminology. The translation process enables the generation of both precoordinated and post-coordinated SNOMED-CT concept expressions.
[0015] The article “A Dual-Store Structure for Knowledge Graphs” by Zhixin Qi et al. as published in the journal of LaTeX class files, Vol. 14, No. 8, proposes a dual-store structure which leverages a graph store to accelerate the complex query process in the relational store. The article proposes a dual storage system, combining benefits of two lines of storage structures for knowledge graphs, i.e.relation-based stores and native graph stores. The physical design as proposed tries to leverage the specific benefits of the two stores. According to the article, for instance, Neo4j is efficient at answering complex queries but has a storage constraint, while MySQL is able to store largescale knowledge graphs. One could say that MySQL is able to store largescale relational data. The system uses a reinforcement-learning-based tuner to determine the triple partitions which are valuable to transfer from the relational store to the graph store.
[0016] The system as proposed in the article, however, still depends on existing storage structures, and therefore only partly resolves their underlying limitations. For instance, the data storage structure is fixed by the storage structure of the two respective stores, such as Neo4j and MySQL in the example provided. The latter still sets limitations on the amount of data or the structure of the data that can be stored and queried. The article herein highlights the limited storage capability of the graph store. The system stores triple partitions, of which one set is stored in the graph store and a second set is stored in the relational store. A relatively complex query processor is required to process queries. Herein, for instance, queries may be divided in sub-queries, and triple partitions may need to be transferred from one store to the other. Within the two data stores, i.e. relational store and graph store, the system still has limitations regarding performance optimization. A striking consequence of these limitations is that this system has not yet found any practical application.
[0017] Although the systems and methods described above provide some important improvements, overall, storing, translating and interpreting contextual (medical) data to allow smooth transfer of the data from one location to another and thereby to allow correct interpretation remains burdensome and - in practice - still requires significant human intervention.
[0018] The problem stated above is expressed rather explicitly in ‘The Representation of Causality and Causation with Ontologies: A Systematic Literature Review’ by Suhila Sawesi, PhD et al. in Online J Public Health Inform [Published online 2022 Sept. 7. doi: 10.5210 / ojphi.v14i1.12577], According to the summary of the article, “we found that causal relationships are represented in ontologies in very heterogeneous ways, and very little attention is being paid to the need to define the causal terminology and concepts employed. Although there are many published medical ontologies that include entities related to causality and causation, we are far from having established an explicit common conceptualization of the causality domain. The diversity and inconsistency in causality representation pose a challenge for the integration and reuse of these existing ontologies.”
[0019] The present disclosure aims to provide an improved system and method to allow storage, interpretation, and transfer of contextual data.
[0020] SUMMARY OF THE INVENTION
[0021] Aspects of the present invention are set out in the accompanying claims.
[0022] The disclosure provides a method for handling contextual data, the method comprising the steps of:
[0023] receiving contextual data comprising one or more data entries;
[0024] using one or more elementary relations to create links between the data entries;
[0025] storing the data entries in a first section of a data storage system; and
[0026] storing the links in a second section of the data storage system.In an embodiment, the step of storing the data entries in the first section includes storing each data entry as a concept.
[0027] In an embodiment, the method includes the step of scanning the first section of the data storage system to check whether any of the one or more data entries are already included.
[0028] If one or more of the data entries are already included in the first section, the step of storing the data entries in the first storage section of the data storage system may comprise mapping said one or more data entries onto the existing data entries.
[0029] If one or more of the data entries is not yet included in the first section, the step of storing the data entries in the first storage section may comprise creating a corresponding new data entry in the first section of the data storage system.
[0030] In an embodiment, the one or more elementary relations comprise one or more of the group of: 'is', 'has-a', 'is-a', 'is attribute of, and 'has as attribute'.
[0031] In an embodiment, the step of using one or more elementary relations to add links between the respective data entries comprises creating all possible relationships between respective data entries of the one or more data entries.
[0032] In an embodiment, the method comprises the steps of:
[0033] providing a query;
[0034] using the query to select corresponding links from the second section;
[0035] using the selected links to retrieve related data entries in the first section.
[0036] In an embodiment, the step of using one or more elementary relations to create links between the data entries comprises combining multiple elementary relations to create a single link.
[0037] In an embodiment, the step of using one or more elementary relations to create links between the data entries comprises:
[0038] using the one or more elementary relations to create a first link between a first data entry and a second data entry in a first field; and
[0039] using the one or more elementary relations to create a second link between the first data entry and a third data entry.
[0040] In an embodiment, the third data entry is related to another context or field than the second data entry.
[0041] According to another aspect, the disclosure provides a system for handling contextual data, the system comprising:
[0042] one or more elementary relations;
[0043] an input module for receiving contextual data comprising one or more data entries, the input module being adapted to create links between the respective data entries using the one or more elementary relations; and
[0044] a data storage system comprising a first section for storing the one or more data entries, and a second section for storing the links.
[0045] In an embodiment, the one or more data entries in the contextual data include at least a set of facts and at least one predicate, wherein the input module is adapted to store each data entry as a concept in the first section.In an embodiment, the input module is adapted to create every possible link between all the respective data entries included in the data, and for storing all links in the second section of the data storage system.
[0046] In an embodiment, the input module is provided with a set of rules indicating where and how to store the respective data entries.
[0047] In an embodiment, the input module is adapted to check whether the respective one or more data entries are already included in the first section.
[0048] BRIEF DESCRIPTION OF THE DRAWINGS
[0049] Reference will be made to the figures on the accompanying drawings. The figures are schematic in nature and may not necessarily be drawn to scale. Similar reference numerals denote similar parts. On the attached drawing sheets:
[0050] Figures 1A to 1C show a schematic view of embodiments of a system of the disclosure including an example of a method to import data;
[0051] Figures 2A to 2D show diagrams exemplifying relations between concepts constructed from one or more basic relations, in accordance with a method of the present disclosure;
[0052] Figures 3 shows a schematic view of an embodiment of a system of the disclosure including an example of a method to respond to a query and output data;
[0053] Figure 4 shows a diagram exemplifying a method to provide a diagnosis using the system and method of the disclosure;
[0054] Figure 5 shows a flow chart exemplifying steps in a medical decision making process including use of the data as stored using the system of the disclosure;
[0055] Figure 6 shows a diagram exemplifying steps to input data in accordance with an embodiment of a method of the disclosure; and
[0056] Figure 7 shows a diagram exemplifying steps to query data in accordance with an embodiment of a method of the disclosure.
[0057] DETAILED DESCRIPTION
[0058] This specification discloses one or more embodiments that incorporate the features of this disclosure. The disclosed embodiment(s) merely exemplify the disclosure. The scope of the disclosure is not limited to the disclosed embodiment(s). The disclosure is defined by the claims appended hereto.
[0059] The embodiment(s) described, and references in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” etc., indicate that the embodiments) described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is understood that it is within the knowledge of one skilled in the art to effect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.It is to be understood that the phraseology or terminology herein is for the purpose of description and not of limitation, such that the terminology or phraseology of the present disclosure is to be interpreted by those skilled in relevant art(s) in light of the teachings herein.
[0060] The term “ontology” as used herein examines what entities have in common and how they are they differ in their distinct properties, dividing them into fundamental classes, known as categories. An ontology thus describes the relationships between different classes of entities. Ontology may include systems of categories aiming to provide a comprehensive inventory of reality, employing categories such as substance, property, relation, state of affairs, and event. A distinction may include, for instance, particular and universal entities. Particulars or instances are unique, non-repeatable entities, like a person. Universals are general, repeatable entities, like the color green. Another contrast is between concrete objects existing in space and time, like a tree, and abstract objects existing outside space and time, like the number 7.
[0061] The term “node” as used herein describes a data point or data entry. The data point may for instance relate to a condition or observation of (part of) a patient, such as coloring, a body part, headache, etc. The data point may for instance relate to a treatment, such as administration of a certain medication, a surgical operation, etc.
[0062] The term “subject” as used herein describes a node which can be regarded as the topic or focus of discussion. The term can be compared to the subject of a sentence expressed in natural language, implemented in software.
[0063] The term “object” as used herein describes a node which can be regarded as the object of discussion. The term can be compared to the object of a sentence. In the context of the present disclosure, the object is typically implemented in software. Referring to the term below, the subject and object are typically defined in relation to a predicate. The predicate typically is a verb. The subject is something about which the predicate indicates something. The object indicates something about the object via the predicate.
[0064] The term “predicate” as used herein describes a connection between a subject and an object. For instance, the subject may be “tumor”, while the subject may be “headache”. The predicate herein may be “causes”, resulting in “tumor causes headache”.
[0065] The terms “relation”, “relationship” or "link" as used herein describe the interaction between respective nodes.
[0066] The terms “edge”, “edges”, or “edge device” as used herein describe a device that provides an entry point into a core network.
[0067] The term “attribute(s)” as used herein describes a specification that defines a property of an object, element, or file. It may also refer to or set the specific value for a given instance of such.
[0068] Attributes may be considered to be metadata. An attribute may be a property of a property.
[0069] The term “concept” as used herein describes an abstract idea that serves as a foundation for more concrete principles, thoughts, and beliefs.
[0070] The term “domain” as used herein refer to a limited set of information. Limited herein may mean that the set of information is self-contained. Examples include the SNOMED-CT terminology, or alternatively the ICD-10 system.The term "query" as used herein relates to a search request. Typically, a search request is entered on an edge device, which can subsequently access a data storage system to obtain results of the respective request.
[0071] Spatially relative terms, such as “beneath,” “below,” “lower,” “above,” “on,” “upper” and the like, may be used herein for ease of description to describe one element or feature’s relationship to another element(s) orfeature(s) as illustrated in the figures. The spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. The apparatus may be otherwise oriented (rotated 90 degrees or at other orientations) and the spatially relative descriptors used herein may likewise be interpreted accordingly.
[0072] The term “about” as used herein indicates the value of a given quantity that can vary based on a particular technology. Based on the particular technology, the term “about” can indicate a value of a given quantity that varies within, for example, 10-30% of the value (e.g., ±10%, ±20%, or ±30% of the value).
[0073] Embodiments of the disclosure may be implemented in hardware, firmware, software, or any combination thereof. Embodiments of the disclosure may also be implemented as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing device). For example, a machine-readable medium may include read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.), and others. Further, firmware, software, routines, and / or instructions may be described herein as performing certain actions.
[0074] However, it should be appreciated that such descriptions are merely for convenience and that such actions in fact result from computing devices, processors, controllers, or other devices executing the firmware, software, routines, instructions, etc., and in doing that may cause actuators or other devices to interact with the physical world.
[0075] Before describing such embodiments in more detail, however, it is instructive to present an example environment in which embodiments of the present disclosure may be implemented.
[0076] Description of conventional medical data and processing thereof
[0077] As outlined in the introductory section above, data such as medical data may typically have to be structured and contextualized to allow operators, such as clinicians, to use the data. Currently, the SNOMED-CT terminology is the best available option to structure medical data, providing a standardized terminology to store data. Such terminology typically relates to measurements and solutions.
[0078] To use the stored data, respective data points must be linked to one another. Conventionally, data may be linked as follows:
[0079] Subject Predicate Object [1]
[0080] Node Relation Node [2]l.e., a first data point can be regarded as the subject, while a second data point can be regarded as the object. Subject and object can be linked using a predicate. Implemented in software, the subject and object are regarded as “nodes”, while the predicate is regarded as a “relation” between respective nodes.
[0081] An example of object, subject, and the respective relation is, for instance:
[0082] Ball hasColor Red [3]
[0083] or:
[0084] Tumor Causes Headache [4]
[0085] Herein, the phrase “color” can be regarded as the parent. The phrase indicating the actual color, such as “red” in example [3] above, can be regarded as the child.
[0086] Another example of an object relating to a subject is:
[0087] Paracetamol Treats Headache [5]
[0088] Herein, the phrase “treats” relates to medication administration. In another example, the object and subject may be linked using a relation such as “surgery” or any other (medical) procedure.
[0089] Thus, medical data storage and processing have evolved. The store data may conventionally be processed using relations. This method can be schematically indicated as:
[0090] Subject Predicate Object
[0091] Node Relation Node
[0092] Concept Relation Concept
[0093] Creating Nodes and Relationships
[0094] Herein below some examples of scripts are provided to indicate how, conventionally, structured medical data may be stored and processed.
[0095] Creating Anatomical Structure Nodes
[0096] CREATE (brain :Anatomy {name: 'Brain'})
[0097] CREATE (frontalLobe:Anatomy {name: 'Frontal Lobe'})
[0098] CREATE (specificRegion:Anatomy {name: 'Specific Region'}).
[0099] Creating Hierarchy Relationships
[0100] CREATE (frontalLobe)-[:PART_OF]->(brain)
[0101] CREATE (specificRegion)-[:PART_OF]->(frontalLobe)
[0102] Creating Brain Tumor Node with Location Property
[0103] CREATE (tumor:BrainTumor{
[0104] id: '12345',
[0105] name: 'Brain Tumor',
[0106] location: 'Specific Region',
[0107] type: 'Glioblastoma',size: '5cm',
[0108] metastasis: 'Stage 2'})
[0109] Creating Symptom Nodes and Relationships
[0110] CREATE (headache:Symptom {name: 'Headache'})
[0111] CREATE (epilepsy:Symptom {name: 'Epilepsy'})
[0112] MATCH (tumor:BrainTumor{id: '12345'})
[0113] CREATE (tumor)-[:CAUSES]->(headache)
[0114] CREATE (tumor)-[:CAUSES]->(epilepsy)
[0115] The above data may typically be stored as follows:
[0116] Concept Relation Concept
[0117] (object) (subject)
[0118] Ball Has color Red
[0119] Green
[0120] Blue
[0121]
[0122] Or
[0123] Concept Relation Concept
[0124] (object) (subject)
[0125] Tumor causes Headache
[0126] Fatigue
[0127] Swelling
[0128]
[0129] l.e., conventionally, phrases such as “ball”, “green”, “red”, “tumor”, “headache”, “fatigue” are stored as concepts. Phrases such as “has color” and “causes” are stored as a relationship.
[0130] Relationships are used to link respective concepts. This may result in sentences, such as: Ball (Subject) has color (predicate) red (object); or Tumor (Subject) causes (predicate) Headache (object).
[0131] The respective concepts are typically stored in a two-dimensional format, similar to typical database structures, wherein each concept is stored in a column and thereby linked to the header of the respective column. In the examples above, the term "tumor" may for instance be stored in a column having a header such as "medical condition". The terms "headache", "fatigue" and "swelling" may be stored in another column having a header such as "symptoms".
[0132] As described in the introductory section above, in practice, this way of storing information often results in problems. For example, typically a first (medical) system stores and processes information in a different manner than a second system. As a consequence, the way of storing the information may result in errors when querying the stored data from another system, when said other system uses a different data structuring method. The latter typically requires human intervention and causes (significant) delay.Description of embodiments of the disclosure
[0133] Generally referring to Figure 1A, a system 1 comprises a data storage system 2. The data storage system can be accessed via at least one edge device 4. The data storage system 2 may comprise any conceivable data storage means, including but not limited to a memory, hard drive, a server, data carrier, cd rom, etc. The at least one edge device may comprise, but is not limited to, a computer, a control unit, a smart phone, a medical device, a measurement device, etc.
[0134] The edge device 4 can store data 6 in the storage system 2. In a medical context, the data 6 is typically obtained via and input according to a certain medical procedure and / or medical intervention.
[0135] As shown in Figure 1 A, the edge device 4 may be a generic computer. The edge device 4 may be any other computer controlled device. As exemplified in Figure 1 B, the edge device may be a medical device, for example a CT Scanner.
[0136] The edge device 4 may be provided with a translation module 7. The translation module 7 enables the data 6 to be input in, for instance, a first language or first data format, while being translated into and transferred to the system 1 of the disclosure in a predetermined second language or data format. Herein, language may relate to actual language, such as English, Spanish, French, Chinese. The translation module 7 enables, for instance, a Spanish medic to communicate and input data in Spanish, while the data 6 will be translated to, for instance, English. Language may also include, for instance, the SNOMED-CT terminology. Data format may relate to, for instance, a certain first data format while the translation module translates the data 6 to a selected second data format. Data format herein may relate to a data format storage system such as ICD-10. The translation module 7 may typically be implemented on local software or hardware related to, operating or installed on the edge device 4.
[0137] The system 1 of the disclosure comprises an input module 8. The input module 8 receives (potentially translated) data 9 from the edge device. The input module 8 stores said data 9 in the storage system 2, in accordance with a method of the present disclosure.
[0138] The input module 8 may include a set of basic relations or elementary relations 10. The elementary relations 10 may include a relatively limited set of instructions, indicating links between respective data entries. The elementary relations may include, for instance, up 30, down 32, left 34, right 36 (see Fig. 2A). The elementary relations 10 may include, for instance: ‘has a’ (comprises, or 'is parent of), ‘is a’ (is comprised in, or 'is child of), ‘is attribute of, and ‘has as attribute’.
[0139] In a practical embodiment, the four elementary relations as indicated herein above may be the only elementary relations. In another embodiment, the system may include only a single elementary relation (details are provided herein below).
[0140] The input module 8 may include a set of rules 12. The rules, for instance, describe where or how data entries included in the data 40 have to be stored in the data storage system 2. The latter may include one or more of which row, and which column.
[0141] The data storage system 2 may include a first section 14, for storing respective data entries as provided by the edge device 4.
[0142] The data storage system 2 may include a second section 15 for storing relations 17 between the respective data entries in the first section 14. The relations 17 are typically created using a methodof the present disclosure. The second section 15 may be referred to as a linking table. Basically, the relations 17 stored in the second section 15 link respective data entries in the first section 14 to one another. Said links or relations 17 may basically include a three-part structures (subject - predicate -object), such as "data entry x" "is_a" "data entry y".
[0143] As the phrase "is_a" is stored as a node, and all other data entries are also nodes, the links 17 may include three numbers or addresses (for example, x-y-z), which basically enable to form subject -predicate - object like sentences.
[0144] Generally referring to Figure 1C, in another practical embodiment, the elementary relations 10 may include only a single relation. Said single relation may be, for instance, "is", "is_a", ">", or "comprises". Herein, said single elementary relation may be directed from one data entry to another. The same entry can be used to direct the opposite direction, or up, or down, i.e. from any one data entry to any other data entry.
[0145] Thus, only a single elementary relation is required, at the bare minimum. In other words, by changing the direction of the elementary relation, said single relation can express both "comprises" and "is comprised in". By directing the single elementary relation up of down, the single elementary relation can be used to express "is parent of or "is child of (which is the reverse of 'parent of).
[0146] In the embodiment shown in Figure 1C, the one or more elementary relations 10 can be stored in the first section 14 of the data storage system 2. At the start of operation, the first section 14 may only comprise a single, first data entry 16, comprising a single element relation 10. Also, the linking table 15 can be empty. Upon start of operation, data will be stored in the first and second sections 14, 15 of the data storage system 2 in accordance with the method as described below.
[0147] In a method of storing data or contextual information according to the present disclosure, the input module 8 adds one or more relations or links 17 between the respective data entries to the data 9 as provided by the edge device 4. Said relations 17 are constructed using the elementary relations 10.
[0148] Herein, each data entry in the data 9 as provided by the edge device is treated as a node, and stored in the first section 14 of the data storage system 2. Any data entry, such as 16, 18, 20 and 22, included in the data 6 is stored in the storage system 2 as a ‘concept’. This enables each data entry to be regarded as a ‘node’. The latter includes data entries which conventionally may have been regarded (and stored) as a ‘relation’. For example, for a sentence such as "ball" "hascolor" "red", each data entry, including "hascolor" , may be stored as a node.
[0149] Generally referring to Figures 2Ato 2D, in an embodiment, elementary relations 10 may be combined to create relations or links 17 between respective data entries. Thus, the limited set of elementary relations 10 allows to create relations between respective data entries in the data 9. The relations thus created can exceed a typical domain. A domain herein may related to, for instance, a certain medical condition or (at the most basic level), the color red. The latter (the color red) may have been entered in the system while being linked to a certain condition (for instance, the color of the skin, or the color of an object). The system and method of the present disclosure allow and enable to exceed these limited initial relations, as described below. Upon querying the stored data, as will be explained later below, this provides significant advantages and flexibility. Please note that for simplicity, the Figures 2A to 2D show a matrix structure. In a practical embodiment however, a more complex and hierarchical structure can be created.Generally referring to Figure 2A, in a basic form, a first data entry 16 may have only basic relations 30, 32, 34, 36 to respective data entries above, below, and next to the respective data entry. In medical terms, for instance, this is limited to basic version, wherein the data entry 16 is the child of the data point 50 above, the data entry 16 is the parent of the data point 52 below, herein the data entry 16 is part of the data point 54 to its left side, and comprises the data point 56 to its right side. Herein, the corresponding relations 17 basically correspond to one of the basic relations 10.
[0150] As shown in Figure 2A, a first data entry 16 may have relations to data entries right next to it. These relations may include 'parent of or 'has_a' (down), 'child of or 'is_a' (up), 'has as attribute', and 'is an attribute of (indicating sideways, not hierarchical). However, the relations may exceed beyond adjacent data entries, and extend to any other layer (for instance, parent, grand parent, child, child-of-child, attribute-of-attribute, etc.).
[0151] Generally referring to Figure 2B, the first data entry 16 may also relate to a second data entry 58. Herein, the relation 17 between the first data entry 16 and the second data entry 58 may be comprised of a combination of basic relations 10. In the example of Figure 2B, the first data entry 16 relates to the second data entry 58 via two basic relations 36 pointing towards the right ('attribute), and one basic relations 30 pointing upwards ('child of). The system 2 herein will store relations 17, including both the basic relations between the mutual data entries 16, 56, 58 and 60, as well as the combined relation (i.e. the relation 17 comprised between the first and second data entries 16, 58 comprised of a combination of basic relations 10) linking first data entry 16 to the second data entry 58.
[0152] Any other iteration or combination of basic relationships 10 is conceivable. Herein, the rules 12 may define limits to levels of domain exceeding relations 17 to be stored, for instance to limit data storage requirements. For instance, generally referring to Figure 2C, the first data entry 16 may, for instance, be linked directly via basic relation 36 to a third data entry 62. Said third data entry 62 may be relatively remote from the first data entry. For instance, whereas first data entry 16 may be a person (for instance, 'Marc'), Marc may have a body, which has two arms, which have hands, which have fingers. Herein, Marc may be directly linked to the 'fingers' using only a single basic relation.
[0153] Generally referring to Figure 2D, the first data entry 16 may, for instance, be linked via basic relation 36 to a certain data entry 60, which in turn is linked via another basic relation 32 to a fourth data entry 64. Herein, both the data entry 60 and the fourth data entry 64 may be relatively remote from the first data entry, wherein relatively remote relates to domain exceeding relations between data entries, as described above.
[0154] Thus, as exemplified in Figures 2A to 2D, the system 2 of the disclosure can create relations 17 between data entries in different layers, wherein layers may be adjacent to a respective data entry or, instead, may exceed multiple layers. Referring to Figure 1 , for instance, the first data entry 16, in the 3rd layer in Fig. 1 A, may be the child of another data entry 22, included in the 5th layer in Fig. 1 A. Alternatively, the relations may include stepped relations (such as parent-of-parent relations).
[0155] The respective relations 17 are stored in the second section 15 of the data storage system 2. See arrow 40.
[0156] In a second step, see arrow 42, the input module 8 checks whether respective data entries included in the data 9 are already included in the first section 14 of the storage system 2.In a subsequent step, see arrow 44, the input module stores the data in the data storage system, as follows.
[0157] If a data entry in the data 9 is already included in the data stored in the first section 14 of the data storage system 2, the respective data entry is mapped onto the existing data. For instance, if a patient (for example, Marc, represented by the first data entry 16) is a man, and the data entry 'man' already exists (for example, a fifth data entry 18 in Fig. 1A may represent 'man'), the system will not duplicate the entry 'man'. Instead, the system will link the new entry 'Marc' (data entry 16) to the existing data entry 'man' (data entry 18). Nevertheless, a new relation 17 will be stored in the second section 15, linking the respective data entries 16 and 18. See arrow 40.
[0158] The above implies that a data entry which already exists will be pasted onto the existing data entry. For instance, an entry such as "red" (whether relating to "color" and "ball", or "color" and "skin") will be stored as a single data entry. Yet, the newly created relations 17 are stored as well. Said relations link the respective data entry (such as "red") to the respective context, made up of other data entries (such as "color" and "ball", or "color" and "skin").
[0159] On the other hand, if the data entry is new, i.e. is not yet included in the data in the first section 14, the system 1 will create a new entry in the first section 14. For instance, if 'Marc' (data entry 16) identifies not as a man or a woman, but as something else, that particular something else may be stored as provided, i.e. as is. Herein, the system can create a new data entry 24. The respective relation 17 between the new data entry 24 and the first data entry 16 will be stored in the second section 15.
[0160] Please note that the above also includes, for instance, typographical errors or translation errors. I.e., if the data 9 as provided by the edge device 4 includes erroneous information (for instance, the name 'Marc' is mis-spelled), the system will create a new data entry. Herein, on one hand, the system provides great flexibility, while allowing for a certain amount of contamination of the stored data by erroneous data entries. However, when using the system of the disclosure, these erroneous entries will also show up in data output relatively quickly and comprehensively. The latter allows operators to quickly note erroneous data entries which in turn allows appropriate correction.
[0161] Compared to conventional systems, the system 1 of the disclosure limits the number of data entries in the first section 14 of the data storage system 2, while adding the second section 15 including all the newly generated links between the respective data entries. In conventional systems, data entries remain, are stored in, specific domains of the respective data entry. In the system of the present disclosure, data entries can be related to more than one domain. The latter enables the system of the disclosure to integrate multiple domains. In other words, the system enables to remove separation between domains.
[0162] Generally referring to Figure 1C, upon start of use of the system 1 , the first data storage section 14 may include at least a first data entry 16. Said first data entry 16 may include a basic relation 10, such as "is" or"is_a".
[0163] Upon start of use of the system 1 , for each data input 9, the input module 8 will check whether a data entry is already included in the first section 14. If not, the system will create a new data point in the first section 14, including said data entry.
[0164] Referring to Figure 6, in a flow diagram, a method of entering data may include the steps of:Step 200: input data 9 (typically using a suitable edge device 4);
[0165] Step 202: receive said data 9 using the input module 8;
[0166] Step 204: for each data entry included in the data 9, check whether the respective data entry is already included in the data as stored in the first data storage section 14;
[0167] Step 206: If the answer to step 204 is no (N), use the respective data entry to create a new data entry in the first data storage section 14. If the answer to step 204 is yes (Y), do nothing. The latter may include mapping the respective data entry onto the existing data entry;
[0168] Step 208: repeat step 204 for each data entry included in the data 9. Step 208 basically asks whether there are any further data entries in the data 9 which need to be checked? If yes (Y), go back to step 204. If no (N), proceed to step 210;
[0169] Step 210: create one or more links or relations between the data entries as stored in the first data storage section 14 based on the data 9. In a practical embodiment, this step includes creating all potential links (see the next section below for details);
[0170] Step 220: Store the links or relations 17 as created in step 210 in the second data storage section 15 (the linking table);
[0171] Step 222: End.
[0172] With respect to the step 210 of creating links between data entries, the following examples indicate how the system creates said links, and which links are created.
[0173] As a first example, lets assume that the data input 9 includes:
[0174] Person Gender
[0175] Marc is a Man
[0176] Upon receiving the data input above, the system 1 will, in step 210, perform the following lines or steps, checking with respect to data included in the first data storage section 14:
[0177] 1. Does "Person" exist? If yes: Do nothing If no: Create "Person" (in section 14)
[0178] 2. Does "Gender" exist? If yes: Do nothing If no: Create "Gender" (in section 14) and
[0179] Create "Person" > "Gender" (in linking table 15);
[0180] Create "Gender" < "Person" (in linking table 15);
[0181] 3. Does "Marc" exist? If yes: Do nothing If no: Create "Marc" (in section 14);
[0182] and
[0183] Create "Marc" < "Person" (in linking table 15);
[0184] Create "Person" > "Marc" (in linking table 15).
[0185] 4. Does "is_a" exist? If yes: Do nothing If no: Create "is_a" (in section 14);
[0186] and
[0187] Create "Marc" < "is_a" (in linking table 15);Create "is_a" > "Marc" (in linking table 15).
[0188] 5. Does "Man" exist? If yes: Do nothing If no: Create "Man" (in section 14) and
[0189] Create "is_a" < "Man" (in linking table 15);
[0190] Create "Man" > "is_a" (in linking table 15);
[0191] Create "Marc" < "is_a" (in linking table 15);
[0192] Create "is_a" > "Marc" (in linking table 15).
[0193] Although more links may be created than exemplified above, the above indicates how (see Figure 1C) based on the data input 9, the first data storage section 14 will start to fill with data entries. The linking table 15 will store all links between respective data entries as created, enabling the data in the first section 14 to be queried (as explained herein below). Please note that the indicator ">" is a generic elementary relation, which in the example above can have the meaning of, for instance, both an "is_a" or "has_a" relation.
[0194] In a second example, the data input 9 may include:
[0195] Person has_a Hair color
[0196] Marc Brown
[0197] Upon receiving the data input above, the system 1 will, in step 210, perform the following lines or steps, checking with respect to data included in the first data storage section 14:
[0198] 1. Does "Person" exist? If yes: Do nothing If no: Create "Person" (in section 14) 2. Does "Hair color" exist? If yes: Do nothing If no: Create "Hair color" (in section 14) and
[0199] Create "Person > Hair color" (in linking table 15);
[0200] Create " Hair color < Person" (in linking table 15);
[0201] 3. Does "Marc" exist? If yes: Do nothing If no: Create "Marc" (in section 14);
[0202] and
[0203] Create "Marc" < "Person" (in linking table 15);
[0204] Create "Person" > "Marc" (in linking table 15);
[0205] Create "Marc" > "Hair color" (in linking table 15);
[0206] Create "Hair color" < "Marc" (in linking table 15).
[0207] 4. Does "has_a" exist? If yes: Do nothing If no: Create "has_a" (in section 14); and
[0208] Create "Person" > "has_a" (in linking table 15);
[0209] Create "has_a" < "Person" (in linking table 15);
[0210] Create "Hair color" < "has_a" (in linking table 15);Create "has_a" > Hair color" (in linking table 15);
[0211] Create "Person" > "Hair color" (in linking table 15);
[0212] Create "Hair color" < "Person" (in linking table 15).
[0213] 5. Does "Brown" exist? If yes: Do nothing If no: Create "Brown" (in section 14) and
[0214] Create "Hair color" > "Brown" (in linking table 15);
[0215] Create "Brown" > "Hair color" (in linking table 15);
[0216] Create "Marc" > "Hair color" and "Brown" (in linking table 15);
[0217] Create "Brown" < "Hair color" and "Marc" (in linking table 15).
[0218] The above leads to a substantially limitless amount of links between respective data entries in the first data storage section 14. This is a stark contrast with conventional methods, wherein data is typically stored in a two-dimensional database type structure, linking respective data entries in a certain database column to (only) the header of the respective column.
[0219] According to the method of the disclosure, the data is substantially modelled in a manner unlimited by a certain fixed data structure or unlimited by the way in which the data is stored. Or, alternatively worded, the modelling of data is generic and flexible, independent of the structure of the data storage. The latter renders the data modelling multi-dimensional.
[0220] Although data may be stored in accordance with a selected data storage method (which may be any available data storage method available, for instance a standardized storage method for medical data), the data entries as stored in the first data storage section lack structure perse. For instance, said data entries are not bound by a certain column or row of data. Accessing the data in the first storage section 14 directly, therefore, would lack structure or sense. The links 17 as added to the data input by the system and method of the disclosure influence the structure of data as stored in the storage system 2. It may be contemplated that the system and method of the disclosure allow a substantially flexible data structure of the stored data. Herein, upon entry or addition of new links 17, the structure of the stored data may change as well. As an example, unlike a fixed data structure (comprising, for instance, a data structure limited to two columns each with a fixed header, such as 'name' and 'gender'), the method and system of the disclosure enable to add a virtually unlimited number of additional links. In effect, the links thereby may influence and change the structure of the stored data.
[0221] The virtually unlimited amount of links 17 between respective data entries as created and stored in the second data storage section 15 allow to query (search), retrieve, and add meaning and structure to the data as stored in the first section 14. One may say that data entries are defined by their respective attributes or links. These links are, as explained above, added by the system of the disclosure upon input and storage of the data.
[0222] The data as stored in the data storage system 2 in accordance with the method and system of the disclosure enables to create new relations. Unlike conventional systems based on fixed data structures, the new relations can be created without having to change the programming code.For instance, assuming that only a definition of 'siblings' is available in the system. An operator wants to extract 'brothers' or 'sisters'. The sibling relationship is a structure relationship (coded). The system of the disclosure however enables to create a variant of the existing 'siblings' relation. For example, one can derive 'brother' from the stored data by querying: 'brother' is 'sibling' plus 'sex' = 'man'. The latter also enables to derive 'sisters' in a similar manner. And this type of querying can be applied to both people and animals.
[0223] A more complicated example would be 'cousin', 'niece' or 'nephew'. Herein, a cousin is the child of your parent's sibling, while a nephew is the son of your brother or sister. Essentially, cousins are from the same generation, whereas nephews are from the next generation down.
[0224] Referring to Figures 2A to 2D, finding a cousin may involve two up, then down, but not to the same and then down again. I.e., up to the parent, then to siblings of the parent, then to children of said siblings. Finding a niece or nephew may involve sideways, then down, then filter on gender. I.e., to siblings of a person, then to children of said siblings, then add 'male or 'female'.
[0225] Thus, whatever the structure of the stored data is, the system and method of the present disclosure enable to interpret the stored data flexibly, and find interrelated data entries based on relations which may not yet have been included in the stored data or in the system. Herein, it may be possible to find the cousins, nieces and nephews of a person. The system of the disclosure also enables to search for a substantially unlimited number of other such relationships, query the stored data, provide the corresponding output, and materialize the new relations by storing them in the data storage system.
[0226] In effect, the flexibility of the structure of the stored data enables a virtually unlimited number of new relations to be defined or created. The above may be referred to as a bi-directionality between relations (between data entries) and structure (of the stored data). Said bi-directionality is available independent of the complexity of the structure, and also functions in the same way and with a similar efficiency for a relatively complex data structure.
[0227] Generally referring to Figure 3, the data stored in the data storage system 2 can be queried. Herein, see arrow 70, typically an operator enters a data query in a particular edge device 4, which sends the request to the system 1 of the disclosure.
[0228] Subsequently, the input module 8 forwards the request to the second section 15 of the data storage. Herein, the input module retrieves those relations 17, as stored in the second section 15, which relate to the respective query.
[0229] In a next step, the relations 17 as retrieved from the second section 15 are used to retrieve related data entries from the first storage section 14. Herein, the input module 8 may contact the first section 14 and use the retrieved relations 17 to obtain the related data entries from the first data storage section 14. See arrow 74. Upon data import the method includes a loop using existing or unknown relations or links. If links do not yet exist, the method will create them.
[0230] The respective relations 17 refer to respective data entries stored in the first section 14. As mentioned before, all data entries in the first section 14 are stored as nodes, and as such can be used at any position and in any combination with another data entry. Hence the depiction of data entries in a three-dimensional grid, in Figures 1A and 3, to schematically indicate how data entries can be used. Examples are provided herein below.Compared to conventional systems for storing contextual data, the process of querying is significantly faster. Significantly faster herein means, for instance, seconds or even milli-seconds rather than minutes. Also, the output as provided obviates further adaptation, and can be readily processed by the respective edge device and its operator.
[0231] Generally referring to the flow diagram of Figure 7, a method of querying data in the system 1 may include the steps of:
[0232] Step 240: input query (typically using a suitable edge device 4);
[0233] Step 242: receive the query at the input module 8;
[0234] Step 244: using the query to search the linking table, stored in the second data storage section 15, to retrieve links or relations 17 relating to the query;
[0235] Step 246: using the links 17 as obtained in step 244 to retrieve corresponding data entries from the first storage section 14;
[0236] Step 248: create sentences using the data entries as retrieved from the first storage section 14 (in step 246) and using the corresponding relations 17 (as retrieved in step 244);
[0237] Step 250: output the respective sentences. The latter may include, for instance, displaying said sentences on the edge device 4.
[0238] The data search request 70 may include a query, such as "provide all relations of data entry 16 with respect to one of its up I down I left I or right data entries". As an example, the data query 70 may be provided by the edge device 4 as: "provide all parents of data entry 16". Or, "provide all children of data entry 16". Or, "provide all parents of the parents of the data entry 16". The latter is an example wherein multiple elementary relations 10 are combined in a single query. This is typically impossible in contextual data as stored using conventional systems.
[0239] The searching process as exemplified above enables the system 1 of the disclosure to rapidly search and query stored data. The latter comes at the expense of slightly more effort upon storing the data entries, as the respective links 17 build from available elementary relations need to be created and stored. However, the penalty for uploading is relatively minor (in the system of the present disclosure), whereas the benefit in querying is very significant (with respect to conventional systems). For instance, whereas conventional systems may not even allow or enable certain queries, the system and method of the disclosure enable utmost flexibility to query the data and provide respective responses. Also, the response is typically obtained relatively fast, typically within (milli)seconds. The system and method of the present disclosure significantly improve flexibility in the options to query the stored data, as basically the elementary relations 10 can be combined in any way conceivable or useful to query the data, as depicted schematically in Figures 2A to 2D.
[0240] The table below provides an example of concepts as stored in the first data storage section 14 using the method and system of the present disclosure:
[0241] Concepts
[0242] Hair
[0243] Color
[0244] RedBrown
[0245] Black
[0246] Herein, forsake of simplicity and overview, the above is a very limited example. In practice, each respective entry will be part of a set of entries. In addition to "Hair", many different items may be included. In addition to ‘red’ and 'brown', each potentially relevant color may be stored. Et cetera. Each data entry in the first storage section 14 is typically stored as a ‘concept’.
[0247] A method of the present disclosure may include steps to process the information stored as outlined above. I.e., the information or conceptual data has been stored (in accordance with the description relating to Figures 1 A and 1 B). Each data entry in the data 9 as provided is regarded and stored as a concept. Thus, each concept can be used as a node by subsequent (edge) systems and in queries.
[0248] Generally referring to Figure 4, in use, the system and method of the present disclosure may involve the following steps. In a first step, facts 80 are gathered. The facts 80 may be obtained, for instance, from a patient presenting a medical condition to a physician. Thus, the facts 80 may, for instance, include any data points of potential interest, such as name, age, gender, body temperature (e.g. 38.5 degree C), body mass, headache, result of impact (yes I no), way of living, perceived stress level, job, etc.
[0249] All the facts 80 are subsequently provided to an appropriate edge device 4, potentially translated (using a translation module 7, see Fig. 1A), and provided as data 9 to the input module 8 of the system 1. The input module stores the data in the storage system 2 as described with respect to Fig. 1A.
[0250] Fordownstream use, such as trying to provide a diagnosis and / or treatment by another physician, the data stored in the storage system 2 is accessed. A first or generative processing unit 82 may access the stored data (as described with respect to Figure 3). The generative processing unit 82 may provide two conditions, Condition 1 (82) and Condition 2 (84) potentially affecting the patient. Subsequently, and optionally, a second or predictive processing unit 88 may review the two potential conditions 84, 86 as provided by the first processing unit 82. The second processing unit 88 may, for instance, provide an estimate of probability of one of the respective conditions being the condition actually affecting the patient.
[0251] Figure 5 generally indicates steps in clinical decision making. All of the steps herein may be assisted by and may benefit from the method and system of the present disclosure. Figure 5 displays an exemplary clinician 100, who is assisted by a computer system 102. The computer system 102 may include the system 1 of the present disclosure, i.e. the system 1 can be implemented on, or be accessible via, the computer system 102.
[0252] The steps typically followed by the clinician include:
[0253] Level 1 : Clinical decision support (110).
[0254] Level 2: Operational decision support (112).
[0255] Level 3: Execution support (114).
[0256] Level 4: Device execution (116).The steps above involve:
[0257] Identify the available options and make a clinical decision (120).
[0258] Translate the decision into a sequence of tasks, processing (122).
[0259] Translate one task into a sequence of steps, create a workflow (124).
[0260] Execute the sequence of steps, execute the workflow (126).
[0261] The above, as displayed in Figure 5, provides a generic example of a human-driven clinical workflow. Herein, the computer system 102 and the clinician 100 (i.e., a human) work hand in glove to arrive at an optimal result. Herein, the system and method of the present disclosure enable the human to optimize and at the same time accelerate the procedure.
[0262] Example of system and method of invention
[0263] According to the system and method of the disclosure, concepts are defined by their relationship to other concepts. A certain starting point must be selected. The latter may be referred to as a code system, or smaller, as an axis. Synonyms or descriptions for some concepts may be needed to enable to interpret the structure for humans (i.e., for the purpose of human-computer communication). But for the computer system, the definition of concepts results from the relationships between respective concepts.
[0264] Conventionally, one may reason that in a knowledge graph this is always the case. The relations denote the concepts. But that is not actually true, because conventionally, the relations themselves cannot be accessed as a code system (so they are not concepts).
[0265] Provided below is an example, based on a family tree, showing basic “is a” relations, enabling to define other relations. The definition of relation, as entered in the edge device, is a relation definition which in the system of the disclosure is stored and used as a concept. This allows relations of other concepts.
[0266] Relationships in the system 1 of the present disclosure may comprise multiple triples. Certain structures of triples can be given their own name, which can then be referred to and are usable in other (edge) systems.
[0267] An example is “brothers” and “sisters.” In a “Family Tree” code system (such as included in the ECL extensions), a brother or sister may be defined as a male or female child of your father or your mother except yourself. The generic term 'sibling', as used in English, may be defined as any child of one of your parents except yourself. This definition is re-usable, as the concept of siblings can be used generically within the system of the disclosure. The structure of the respective relationship (one up, and all one down except yourself) is thus a relationship comprised of multiple other relationships (i.e., it is a conglomerate of triples). The respective conglomerate provides a reusable concept across code systems. The latter goes beyond family, and is part of the system of the present disclosure. The above has far-reaching implications, as outlined below.
[0268] 1) Simplification of data import
[0269] Importing data using the system of the present disclosure is relatively simple. For instance, using only a limited set of rules 12 (for instance, what is stored in a column and what in a row, and what is stored in a cell). The system of the present disclosure can recognize and create structuralrelationships 17 between respective data entries automatically. Because relationships included in the input data 9 are also defined by relationships 17 to other data.
[0270] For instance, the elementary relations 10 (such as one or more of: 'is', 'has', 'is_a', 'has_a', 'is_attribute_of, 'has_as_attribute') can be included as basic linguistic relations in the system of the present disclosure to facilitate this technically.
[0271] The system of the disclosure provides unity of language at a basic level. The basic linguistic relations mentioned (the elementary relations 10) are the same everywhere in the system 1. Namely, they are the basic structures for building the links or relationships 17 between data entries. As such, the elementary relationships 10 also define each concept in the first section 14, by linking said concept to other concepts and thereby contextually defining the respective concept
[0272] Using the elementary relationships 10, a vast array of links 17 can be constructed. The latter may include, for instance, parents, children, (all) ancestors, (all) descendants. The definition of concepts results from the relationships between respective concepts. The system 1 of the disclosure enables a virtually unlimited number of relations to be defined, greatly increasing the flexibility and options to query, and thereby use, the data (see for example the definition of siblings or 'parents-of-pa rents').
[0273] The unity of language at the very basic level is a significant improvement. The system of the disclosure provides a basic linking language, which is separate from the language actually used within a more content-specific domain. In other words, the data stored in the system of the disclosure is thus separate from the data, and from the synonyms or description thereof. The system of the disclosure enables to describe a domain-specific structure (such as SNOMED-CT) using the elementary relations 10, wherein newly created links or relations 17 are constructed out of the elementary relations 10. The latter provides a significant improvement, i.e. the relation between data entries does not have to be captured in code, but can be captured in a data structure of elementary relations 10.
[0274] Inheritance of properties follows from the type of relationship. Because the system of the disclosure determines the place of a data entry in an ontological structure using the elementary relations 10, inheritance is clear.
[0275] In addition, while the data as stored in the first section 14 may seem relatively unstructured, the linking table 15 still enables to determine the exact position of a specific concept (i.e., a data entry in the first section 14) due to its links or relations 17 to other concepts. The system 1 of the disclosure thus enables exact positioning of contextual data, a significant improvement. The system 1 thus enables to create a system of inheritance that can actually work across domains (such as read code systems, SNOMED-CT, ICD-10, etc.). In the system of the disclosure, concepts as stored become similar to value-sets and code-maps, so just specific instances. Their position is defined using (additional) generic relationships while retaining functionality such as navigation and inheritance.
[0276] The system 1 provides cross-domain capabilities while retaining navigation and inheritance. For instance, an ancestor definition is less specific, descendants are more specific, the position of a concept in ontology depends on relations, rendering the latter dynamic. Another way of saying the latter is, the system of the disclosure enables relations between concepts to be dynamic.
[0277] The system 1 of the disclosure constructs the relations 17 between data entries using elementary relations 10. The system 1 provides a relative ontological placement of data entries, ratherthan an absolute placement. Because the method of inheritance is generic, the system 1 obviates attaching an absolute position to a respective concept or data entry. In the system 1 of the disclosure, concepts as stored in the first section 14 do not need, and in a practical embodiment do not have, an absolute place definition. Only the elementary relationships 10 and the elementary rules 12 may have a specific position. As a consequence, the system 1 of the disclosure can also deal with concepts that may have, or are regarded as having, an ambiguous definition.
[0278] Indeed, it is tempting to think that with the system 1 of the disclosure, it becomes possible to get all relationships deterministic within a single system. However, probably there are plenty of concepts that may not be entirely suitable for a specific, deterministic definition. One example is love, and another example is, for instance, a game. Philosophers and linguists often give the latter as an example of a concept that cannot be conclusively defined. If one defines a game too narrowly, for instance only a single game (such as Monopoly) may be regarded as 'a game'. If one defined 'game' too broadly, every interaction between people may be regarded as a game. The latter does not mean that the word 'game' is a useless concept. The word game is used to quickly interpret certain relationships of a collaboration. The latter can only work well in a system that assumes no absolute positioning, such as the system 1 of the present disclosure.
[0279] The system 1 defines relationships by their structure. This makes it possible to compute them ad hoc, but also to consolidate them ex ante for efficiency. As mentioned earlier, the system 1 allows to re-use relationships across different code systems.
[0280] The above can be elucidated using two medical examples:
[0281] 1) Family: two definitions
[0282] In the medical domain, one may regularly come across two different types of family: biological (genetic) and social. The latter involves all kinds of complicated aspects and people, such as stepfathers, in-laws, etc., which may be excluded from the other definition (which is purely based on genetic relationship). Thus, social family may include - due to divorces, among other things - temporary relationships that genetically have no relevance. The system 1 of the disclosure enables to re-use the genetic definitions of 'siblings', 'brother', 'sister' in the social family definitions, which allows interoperability (unity of language) between both systems.
[0283] 2) Using siblings as elementary navigation.
[0284] When you have a system of protocols, with many medical protocols, it is sometimes difficult to find the right protocol. This difficulty of finding the correct protocol may be exacerbated by time pressure. For instance, consider Cardiopulmonary Resuscitation (CPR). In addition to a basic protocol for CPR, there are related protocols that may also be relevant. Conventional systems may have required to look up all these protocols. The system of the present disclosure however allows to simply query the stored data and ask for all the siblings of the CPR protocol. The output of the system will immediately show the related protocols.
[0285] The present disclosure basically provides a simplified yet robust method and system to store, process, and query information. The method and system enable to use the stored information to create ‘sentences’ using object, subject, and interdependencies (relation), irrespective of the (end user) system used to input the data, the system using the information, and irrespective of the particular data storage and processing method used by the respective systems. The method and system of thedisclosure enable to store contextual data obtained from one system and use said information by another system, obviating errors and significantly speeding up querying the stored data. The system and method are simple yet effective, thereby significantly accelerating data processing and transfer.
[0286] For instance, data storage using the method of the disclosure may require slightly more time than conventional methods, as some of the basic relations need to be added to the data as input via the respective edge device. However, the method and system of the disclosure enable to access the data significantly faster than conventional systems. Significantly herein may mean, for instance, that a query with respect to the stored data can provide a result within a matter of seconds (1 to 10 seconds). For comparison, conventionally, a query may typically have taken minutes if not hours (if human intervention was required) to provide a result. In addition, query results obtained using the method and system of the disclosure typically obviate (human introduced) errors, and are therefore, on average, more accurate than conventional systems.
[0287] Whereas contextual information and the handling thereof, and in particular medical information, conventionally limits its use. In a medical context, the use of standardized terminology, for instance using SNOMED-CT, is in practice relatively limited. The method and system of the present disclosure however vastly simplify and therefore enable standardized storage and processing of contextual information.
[0288] The method and system as exemplified above is mostly described with respect to medical contextual information. However, the method and system are equally applicable for handling other types of contextual information. Examples may include, but are not limited to, information related to psychology, politics, tax, (international) transport, (international) logistics, etc.
[0289] The scope of the present disclosure is not limited to the embodiments described above. Many modifications therein are conceivable without deviating from the scope of the present invention as defined by the appended claims. In particular, combinations of features of respective embodiments or aspects of the disclosure can be made. An aspect of the invention may be further advantageously enhanced by adding a feature that was described in relation to another aspect of the invention. While the present invention has been illustrated and described in detail with reference to the figures, such illustration and description are illustrative or exemplary only.
[0290] In the claims, the word “comprising” does not exclude other steps or elements, and “a” or “an” does not exclude a plurality. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. Any reference numerals in the claims should not be construed as limiting the scope of the present invention.
Claims
- 24 -CLAIMS1. A method for handling contextual data (9), the method comprising the steps of: receiving contextual data (9) comprising one or more data entries;using one or more elementary relations (10) to create links (17) between the data entries; storing the data entries in a first section (14) of a data storage system (2); andstoring the links (17) in a second section (15) of the data storage system (2).
2. The method of claim 1 , wherein the step of storing the data entries in the first section (14) includes storing each data entry as a concept.
3. The method of claim 1 or 2, including the step of scanning the first section (14) of the data storage system (2) to check whether any of the one or more data entries are already included.
4. The method of claim 3, if one or more of the data entries are already included in the first section, the step of storing the data entries in the first storage section (14) of the data storage system (2) comprises mapping said one or more data entries onto the existing data entries.
5. The method of claim 3 or 4, if one or more of the data entries is not yet included in the first section (14), the step of storing the data entries in the first storage section (14) comprises creating a corresponding new data entry in the first section of the data storage system.
6. The method of any of the previous claims, wherein the one or more elementary relations (10) comprise one or more of the group of: 'is', 'has-a', 'is-a', 'is attribute of, and 'has as attribute'.
7. The method of one of the previous claims, wherein the step of using one or more elementary relations (10) to add links (17) between the respective data entries comprises creating all possible relationships between respective data entries of the one or more data entries.
8. The method of any of the previous claims, comprising the steps of:providing a query;using the query to select corresponding links (17) from the second section (15);using the selected links to retrieve related data entries in the first section (14).
9. The method of any of the previous claims, wherein the step of using one or more elementary relations (10) to create links (17) between the data entries comprises combining multiple elementary relations (10) to create a single link.
10. The method of any of the previous claims, wherein the step of using one or more elementary relations (10) to create links (17) between the data entries comprises:using the one or more elementary relations (10) to create a first link (17) between a first data entry and a second data entry in a first field; andusing the one or more elementary relations (10) to create a second link between the first data entry and a third data entry.
11. The method of claim 10, wherein the third data entry is related to another context or field than the second data entry.
12. The method of one of the previous claims, comprising the steps of:providing a query;using the query to construct a new link between respective data entries, wherein the new link is comprised of one or more elementary relations (10);storing the new link in the second section (15) of the data storage system (2).
13. A system (1) for handling contextual data (9), the system comprising:one or more elementary relations (10);an input module (8) for receiving contextual data (9) comprising one or more data entries, the input module being adapted to create links (17) between the respective data entries using the one or more elementary relations (10); anda data storage system (2) comprising a first section (14) for storing the one or more data entries, and a second section (15) for storing the links (17).
14. The system of claim 13, wherein the one or more data entries in the contextual data (9) include at least a set of facts and at least one predicate, wherein the input module is adapted to store each data entry as a concept in the first section (14).
15. The system according to claim 13 or 14, wherein the input module (8) is adapted to create every possible link (17) between all the respective data entries included in the data (9), and for storing all links in the second section (15) of the data storage system (2).
16. The system of one of claims 13 to 15, the input module being provided with a set of rules (12) indicating where and how to store the respective data entries.
17. The system of one of claims 13 to 16, the input module being adapted to check whether the respective one or more data entries are already included in the first section (14).