Advertisement
burke

Untitled

Dec 11th, 2024
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.11 KB | None | 0 0
  1. [ Music ] >> Hey, everybody. Hi, hello, and how are you doing? >> Good. How are you guys doing? Good morning. >> We'll just give it a minute while people are joining here. >> Good. >> Hi, everybody. We'll just wait another minute or two, and I think we'll plan to get started at 5 after the hour. >> What a weather. [ Foreign Language ] >> So, John, I don't think Professor Beatriz is going to be able to join us because she's in another meeting with the Ministry of Health, but we have Blonda here. She is also from the Ministry of Health, and I think it's going to be -- it's going to make more sense, and you guys can have like a full perspective of what happened in Brazil since the pandemic. >> Great. Yeah, thanks, Cicelo. That sounds good. >> Okay. Well, I think we -- it looks like we have quorum. So, let's get started. We'll just drop the link for the notes in the chat here. So, welcome, everybody, to the Open HIE Terminology Services Call, and we take collaborative notes, and so I just dropped the link in the chat. Please feel free to add yourself into -- add your name to the list, and feel free to take notes and follow along. But really excited today that Italo and also Blonda from the Ministry of Health in Brazil will be presenting on the International Patient Summary implementation that was done there, and I think we've -- Italo and also Beatriz from Brazil have been participating in this community for some time, and so we've gotten to hear a little bit about it, but I was really interested in getting a deeper dive into the project, and I think our community has a lot that we could learn from the work that has been done there. And IPS specifically has also been a big topic of interest in the fire and open HIE community, so Italo, I think I'll hand it over to you, and you can introduce yourself and Blonda as well, and then jump right in. But maybe, I guess, before we start, are there any other questions or burning topics, Shelby or Jack? Okay, so I think we are all good, Italo, so over to you. All right. Good morning, everyone. My name is Italo Macedo. I'm here on behalf of Hospital Cidre Libanês, for those who know, and I'm basically the fire guy over there. I'm also a member of HL7 Brazil, and we do all sort of things using fire over here. Blonda, would you like to present yourself? Hey, guys. Morning. I was with some audio problems here. Can you hear me? Perfect, perfect. I'm the head of technical lead at the Ministry of Health, on behalf of using the HL7 fire on the National Healthcare Data Network. I'm working with Italo to build the EPS project, and we are working on the... I don't know how to say Italo, the PROAD project, but it's like a partnership with hospitals, the big hospitals in Brazil, and that's how we are working together. Yeah, yeah. PROAD is a national program that we have here in Brazil, where the biggest hospitals have the opportunity to do some projects collaboratively with the Ministry of Health and using... How can I say it? When you don't have to pay taxes and you use that money that you were supposed to pay taxes to develop projects, that's it. That's the concept. And EPS Brazil is one of the projects right now ongoing that is part of the PROAD project. And PROAD means development of the infrastructure and systems that support the health system. That's the translation of the acronym. So let's go. EPS Brazil. So first of all, I'd like to present you guys the agenda. What we're going to do today is I'm going to provide you some background of what happened during the pandemic and all of the implementation guides that were born during the pandemic. So we had the first implementation guide, which was the rapid test implementation guide. Then we had more implementation guides and more implementation guides. Then we reached the motivation, the turning point for us. So we fixed the burning problems and then we stopped and we think about how we can deal with governance and hierarchy and all of the complicated problems that are born afterwards. So we reached motivation. Then we're going to establish our objective and show the methodology that we follow to specify the implementation guide for EPS Brazil. Then I'm going to present you the results and we'll do some discussion over it. Obviously, we are here. We are not here to do a monologue. We're here to interchange experience with you guys. And then we're going to present what we're going to do next. So the pandemic here in Brazil started on March 11, 2020. So that's when the president at the time... Well, we started a few measures in terms of implementing social distancing in quarantine in some regions, some states. And a few months later on May 28, 2020, the National Health Data Network was announced. So it's our national interoperability platform. And after that, we had a couple of implementation guides. Let me minimize this so we can have a better view of the slides. So on August 10, 2021, the first implementation guide was published, which was the COVID-19 clinical laboratory diagnosis rapid test. Basically, there was a project involved in a bunch of laboratories. And the goal of this project was to validate this implementation guide. And the initiative demonstrated the feasibility and importance of real-time health data integration to improve the response and control of infectious diseases. But that's COVID, right? And also on February 18, 2022, the implementation guide for immunization notification was published. It was a project pretty much like the project before, involving a bunch of laboratories that would test the immunization profile. And this initiative aimed to improve the monitoring and management of vaccination, right? So I remember that at the time, at least in 2021, we didn't know much about how effective the vaccine were and if we need boosters and so on. And that's all of the things culminated in the immunization notification so we could keep track of the doses and so on. So this is a hierarchical view of the implementation guides that we have here in Brazil. Basically, you have the National Health Data Network implementation guide. In this implementation guide, it contains several profiles. For instance, we have over 50, maybe 60 profiles today. I think Blender has that number. But at the time, we just had clinical laboratory diagnostic test profiles and immunization registries. Then we... Okay. Then we have the clinical care records profile. And as you can see, this hierarchy started expanding in a flat hierarchy. So that means we're doing something wrong, right? Because at this point, some of you may have noticed already that some profiles, they probably overlap in terms of use cases. We have encounter here. All of these profiles, they probably have an unencounter profile. And that's when we noticed that things would get messy because all of these repositories were getting massive, right? We're a continental country. So for instance, for a clinical laboratory diagnostic test, we have 74 million observations. For immunization registries, we have 1.4 billion registries. Clinical care record profiles, we have 37.3 instances of this profile. And for a regulatory and essential information registry, we have probably over 12 million right now, 10.8 million. And some of them started in 2023. Some of them started in 2024. But that's what we have right now. So we have a lot of data. And we have this hierarchy that is expanding horizontally. And it looks like a flat hierarchy. So it's not good, like I mentioned. But I'm going to talk about that later. I still have to show you guys more numbers. So we have 73 million of laboratory results. And we have 1.1 billion of vaccination registries, like you've seen in previous slides. And so on. Encounters, we have almost 100 million. And regulatory, we have almost 11 million. And medication requests, we have almost 1.3 million of registries. But like I was saying in the previous slide, we noticed that -- well, it all started for us in 2020 when we were watching Miriam Boutou's presentation on death days. And she was talking about hierarchy and conformance on fire -- when you're using fire. And we noticed that we had something here, right? We had an opportunity because the profiles can use -- can be based on core profiles, but they also can be based on national profiles or regional profiles and so on. So you can really have a hierarchy of profiles. And that's the way you're going to tackle hierarchy when you have a bunch of implementation guides, right? So all of these implementation guides, they can be more generic and less restrictive or more specific and obviously more restrictive. And the resources that are going to be valid, that are going to conform to these profiles are going to decrease in volume as the profile gets more constrict, more specific. But that's not just that, right? We noticed that we had some governance problems. We had to manage initiatives and define a hierarchy and understand the use cases better. And our information models, right, we needed a shared information model. I still believe that we need a shared information model to this date. And also we had to make choices for -- sorry. The important thing for us at that point was that we needed to establish a national implementation guide that would organize things for us. So we could grow our specification in a more disciplined and organized way. That's when we found out that there was a national implementation guide workgroup. And we started participating in this workgroup. This workgroup at the time was one of the co-chairs, I think it was Sheridan Gouk. I'm not entirely sure. But in this workgroup we found out that there was this emerging framework developed by a couple of HL7 affiliates. And basically what they found out was that among a bunch of countries, an architecture pattern was being established where in each of these countries they would have in this spectrum from open world modeling to closed world modeling. And in closed world modeling we would find several layers of profiles that would -- and these layers would start from a base of fire resource like R4, right, and they would end in an implementation profile, a technical profile in the bottom. And then we would have these profiles would increase in terms of -- they would be more specific, they would have more rules, they would grow in constraint. Right? And then we would have these -- right at the top here in the second layer we would have the national abstract profile which would be use case agnostic. And this kind of profile normally would not have most support elements, no cardinality constraints. The bindings would be preferred, extensible, whatever. And then these license would be open and these implementation guides would have textual guidance and functional model mapping, right? So you can read and understand that specification and do something in the next layer if that next layer is appropriate for your project. And then also you would find national use case profiles generalized that would provide best practice guidance in terms of terminology, approach, recommendations for reuse, and the use of other implementation. Then you would have national use case profiles that would be restricted. And then these implementation guides would find profiles that would contain most support elements, cardinality constraints, closed slicing, and some use case related guidance now that these use cases are more specific and restrictive. And then you would find regional use case profiles, these use case profiles that are regional. These implementation guides would be more appropriate in providing guidance for interoperability between provinces and states or communities. I don't know. And they would establish identifiers, extensions, and guidance on how to interoperate data between these regional communities. And finally, in the bottom layer, we would find implementation profiles, technical implementation guides that are closed or are the proper closed world modeling of a FHIR API, specific FHIR repository. In our case, these implementation guides and these implementation profiles would be our COVID test, our immunization registry, and so on. So we noticed that Finland was doing something similar to what we were thinking. We also found out that the pattern to consider was exactly the one that we were thinking, right, which was good. So this is what Finland decided to do. So they have the international use case profile that is going to be used as the basis definition for a national abstract profile. And this national abstract profile can be used as a base definition for the national use case profile, generalized and restrictive. Sorry. And for the technical implementation guides, the technical profiles that are more restrictive. And that's the pattern that was sort of a consensus from the workgroup that was a pattern to be considered. That's basically our proposal, right? So we're going to have the international use case, which is going to be IPS Brazil. And it's going to be used as a base definition for the national abstract profiles. And these national abstract profiles are going to be used as a base definition for the national and the national generalized and the national specific. And in the model layer for the most restrictive as well. That's our objective, right? An IPS Brazil implementation guide that is restrictive for international use case, but serves the purpose of being a base definition for both national use case agnostic and a national use case restrictive implementation and national use case restrictive implementation guides. Does that make sense? That made sense for us back in time. Here's our proposal. Here's how we intend to do it. We're going to have the IPS Brazil as the international use case restrictive implementation guide. Then we're going to have the national use case agnostic IG, which is going to be our DR core, which is basically the same thing as US core. But it's going to be based on IPS. And then we're going to have use case restrictive implementation guides for COVID and immunization and clinical care and regulatory. And here are the results of IPS Brazil. So we have the implementation guide. That's the implementation guide. It's on Portuguese. We had to translate all of the implementation guide publisher templates. So everything would be presented in Portuguese. But the implementation guide is based on IPS and our contribution is that we provided a model harmonization and semantics from the national data network implementation guide. The different implementation guides were harmonized, not just a model, but the semantics as well. And we defined a set of profiles that are international use case restrictive. And these profiles, they don't have most support attributes or cardinality constraints. The bindings are mostly extensible/preferred. The slices are open. The implementation guide provides textual guidance for functional and model mapping. We also define national identifiers, extensions, code systems, value sets. We also provide concept maps from national code systems and classification systems to LOICs, SNOMED, GPS, and so on. We also provide translation when possible, when appropriate. Of course, we cannot translate SNOMED, but we did provide some translation for all of the other code systems that can be translated like LOIC, ICPC-2, and so on. And we also implemented language packs for Brazilian Portuguese. So you can see all of the code systems and value sets with Brazilian Portuguese localization in the implementation guide. So we also had to develop a high-fidelity prototype that we presented to the Ministry of Health. So this solution has an IPS viewer that is a smart on fire app that we developed on React. This IPS viewer implements the export idempotent operation that is part of the patient resource. So we request this summary to the IPS curator. We developed an IPS curator. This IPS curator queries documents from the National Health Data Network Fire Facade, and it gets a batch response. And that batch response is transformed using our engine, and we're using Oliver Eggers Matchbox to do that. We use the transform operation to -- and we use this structure map that we developed that transforms the batch response into a valid IPS. Also, we needed a key cloak instance that has OpenID and OAuth2 services that implement authentication, authorization, and consent. And prior to the access of the IPS, the patient needs to be authenticated and authorized and needs to consent the scope that is requested for this session. We also obviously use OpenConsent Lab because we do terminology management using OpenConsent Lab. We have our own instance. We also used the terminology service of OpenConsent Lab for a bunch of things. Like I said, we do some governance. We do management. We do translation. We do all of these things, all of these semantic-related things. We do all these things using OpenConsent Lab. The IPS viewer, like I said, it's an IPS viewer that uses smart on fire patient standalone launch flow using key cloak and key cloak extensions for fire by Lee Supranen. Thank you, Lee, for that. And the IPS viewer provides translations for the codable concepts. We don't translate the narrative elements. That would be crazy. But we really do translate the display elements of the codable concepts based on the selected language. So the health professional, if he has some difficulty in understanding the summary, he can read the summary, at least the display elements of the codable concepts in the preferred language, in his preferred language. And we do that also using OCL's terminology service. We use OCL basically for everything, for lookup, for validate, for expansions. We use for translation. We do translation using lookup as well. But sometimes we -- to be fair, we don't just use the fire service. We also use the REST API that has some more things. So we use the best of the REST API and the fire service. We also have an IPS curator, like I mentioned. It basically queries documents from the fire facade, from the Ministry of Health, and then it uses -- it requests a transformation to the fire engine so we can get the valid IPS. And for the fire engine, we obviously use Oliver Eggers' matchbox. And we implemented a structure method that transforms a bundle batch response into a valid IPS. We also participated -- we intend to participate in a couple of Connectatons. We participated in the Connectatons that happened in Relaxes 2033. We also want to participate in John Damore's Connectatons at the WGM in a couple of weeks from today, I guess. We also want to publish the implementation guide on HL7.org/fire/br/ips. We'll see if that works. I don't know if that's possible. But that would be great. And we want to host a Connectatons in the future so we can provide maturity to our implementation guide. And obviously for educational purposes, we need to be a critical mass of implementers and healthcare professionals that work with fire engines. So I think that would be a great opportunity for that. In conclusion, the shadow of the pandemic that rushed things was what rushed things into motion. The Grammy needed to provide some governance and hierarchy to the implementation guides, brought us to the National Implementation Guides workgroup. That's where we found out about this emerging framework. And we started strategizing how we were going to come up with our National Implementation Guides. That's when we found out about all of those hierarchy of use cases that are international and less restrictive -- that range from international and less restrictive, more generalized, down to use case specific and restrictive implementation guides. That's when we found our place in the hierarchy and we come up with the IPS results proposal. Then we developed all of these components and when we provided the IPS results contribution. So basically our contribution was the viewer, the curator, the structure map. The minister of health is going to use a terminology management system, a terminology service. The ministry is going to do governance over the information. So those are the things that are contributions in our understanding. So for future work, we want to continue doing that. So I think it's -- if that's appropriate to come up with National Implementation Guides for things like CPG on fire, evidence-based medicine on fire, structured data capture, I think those are way too technical profiles, but we still need implementation guides for quality improvement, core, and so on. So that's where we want to go from. >> Thank you, guys. Today I can still show you the solution. Let me show you the app. So here's the app. I'm going to use Francisco Sousa. So you can see. So I'm going to log in as Francisco Sousa. It's going to do the patient stand-alone launch, smart on fire. It's on Portuguese. At this point, the viewer is requesting a summary to the curator. And the curator is going to peer the documents from the ministry of health and transform these documents into a valid IPS. That is taking longer than expected. There you go. So there you have it. That's the summary. So what is happening here is that we are getting the translations for all of these concepts from open concept lab, right? So here we have the conditions. Let me translate this to English. So you have the patient identification, the active problems, medications, tolerances and laboratory results. You can see that some things are still in Portuguese because those are concepts that haven't been translated yet on open concept lab. But as soon as we translate them, they're going to be available on the interface. So the IPS viewer does the best effort in terms of finding a translation. And if a translation is not yet present, it gets the preferred translation. Not the translation, the definition. The full specification of the concept. So there you have it. The active problems. And as you can see, some of them are in Portuguese. Some others are in English already. So we still need to translate more stuff. Here you have the medications. These have not yet been fully translated yet. Here are the allergies. Laboratory results. And immunizations. So you can see the number of times the patient took immunization. And history of procedures. I still need to show you guys our open concept lab instance. Show you guys our open concept lab instance. So you have some idea of -- So we have all of these organizations here. And we have the ministry of health here. And all of the national code systems are here, as you can see. So for example, the immunizations, that's the national code system for immunizations. And if you select this concept here, you're going to see that it hasn't been translated yet. But we do all the things that we have to do in terms of managing semantics. And that's it. That's what I had to present to you guys today. Thank you very much. >> John, I think you might be muted if you're talking. >> Sorry, I was double muted. Thank you so much for the presentation. I learned a lot through that. And had a couple questions of my own. But it looks like there are many questions in the chat. And maybe that would be a good place to start. So I'm going to go ahead and start with the first question. Are you able to see those? >> The first question is from Ritika. Hello, Ritika. So, yeah. Those -- that's the thing, right? The governance process are being done by another hospital, right? So that's another hospital that is doing these -- that is establishing these governance processes. >> Let's go. >> Sorry. Go ahead. >> Sorry. I thought I was on mute. Sorry. >> And -- that's from Richard. Are you using concept maps in transforms in addition to structure maps? That's a good question. We do have some -- we have some -- we have some translates in our structure maps. We do have. And what we do is because we have to distribute what is on OCL to Matchbox, right? So Matchbox is capable of translating concepts within the structure map. So that's a little bit tricky. Ideally, we would prefer to have everything on OCL. But I'm not here to complain. But I just try to use what's best and available from all the tools that we use. So we do have some translations in our structure maps for some basic things like ethnicity and city and state. Things that we have to fix from the technical implementation guides. But, yes, we do have. Well, I think Jennifer's question -- I don't know who is supposed to answer that. Is that you, John? >> Yeah, I'm not -- >> Yeah, Jennifer, go ahead. >> I'm not sure that's a question that can be answered, like, in five or ten minutes. But I think that's something I'd like the community to think about. John, if you have thoughts, that would be great. >> Well, yeah, thanks, Jennifer. And I think that one of the reasons that we were so interested in having ETHELOAD present today is IPS has been such a hot topic in this -- in the FHIR community. And then those who are working with WHO's SMART guidelines. And I think there's a Kenya proof of concept on SMART guidelines as well. And there's been interest in the open to rest community and potentially having IPS form as a base structure for export of patient data. And so I think just given all of the different touch points here, I wanted -- I think this -- it seems like open HIE would benefit from thinking about how we'd like to have a more structured approach. But I think this is -- the terminology side of this is really just one perspective of that. And I think, you know, Richard pointed out a good one with your question about how just having, for example, using OCL within an IPS simplification provides sort of the semantic layer translation capabilities. But it's not enough. It's not enough to also transform the structure. And so I think this is more of an open group discussion about, you know, what would we like to see? Like what are some of the priorities around, you know, use of IPS? I think there's a sense that there may be some gaps in IPS in terms of its ability to be useful for some of the, you know, emerging use cases around automated data exchange as well. So, yeah, I'd be -- I'd kind of like to just open it up to the group here to see what your thoughts are. >> Now, I'd just like to -- oh, sorry, Jose, go ahead. >> No, you go ahead. >> No, I was going to say that from our experience, what we noticed was that IPS was probably a good place to start the hierarchy, right, from the international use case restrictive implementation guide. But obviously it's not sufficient. But it's -- we have to start somewhere. And then we have a long hierarchy of a long validation chain to traverse, right? So that's it. That's what I wanted to say. >> Yeah, so starting with that, actually. So I think -- so IPS and other specifications out there, they are useful in the sense that they can provide us a checklist or a starting point. And then we have to say this is for a given purpose, then this is for -- it's a routed graph. So it's not a -- it's not the model that can -- so it has to always one route at the top. Sometimes that might be good. That might not be good. So there's a lot of implications there. For me, the biggest thing that we can do for the -- the best thing that we can do for the IPS and for ourselves is actually not trying to put the IPS as how can we tweak this thing so that we can use it. I'm still puzzled with how the discussions -- how being a hot topic means that we have to relate to this. I mean, as I said, using OMOP or IPS as references, it's useful. But if we say how can we use IPS as -- I don't know how you phrase it, John, as a starting thing. Or making it part of our analysis or I don't know how to say it. This is something that for me, it's -- I don't know. I see a big link missing there. So how can we bring something -- only if it's a -- sorry. Only if it's a specification. Only if it's a specification that we say we can use it, then it's good. But I'm still puzzled with how everything goes to the point of can we use the IPS here? We can. We can be inspired by it. But it's a technical specification. We should know this. And it's too many discussions around the same topic. And the last thing we want to do to the IPS is to embark in every time that we have a system. And I'm actually curious or a bit concerned with the OpenMRS, with the thing that was said about the OpenMRS, that topic with the IPS. As a checklist, that's fine. But as a specification, then we are -- I think it's not good, actually, either for IPS. Because we'll see that it breaks. And it's not intended to break. The IPS is good for the purposes of what it's doing. And obviously the implementations will also break. Because they are trying to squeeze something that is not there. So just on the side of using it as a reference is good. But it should not be the topic of every single implementation. Same way with the IPA. And so many specifications out there. There's not one that claims to be the center of modeling. So I don't know why the IPS is being seen with that. Sorry if it sounds negative. I'm just being cautious to defend the purpose and the continuity of the IPS. Sorry, that was -- I meant to be -- can we do something with that knowing the consequences without having -- being blocked by IPS versus other models every single discussion? [ Inaudible ] So I'm wondering as a way to kind of bridge what you just said, your comment, Jose, to your presentation, Isabel. At least for me conceptually, is you showed a really useful framework for how kind of moving from more use case agnostic profiles to ones that became increasingly restrictive. And that -- I'm curious where IPS -- I'm sorry, where smart guidelines fit into them. And that I guess as Brazil extended or developed profiles or IGs that are connected to some of the smart guidelines. And I guess where would you see that fitting in and would it be also inheriting from or hierarchically how would it be related to IPS? Does that make sense? >> Yeah, that makes sense. That's something that is -- sorry, Joe. Oh, yeah, yeah, yeah, sure, sure. >> Yeah, sorry, just to have a visual cue for us to look at this too. >> The pattern to consider, right? Get it. Okay. Share screen. Okay. So first -- I'll go ahead and -- >> Go ahead, Italo, it was for going after you. Go ahead. >> Okay. >> So I guess the first thing that I would say is that we are -- we are -- we are not -- because it's complicated, right, Jose? It's complicated because when we were implementing clinical guidelines, at least from our experience, we had to use -- we had to follow some profiles like CVG and SDC, right? So -- >> Yeah. >> -- it's a little bit more complicated. So we are not going to be able to use PD apply if I don't follow CVG and so on. So IPS won't work, and that's a huge gap. So I think that in my opinion, right now from my perspective, I agree, I think there's a huge gap, and I think that we have problems to address. And we don't have that answer right now. I wish I had. That's my contribution. Sorry, go ahead, Ritika. >> Yeah, I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think that's a really good point. I think package distribution would be a huge thing. I think package distribution would be a huge thing. That's probably the most important thing that I would like to mention. That's probably the most important thing that I would like to mention. The same thing could happen to our FHIR repository. The same thing could happen to our FHIR repository. The same thing could happen to our FHIR repository. In this example, we use HopiFHIR for that. In this example, we use HopiFHIR for that. I know that packages don't distribute search parameters yet. I know that packages don't distribute search parameters yet. I know that packages don't distribute search parameters yet. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter. We had a problem where we would have to create the search parameter every time we had a search parameter.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement