This is great, thanks wyclif.

Joaquín
___________________________________________________________________
Gerente de Desarrollo, eHealth Systems <http://www.ehs.cl/>
Research Fellow, Escuela de Medicina de Harvard <http://hms.harvard.edu/>
Moderador, GHDOnline.org <http://www.ghdonline.org/>


On Tue, Feb 14, 2012 at 2:50 PM, Wyclif Luyima <[email protected]> wrote:

> Going SMART Vs OpenMRS might turn out not to be a trivial decision, why? A
> SMART app is a separate web app that could have been written in a separate
> programming language or even just a web page with javascript logic that is
> capable of processing data received from a SMART rest API via SMART connect
> API and produce meaningful output, the key thing is that the SMART app can
> be run inside another application which is a SMART container, typically
> this would be inside an iframe embedded in web page of another web app, as
> you have seen how the demos apps i added are  executed.in OpenMRS.
>
> Personally i would only go for a SMART app if i already had an existing
> web application  that i would want to be run inside OpenMRS as a SMART app
> without having to write an OpenMRS module so as to add the features i wish
> to.
>
> If you want to write a SMART app, you need a host for your application,
> you need to check the SMART datatype model for the datatypes that would
> best suit your needs, standard SMART datatypes are defined 
> here<http://wiki.chip.org/smart-project/index.php/Developers_Documentation:_SMART_Data_Model>
>  ,
> if there is already a handler for it in the SMART container module, then
>  you are set to write your SMART app, if not, we can always add the handler
> for it in the next release for the module. Currently the registered
> handlers in the module are for : Demographics, Medications(Regimens),
>  LabResults, Vital Signs, Problems, Allergies and AllergyExceptions. This
> list is expected to grow in the next release to include datatypes like
> Alerts(Notes), Encounters, Fulfillments and EncounterTypes.
>
> Wyclif
>
>
>
> On Tue, Feb 14, 2012 at 9:51 AM, Darius Jazayeri 
> <[email protected]>wrote:
>
>> I've never written a SMART app, so I don't know. It's probably easier for
>> some things, and harder for others. (I know, that's not really helpful. :-)
>>
>> SMART definitely makes it easier to fetch high-level clinical patient
>> data (e.g. Problem List, Allergies, Prescriptions) in javascript. IIRC it
>> doesn't allow any access to *general* observations at all.
>>
>> -Darius
>>
>>
>> On Tue, Feb 14, 2012 at 6:16 AM, Joaquín Blaya <
>> [email protected]> wrote:
>>
>>> Thanks Darius.
>>>
>>> One question that I still had, is it easier to write a SMART app or an
>>> OpenMRS module?
>>>
>>>
>>> Joaquín
>>> ___________________________________________________________________
>>> Gerente de Desarrollo, eHealth Systems <http://www.ehs.cl/>
>>> Research Fellow, Escuela de Medicina de Harvard<http://hms.harvard.edu/>
>>> Moderador, GHDOnline.org <http://www.ghdonline.org/>
>>>
>>>
>>> On Sat, Feb 11, 2012 at 2:01 AM, Darius Jazayeri <
>>> [email protected]> wrote:
>>>
>>>> A bit of relevant background:
>>>>
>>>> SMART is a project out of CHIP in Boston. The idea is that they've
>>>> defined a common-denominator virtual EMR, so that you can write a SMART app
>>>> once, and that app will work against many different EMR systems as long as
>>>> they're a "SMART Container", which OpenMRS now is.
>>>>
>>>> So, if you just want to build an OpenMRS module, SMART isn't really
>>>> relevant. If you want to write functionality that works in more than just
>>>> OpenMRS, then it may be the way to go.
>>>>
>>>> -Darius
>>>>
>>>>
>>>> On Fri, Feb 10, 2012 at 8:29 PM, Joaquín Blaya <
>>>> [email protected]> wrote:
>>>>
>>>>> Thanks Wyclif, you did answer my questions, but i'm guessing I'll need
>>>>> to read up more on SMART to be able to understand your response 
>>>>> completely.
>>>>>
>>>>> Another question or questions came up.
>>>>> 1. How is this better than just writing an OpenMRS module that has the
>>>>> functionality of a SMART app?  Is it because we can now use SMART apps as
>>>>> well as OpenMRS modules, are SMART apps easier to write, or something 
>>>>> else?
>>>>>
>>>>> 2. If thinking about the case of an EMR RIS/PACS connection, what
>>>>> would be the difference between say having OpenMRS call the RIS/PACS 
>>>>> versus
>>>>> having the RIS/PACS be a SMART app within OpenMRS?
>>>>>
>>>>>
>>>>> Joaquín
>>>>> ___________________________________________________________________
>>>>> Gerente de Desarrollo, eHealth Systems <http://www.ehs.cl/>
>>>>> Research Fellow, Escuela de Medicina de Harvard<http://hms.harvard.edu/>
>>>>> Moderador, GHDOnline.org <http://www.ghdonline.org/>
>>>>>
>>>>>
>>>>> On Fri, Feb 10, 2012 at 8:13 PM, Wyclif Luyima <[email protected]>wrote:
>>>>>
>>>>>> @Dave, to answer the question without going into much details i would
>>>>>> say,  the smart team defines 
>>>>>> here<http://wiki.chip.org/smart-project/index.php/Developers_Documentation:_REST_API>a
>>>>>>  standard end pattern(excluding the domain name and the web app's root
>>>>>> context) which the urls for the different data types should end with and 
>>>>>> a
>>>>>> smart rest API should serve them. You notice these don't conform to our
>>>>>> rest ws url pattern. So in the module we just append these to
>>>>>> 'contextPath/module/smartcontainer/rest/api which are served by the small
>>>>>> non-public rest api that the module provides.
>>>>>>
>>>>>> Wyclif
>>>>>>
>>>>>> On Fri, Feb 10, 2012 at 3:56 PM, Dave Thomas <[email protected]>wrote:
>>>>>>
>>>>>>> This is really cool.  Just to satisfy curiosity, how does the SMART
>>>>>>> rest API know the specifics of the openmrs api, if this module isn't 
>>>>>>> using
>>>>>>> the OpenMRS webservices module?
>>>>>>>
>>>>>>> d
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Feb 10, 2012 at 12:17 PM, Wyclif Luyima 
>>>>>>> <[email protected]>wrote:
>>>>>>>
>>>>>>>> Hi Joaquin,
>>>>>>>>
>>>>>>>> The thing worth mentioning that i didn't in release email is that
>>>>>>>> actually this is not fully fledged 'SMART container' because the 
>>>>>>>> installed
>>>>>>>> apps can only fetch data from the same OpenMRS instance, so it is the
>>>>>>>> container and back end EMR at the same time and this is what we 
>>>>>>>> decided on
>>>>>>>> for the first release,  probably a feature we can add in later 
>>>>>>>> versions is
>>>>>>>> to let them communicate to external EMRs. Currently the only apps that 
>>>>>>>> can
>>>>>>>> be hosted are those that conform  and were written according to this 
>>>>>>>> specs
>>>>>>>> at SMART project and those are javascript based apps.
>>>>>>>>
>>>>>>>> With the above in mind, see the inline responses i have added below:
>>>>>>>>
>>>>>>>> 1. Would this allow all of the permissions for all of the SMART
>>>>>>>> apps to be handled through OpenMRS?  i.e. if I insert a RIS/PACS
>>>>>>>> viewer as a SMART app, would OpenMRS be the one that has the user's
>>>>>>>> permissions as to what they can and can not see inside the RIS/PACS?
>>>>>>>> User permissions are still handled by core when the apps attempt to
>>>>>>>> access date through the private SMART rest API, i.e if a user had no
>>>>>>>> privileges to the domain objects that a SMART app's data handler uses, 
>>>>>>>> then
>>>>>>>> you won't view contents from that app, probably you will see an error
>>>>>>>> message above the iframe in which the SMART app contents are displayed.
>>>>>>>>
>>>>>>>> 2. Does this use the OpenMRS REST API or the SMART one?
>>>>>>>> The SMART rest API is its own and private, this because these apps
>>>>>>>> run inside the same OpenMRS instance as the data they are accessing is
>>>>>>>> stored, so it didn't make sense to make it public.
>>>>>>>>  3. Can as described above, a RIS/PACS system (or a lab system or
>>>>>>>> others) be connected via a SMART app to OpenMRS for the users to view 
>>>>>>>> those
>>>>>>>> systems seamlessly i.e. if in OpenMRS, view images from the RIS/PACS, 
>>>>>>>> pages
>>>>>>>> from the LIS, or other subsystems?
>>>>>>>> This should be possible, if you tried out the sample apps i
>>>>>>>> attached to a follow up email i sent, the medication app is capable of
>>>>>>>> fetching videos and  PDF which it displays seamlessy inside OpenMRS, 
>>>>>>>> you
>>>>>>>> might want to visit how to create a smart 
>>>>>>>> app<http://wiki.chip.org/smart-project/index.php/HOWTO_Build_a_SMART_App>
>>>>>>>>
>>>>>>>> Hope i've addressed your questions
>>>>>>>>
>>>>>>>> Wyclif
>>>>>>>>
>>>>>>>> On Fri, Feb 10, 2012 at 2:08 PM, Joaquín Blaya <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Wyclif,
>>>>>>>>> This is great, because just 2 days ago we were talking down here
>>>>>>>>> that we needed to see how to imbed other programs within OpenMRS.
>>>>>>>>>
>>>>>>>>> A couple of questions.
>>>>>>>>> 1. Would this allow all of the permissions for all of the SMART
>>>>>>>>> apps to be handled through OpenMRS?  i.e. if I insert a RIS/PACS 
>>>>>>>>> viewer as
>>>>>>>>> a SMART app, would OpenMRS be the one that has the user's permissions 
>>>>>>>>> as to
>>>>>>>>> what they can and can not see inside the RIS/PACS?
>>>>>>>>> 2. Does this use the OpenMRS REST API or the SMART one?
>>>>>>>>> 3. Can as described above, a RIS/PACS system (or a lab system or
>>>>>>>>> others) be connected via a SMART app to OpenMRS for the users to view 
>>>>>>>>> those
>>>>>>>>> systems seamlessly i.e. if in OpenMRS, view images from the RIS/PACS, 
>>>>>>>>> pages
>>>>>>>>> from the LIS, or other subsystems?
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>>
>>>>>>>>> Joaquín
>>>>>>>>> ___________________________________________________________________
>>>>>>>>> Gerente de Desarrollo, eHealth Systems <http://www.ehs.cl/>
>>>>>>>>> Research Fellow, Escuela de Medicina de 
>>>>>>>>> Harvard<http://hms.harvard.edu/>
>>>>>>>>> Moderador, GHDOnline.org <http://www.ghdonline.org/>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Feb 9, 2012 at 4:12 AM, Wyclif Luyima 
>>>>>>>>> <[email protected]>wrote:
>>>>>>>>>
>>>>>>>>>> Apparently i forgot to attach the sample apps zip file, pleased
>>>>>>>>>> find the attachment to this email.
>>>>>>>>>>
>>>>>>>>>> Sorry about that.
>>>>>>>>>>
>>>>>>>>>> Wyclif
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Feb 9, 2012 at 2:06 AM, Wyclif Luyima <[email protected]
>>>>>>>>>> > wrote:
>>>>>>>>>>
>>>>>>>>>>> Hello everyone,
>>>>>>>>>>>
>>>>>>>>>>> We are proud to announce that SMART container 1.0.0 is
>>>>>>>>>>> available, this is the first major release of the module. It can be
>>>>>>>>>>> downloaded from the  modules download<https://modules.openmrs.org> 
>>>>>>>>>>> page
>>>>>>>>>>> and its documentation is located at 
>>>>>>>>>>> documentation<https://wiki.openmrs.org/display/docs/Smart+Container+Module>.
>>>>>>>>>>>  In
>>>>>>>>>>> summary, it adds the necessary features required to transform an 
>>>>>>>>>>> OpenMRS
>>>>>>>>>>> instance into a SMART app container, meaning that you can download 
>>>>>>>>>>> a SMART
>>>>>>>>>>> app manifest file, install it in OpenMRS and start using it right 
>>>>>>>>>>> away, see
>>>>>>>>>>> SMART<http://wiki.chip.org/smart-project/index.php/Main_Page#What_is_SMART.3F>
>>>>>>>>>>>  for
>>>>>>>>>>> more details about SMART.
>>>>>>>>>>>
>>>>>>>>>>> Attached to the email is a zip file with some sample apps you
>>>>>>>>>>> can try out, other sample apps can be downloaded from the SMART 
>>>>>>>>>>> website at
>>>>>>>>>>> http://sample-apps.smartplatforms.org/framework/
>>>>>>>>>>>
>>>>>>>>>>> A big thanks to Balachandiran Ajanthan who spent last summer
>>>>>>>>>>> working on most aspects of the module under the GSoC programme, 
>>>>>>>>>>> Josh Mandel
>>>>>>>>>>> and  the SMART team for all their input. Thanks also to the 
>>>>>>>>>>> developers and
>>>>>>>>>>> everyone else in the community that has contributed in various ways.
>>>>>>>>>>>
>>>>>>>>>>> We are looking forward to any form of feedback from you about
>>>>>>>>>>> the module, in case you happen to discover any obscure bugs, please 
>>>>>>>>>>> you can
>>>>>>>>>>> create tickets  through our issue tracking system jira at project
>>>>>>>>>>> page <https://tickets.openmrs.org/browse/SMART>
>>>>>>>>>>>
>>>>>>>>>>> Kind regards,
>>>>>>>>>>>
>>>>>>>>>>> Wyclif
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> ------------------------------
>>>>>>>>>> Click here to 
>>>>>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>>>>>>>  OpenMRS Developers' mailing list
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ------------------------------
>>>>>>>>> Click here to 
>>>>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>>>>>>  OpenMRS Developers' mailing list
>>>>>>>>
>>>>>>>>
>>>>>>>> ------------------------------
>>>>>>>> Click here to 
>>>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>>>>>  OpenMRS Developers' mailing list
>>>>>>>>
>>>>>>>
>>>>>>> ------------------------------
>>>>>>> Click here to 
>>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>>>>  OpenMRS Developers' mailing list
>>>>>>>
>>>>>>
>>>>>> ------------------------------
>>>>>> Click here to 
>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>>>  OpenMRS Developers' mailing list
>>>>>>
>>>>>
>>>>> ------------------------------
>>>>> Click here to 
>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>>  OpenMRS Developers' mailing list
>>>>>
>>>>
>>>> ------------------------------
>>>> Click here to 
>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from
>>>>  OpenMRS Developers' mailing list
>>>>
>>>
>>> ------------------------------
>>> Click here to 
>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from 
>>> OpenMRS Developers' mailing list
>>>
>>
>> ------------------------------
>> Click here to 
>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from 
>> OpenMRS Developers' mailing list
>>
>
> ------------------------------
> Click here to 
> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from 
> OpenMRS Developers' mailing list
>

_________________________________________

To unsubscribe from OpenMRS Developers' mailing list, send an e-mail to 
[email protected] with "SIGNOFF openmrs-devel-l" in the  body (not 
the subject) of your e-mail.

[mailto:[email protected]?body=SIGNOFF%20openmrs-devel-l]

Reply via email to