I am as software developer working for Columbia Univ. I work mostly with i2b2 software and have a few questions about how to translate an i2b2 query into an ohdsi cohort.
Some introductory remarks: i2b2 is compose by panels and each panel has a collection of concepts( call items) or criteria. The sql code for relation between items in a panel is “OR”, among panels the relation is “AND”.
Each panel may have observation periods and number of occurrence (or events)a patient need to satisfy to be in the cohort. You may also Exclude items (or criteria) for a given panel.
You can also restrict the samevisit between 2 or more panels.
There is not such thing that I may say is the PrimaryCriteria (PC). You could say all panels are to be added to PC and the index date could be the first event for any of the panels. You could choose the first panel because usually, when you are designing the query, you put in the first panel the most restrictive panel according to the number of patients; this is totally optional to make the query more efficient. The result is an INTERSECT of the patients for all panels, and within a panel is UNION ALL
Question 1: How to design PC. All panels or pick up one
Question 2: Since I only care about the event happening in a certain time period I could choose continuous observation prior and after = 0, and earliest event per person. Will this work even if the number of occurrences in a given panel per patient is to be larger than 1
The exit strategy I would say is the end of the observation period.
If I put all panels in PC then I need inclusion rules that establishes the occurrence for each panel. Say panel 1 needs to happened during certain length of time and at-least one per patient, which is the default (occurrence); panel 2 has another time period or may be the same as panel 1, and at least twice events per person, and so on.
It seems to me that PC pick up the first event among the codesets that are part of PC and then set up the index date or the patient. If they come from one panel only the UNION ALL of patients is fine. If I have many panels then I need to find the intersect between the patients in the different panels besides establishing the index event.
Question 2: Where should the inclusion rules go.
Can I add them to PC as it has a Criteria array (for each panel and each domain), which contains CriteriaGroup, where I define the rules.
Can I add those rules to AdditionalCriteria or InclusionRules
Looking at the circe-be software in ohdsi, technically speaking AdditionalCriteria and InclusionRules are the same and they differ in some String description. They are both CriteriaGroup where the rules could be established.
Any help and comments are appreciated