IRC Chat : 2011-11-10 - OpenMRS

00:03:35 *** wluyima has quit IRC
00:16:20 *** burke has quit IRC
00:29:17 *** deadpool has quit IRC
00:30:08 *** deadpool has joined #openmrs
00:55:25 *** wluyima has joined #openmrs
00:58:04 *** jwishnie has quit IRC
01:01:38 *** jwishnie has joined #openmrs
01:27:52 *** jwishnie has quit IRC
01:30:51 <deadpool> djazayeri: i updated the installation step with jetty do you think it is fine
01:30:52 <deadpool> https://wiki.openmrs.org/display/docs/Step+3+-+Install+Tomcat
01:55:36 *** deadpool has quit IRC
02:25:37 *** burke has joined #openmrs
02:25:37 *** ChanServ sets mode: +o burke
02:35:12 <finbrein> The OpenMRS Dependency Installer Plugin installs the OpenMRS
02:35:12 <finbrein> Code Templates, OpenMRS Formatter, Subclipse 1.4 SVNKit version, Maven
02:35:12 <finbrein> M2e plugin, M2e Extras, and Test Case Generator into Eclipse in one easy
02:35:12 <finbrein> step. Requires Eclipse 3.5 or higher.
02:36:33 <finbrein> While the current version of subclipse is 1.6.x. Can this be updated in the OpenMRS Test Case Plugin for Eclipse?
03:09:46 *** morristic has joined #openmrs
03:28:32 *** morristic has quit IRC
03:50:44 *** burke has quit IRC
04:08:48 *** morristic has joined #openmrs
05:12:53 *** sunbiz has joined #openmrs
05:12:53 *** ChanServ sets mode: +v sunbiz
05:49:20 *** morristic has quit IRC
05:57:20 *** finbrein has quit IRC
05:57:35 *** finbrein has joined #openmrs
06:48:25 *** finbrein has quit IRC
06:48:39 *** finbrein has joined #openmrs
07:28:44 *** dkayiwa has joined #openmrs
07:50:16 *** sunbiz has quit IRC
12:13:04 *** pusakat has joined #openmrs
12:27:26 *** sunbiz has joined #openmrs
12:27:26 *** ChanServ sets mode: +v sunbiz
12:36:29 *** sunbiz has left #openmrs
13:36:06 *** wluyima has quit IRC
13:39:13 *** pusakat has quit IRC
13:47:25 *** jriley has joined #openmrs
13:50:10 *** raff has joined #openmrs
13:50:36 *** raff is now known as Guest3476
13:50:46 *** Guest3476 is now known as rafa__
13:51:52 <jriley> dkayiwa, I have a question about the 1.9 testing
13:52:12 <jriley> I liked putting testing notes in an etherpad, and I'm willing to collect testing notes from the mailing lists and put them there
13:52:20 <jriley> but is it useful to anyone else?
13:52:51 <dkayiwa> jriley: i like ethapad too
13:53:02 <jriley> I'll go ahead, then
13:53:14 <dkayiwa> jriley: may be we can talk about it during today's call
13:53:18 <dkayiwa> and here what others say
13:53:19 <dkayiwa> :)
13:53:20 <jriley> sure
13:53:35 <jriley> I don't want to bother if no one else will read it
13:53:46 <jriley> but I liked working that way
13:53:56 <jriley> some of my feedback wasn't bugs, so didn't turn into a bug report
13:54:09 <jriley> and it was informative to read other people's feedback
13:54:20 <dkayiwa> jriley: there will surely be people reading it. Including myself :)
13:54:24 <jriley> sweet
13:54:51 <jriley> Why don't I start, and we can delete it if there's some reason not to. I have a few minutes before the implementer call
13:54:55 <dkayiwa> So that is a very very valuable work you are doing!!!
13:55:07 <dkayiwa> ok
13:55:59 <jriley> Actually, I could just start another section in the pre-release testing notes
13:56:11 <jriley> same page, new section.
13:56:40 <dkayiwa> that sounds nice to me
14:00:32 *** downeym has joined #openmrs
14:00:32 *** ChanServ sets mode: +o downeym
14:00:32 *** OpenMRSBot sets mode: +o downeym
14:06:01 <jriley> making address formats external to server config files is part of 1.9, yes?
14:06:05 <jriley> I will test that too
14:06:19 <dkayiwa> ok
14:24:04 <downeym> jriley: https://wiki.openmrs.org/display/~michael/Module+Compatibility+Table
14:25:46 <jriley> thanks, downeym
14:29:04 *** wluyima has joined #openmrs
14:36:06 *** nickwilkie has joined #openmrs
14:37:50 <nickwilkie> I'm experiencing some bugs with the Form Designer, is anybody around that might be able to help?
14:39:45 *** nickwilkie has quit IRC
14:40:26 *** nickwilkie has joined #openmrs
15:08:11 *** burke has joined #openmrs
15:08:11 *** ChanServ sets mode: +o burke
15:13:44 <downeym> hi nickwilkie, most people are in meetings right now: https://wiki.openmrs.org/display/RES/Weekly+Meetings
15:18:41 <nickwilkie> thanks! I didn't realize… I'll ask another time
15:19:27 <wluyima> goodmorning rafa__
15:19:28 <wluyima> rafa__, wonder if it is morning over there
15:19:28 <wluyima> rafa__, did you figure out why the test data import is failing
15:19:38 <wluyima> rafa__, i got the module thing working
15:20:03 <wluyima> and i think we need to reorganise and load modules first
15:20:27 <wluyima> the reason is that the modules will tell us what module tables we need to import
15:20:56 <wluyima> rafa__, djazayeri talked about this and we noticed there might be issues with modules like sync
15:21:48 <djazayeri> Perhaps in the first pass we can hardcode this?
15:22:27 <djazayeri> The Release Test Helper module already knows what modules are running. It doesn't need the init wizard to tell it via http request.
15:22:50 <djazayeri> (by hardcode I mean that we can hardcode rules for a couple of specific modules, and see how things work out)
15:30:34 *** onoratovaticone has joined #openmrs
15:32:20 <onoratovaticone> hey guys ... I'm using curl from command line that's fine; but I've a question :
15:32:49 <onoratovaticone> when I add an observation use as concept the uuid. Could I use the name ?
15:33:13 <onoratovaticone> this work fine :
15:33:17 <onoratovaticone> echo '{ "encounter":"48fc7132-c067-4888-b1bf-1a5186fcf6ad", "patient":"9bbe9fd4-05f5-442c-a092-e087819a16a3", "location":"Mosoriot Hospital", "concept":"be4f6e96-1691-11df-97a5-7038c432aabf", "value":"101", "obsDatetime":"2011-11-07T00:00:00.000+0200" }'
15:33:53 <onoratovaticone> can you help me, please ?
15:34:00 <rafa__> wluyima: hey
15:34:23 <rafa__> wluyima: yes, it's morning for me. I'm still in Boston :)
15:34:48 <rafa__> wluyima: I just managed to import data with mysql bin
15:35:10 <rafa__> wluyima: it's not complete yet though
15:35:57 <rafa__> wluyima: steps later like creating tables and updating tables fail for some reason
15:36:12 <rafa__> wluyima: I'll need to investigate it further
15:37:34 <rafa__> wluyima: I believe we need a different approach. We should export all tables, but exclude only some with "patient data"
15:40:45 <onoratovaticone> it's clear my question ?
15:40:50 <onoratovaticone> darius ?
15:41:00 <onoratovaticone> thanks :-)
15:41:05 <djazayeri> onoratovaticone: you want to give the concept's primary name instead of the uuid?
15:41:45 <onoratovaticone> yes
15:41:59 <onoratovaticone> can I ?
15:42:06 <djazayeri> gotta check the code, hold on
15:42:22 <wluyima> rafa__, i can help you figure out updates and creating tables
15:42:45 <rafa__> wluyima: I just got to that
15:42:54 <rafa__> wluyima: it's not a blocker yet ;)
15:42:55 <wluyima> rafa__, my quci guess is that some liquibase updates probably fail because you are leaving out certain tables
15:43:35 <rafa__> wluyima: yeah that's the reason
15:43:43 <wluyima> rafa__, i also think we need to import all tables
15:43:53 <wluyima> but limit entries about patient data
15:44:01 <wluyima> rafa__, it will simply things alot
15:44:20 <rafa__> wluyima: I think we should create tables with liquibase first, then import data and then run updates
15:44:57 <wluyima> rafa__, i agree that it is a good idea to import data via liquibase
15:45:12 <onoratovaticone> @djazayeri : I'd like something like "concept":"BLOOD OXYGEN SATURATION" but now it (seems) does not work.
15:45:13 <wluyima> i also think we could have generated tha data with liquibase
15:45:14 <rafa__> wluyima: no I don't want to import data via liquibase
15:45:31 <wluyima> rafa__, i mean for the tables and not patient data
15:45:49 <wluyima> rafa__, i guess ben knows how to do it
15:47:17 <djazayeri> onoratovaticone: from looking at the code, it seems that this should work if you give the fully-specified or preferred naem
15:48:57 *** burke has quit IRC
15:50:05 <onoratovaticone> @djazayeri: in the previous curl statement, for example, if I put in the "concept" the value "BLOOD OXYGEN SATURATION" it dowsn't work
15:50:17 <onoratovaticone> is it my fault ?
15:50:32 <djazayeri> hold on, on a call
15:51:12 *** dkayiwa has quit IRC
16:01:08 *** downeym sets mode: +v rafa__
16:01:11 *** downeym sets mode: +v wluyima
16:02:36 <wluyima> rafa__, have you committed the fix to importing data
16:05:58 <rafa__> wluyima: no it's not working yet
16:06:20 <rafa__> wluyima: I'm experimenting
16:08:00 *** gagaman has joined #openmrs
16:08:25 *** gagaman has left #openmrs
16:08:57 *** mnunez has joined #openmrs
16:09:02 <onoratovaticone> @djazayeri: If you say that it seems that should work, i think that it's a matter of syntax: can you check this ?
16:09:15 <wluyima> rafa__, ok
16:09:20 <onoratovaticone> echo '{ "encounter":"48fc7132-c067-4888-b1bf-1a5186fcf6ad", "patient":"9bbe9fd4-05f5-442c-a092-e087819a16a3", "location":"Mosoriot Hospital", "concept":"BLOOD OXYGEN SATURATION", "value":"101", "obsDatetime":"2011-11-07T00:00:00.000+0200" }'
16:09:38 <djazayeri> onoratovaticone: does it work when you put the concept's uuid?
16:09:39 <wluyima> rafa__, i meant just the test data import without upgrades
16:09:50 <onoratovaticone> yes, with the uuid yes
16:10:28 <rafa__> wluyima: I can commit that in a minute
16:10:41 <djazayeri> onoratovaticone: can you check your server and make sure that the "BLOOD OXYGEN SATURATION" name is marked as preferred?
16:10:56 <onoratovaticone> yes ...
16:10:58 <onoratovaticone> I'll check
16:11:55 <onoratovaticone> no... I've modified. have I to restart the server ?
16:12:19 <djazayeri> no, you just need to save it.
16:12:27 <onoratovaticone> ok ... let's try
16:12:31 <onoratovaticone> one moment
16:12:57 <onoratovaticone> @djazayeri: are you sure that the syntax are correct ?
16:13:12 <djazayeri> all you should have to do is put the name where the uuid used to be.
16:16:42 <onoratovaticone> @djazayeri: yes, in the form of modify concept I've "BLOOD OXYGEN SATURATION" with flag setted to preferred
16:17:11 <djazayeri> it's capitalized correctly, and there are no leading or trailing spaces?
16:17:45 <rafa__> wluyima: I committed it. I changed the order meaing I create core tables with liquibase and then try to import test data and then update the tables
16:17:54 <wluyima> rafa__, thanks
16:18:39 <rafa__> wluyima: Doing the import first was successful, but creating core tables failed
16:18:40 <djazayeri> rafa__, wluyima: I haven't been following this, but isn't the test data going to be for a prior OpenMRS version?
16:19:08 <djazayeri> so you can't just import it into pre-created core tables?
16:19:30 <rafa__> djazayeri: yes, but the dump is suppose to delete pre-created tables and create one from the dump
16:20:14 <djazayeri> rafa__: hmm, okay, just make sure this doesn't mess up the liquibasechangelog...
16:20:26 <wluyima> djazayeri, i think rafa__ meant the process of creating tables by importing existing tables from the existing installstion
16:21:12 <djazayeri> I would assume that the test data (that's what you're getting from the existing installation) should actually include structures for all tables, right?
16:21:15 <djazayeri> (eventually, anyway)
16:21:20 <wluyima> rafa__, djazayeri can we leave an option for the user to import the entire database
16:21:36 <djazayeri> wluyima: that seems like it should be a setting in the module.
16:21:50 <wluyima> rafa__, djazayeri this will be fine for installation with a fairly small database
16:21:56 <djazayeri> alternately you could just set the number of patients to 1000000000000.
16:21:57 <wluyima> djazayeri, i agree
16:22:37 <djazayeri> wluyima: I'm fine if we don't put in an explicit option for "all data" but just let them put a very large number of patients.
16:22:50 <djazayeri> i.e. it shouldn't crash if you say 100 patients, but there are only 32 in the database anyway.
16:22:55 <wluyima> djazayeri, rafa__ and i agreed that we should import all tables in the test installstion otherwise certain liquibase changesets will fail
16:23:16 <wluyima> djazayeri, i agree that we can have this as a setting in the module
16:23:44 <djazayeri> onoratovaticone: it ought to work if you just put in the preferred concept name instead of the uuid. If that isn't working, you should file a bug report for the module, and someone will try to recreate it when they have a chance.
16:23:46 <rafa__> wluyima: let's change the module to include all tables then
16:24:10 <rafa__> wluyima: and see if the installation will work
16:24:15 <wluyima> rafa__, am fine with that, how about you djazayeri ?
16:24:27 <djazayeri> rafa__, wluyima: fine with me for now
16:24:53 <djazayeri> structure for sure
16:25:11 <djazayeri> table structures for sure, I mean
16:25:41 *** dkayiwa has joined #openmrs
16:26:16 <onoratovaticone> @djazayeri: ok. Let's check. so you're saying that instead of "name":"be4f6e96-1691-11df-97a5-7038c432aabf" I have to write "name":"BLOOD OXYGEN SATURATION"
16:26:31 <onoratovaticone> ok ?
16:26:48 <djazayeri> onoratovaticone: "concept":"…"
16:27:18 <djazayeri> not "name":
16:28:15 <onoratovaticone> ah, yes. I'm sorry.
16:31:39 <wluyima> rafa__, i think 5 seconds is a very small timeout interval
16:32:24 <rafa__> wluyima: it's just for testing :)
16:32:38 <wluyima> i added utility method which returns an input stream given a url to read from data
16:32:38 <rafa__> wluyima: I don't want to wait longer
16:33:25 <rafa__> wluyima: but I guess I'm done with testing the connection so we can change that to anything longer
16:33:27 <wluyima> rafa__, you could use so that we have those urlconnection properties set from one place
16:33:49 <rafa__> wluyima: I'll create a code-review when I'm finished and ask you for those comments
16:34:19 <rafa__> wluyima: now, my focus is on making this work :)
16:37:41 <rafa__> wluyima: haha I got funny error : MySQL server has gone away
16:40:23 <wluyima> rafa__, ok
16:40:34 <wluyima> rafa__, djazayeri am off for lunch with the group, catch u later
16:43:51 *** surangak has joined #openmrs
17:02:00 *** onoratovaticone has quit IRC
17:06:32 *** mnunez has quit IRC
17:21:04 <rafa__> wluyima: let me know when you're back
17:22:36 *** r-friedman has joined #openmrs
17:23:01 <r-friedman> djazayeri: hi darius, got a minute?
17:23:07 <djazayeri> hi r-friedman
17:23:24 <r-friedman> i'm working on this jss lab thing
17:23:36 <djazayeri> ok
17:23:43 <r-friedman> in order to determine "normal" ranges for a test, i need to do a logic test
17:23:51 <r-friedman> different logic tests for each test type
17:24:07 <djazayeri> you need more than just the normal range in concept_numeric, I assume?
17:24:20 <r-friedman> it might be based on sex, age, a patient attribute, a problem or program membership
17:24:41 <r-friedman> yes, this is how we fill the fields in concept_numeric
17:25:00 <r-friedman> the idea is that the numbers depend on patient characteristics
17:25:31 <r-friedman> so my question is, is there a standard openmrs capability such as logic or cohort to do this with?
17:25:58 <r-friedman> i can develop my own limited system, but would prefer to use something built in
17:26:15 <djazayeri> Could you use logic, and groovy rules for this?
17:26:50 <r-friedman> that's sort of what I was thinking, what are logic's capabilities?
17:26:56 <djazayeri> You can write rules in groovy
17:27:16 <r-friedman> I want to define rules and see which ones a given patient satisfies
17:27:47 <djazayeri> Yes, in theory you should be using logic for this.
17:28:00 <r-friedman> "in theory"?
17:28:30 <djazayeri> Logic isn't as mature as we'd like, but it's the right tool
17:29:06 <djazayeri> You can use it to figure out "is the patient female"
17:29:09 <r-friedman> ok, i'll read up on it
17:29:28 <r-friedman> if it's sort of like the cohort builder, it will be fine I think
17:29:33 <djazayeri> or also you could write a complex rule that does if (female) return x; else return y;
17:29:33 *** onoratovaticone has joined #openmrs
17:29:42 <djazayeri> it's not like the cohort builder
17:30:30 <r-friedman> ok, can it access all core openmrs objects?
17:30:48 <djazayeri> one way or another, yes
17:30:57 <djazayeri> because you can write rules in groovy (i.e. java++)
17:31:24 <r-friedman> some people on jss project think groovy is a waste of time
17:31:43 <djazayeri> That's silly
17:31:52 <djazayeri> If you know java, groovy takes you literally < 1 hour to learn
17:32:28 <r-friedman> i think they're worried about it's general level of acceptaqnce
17:32:39 <djazayeri> not to say that groovy is a hammer for all nails, but it's definitely worth the time to learn it at a cursory level
17:33:05 <djazayeri> I also worry about that, but it gets turned into java bytecode, so you're safe
17:33:26 <r-friedman> is it a run time or compile time thing?
17:33:40 <djazayeri> runtime
17:34:09 <djazayeri> the way we use it in logic is to allow you to define a rule in the database, and let groovy take care of compiling it to java bytecode at runtime
17:34:11 <r-friedman> so i could chqange the logic without changing the program?
17:34:22 <djazayeri> yes
17:34:42 <r-friedman> ok i will study up tks
17:37:58 *** srinivasa has joined #openmrs
17:40:46 *** djazayeri has left #openmrs
17:42:11 *** nickwilkie has quit IRC
17:42:32 *** nickwilkie has joined #openmrs
17:44:38 *** noirin has quit IRC
17:45:53 <jriley> dkayiwa, I have a question about providers in 1.9 .
17:46:08 <dkayiwa> ok
17:46:10 <jriley> I know you can describe the role a provider had, like "nurse" or "med student"
17:46:17 <dkayiwa> yes
17:46:29 <jriley> Is that a provider attribute, or is that something that's different for each encounter?
17:46:48 <dkayiwa> jriley: that is an Encounter Role
17:47:21 <dkayiwa> jriley: so it can be the same for different encounters
17:47:29 <jriley> Hm! I had totally overlooked that admin item
17:47:30 <jriley> Thanks
17:47:36 <dkayiwa> :)
18:02:45 *** djazayeri has joined #openmrs
18:02:45 *** ChanServ sets mode: +o djazayeri
18:04:20 *** rafa__ has quit IRC
18:14:21 <wluyima> djazayeri, what is the effect of having a module both in the bundled module folder and app data directory?
18:17:13 <djazayeri> wluyima: it's fine
18:17:17 <djazayeri> it should be fine anyway
18:17:29 <djazayeri> I think the later module version wins
18:21:29 <djazayeri> hi dkayiwa
18:21:36 <dkayiwa> hi djazayeri
18:22:52 <djazayeri> I have some questions for you about the process of building the standalone
18:22:59 <djazayeri> Is it fully documented somewhere?
18:23:00 <dkayiwa> ok
18:23:07 <dkayiwa> in the readme.txt
18:23:31 <djazayeri> hmm, okay, not sure how I missed that, let me read it first.
18:23:38 <dkayiwa> ok
18:24:15 <wluyima> djazayeri, ok thanks
18:25:25 <djazayeri> dkayiwa: I want to automate the build process so it can all happen through maven
18:25:32 <dkayiwa> ok
18:25:52 <djazayeri> btw, I don't think the readme instructions are right
18:25:52 <r-friedman> djazayeri: ping me when you get free please
18:26:02 <dkayiwa> wluyima: in what situation would you have a module in both the bundled and app data folder?
18:26:05 <djazayeri> dkayiwa: because I didn't do a bunch of those things, but it worked anyway
18:26:16 <dkayiwa> ok
18:26:32 <dkayiwa> djazayeri: i think they are getting old :)
18:26:48 <djazayeri> np, soon it should be as easy as "mvn standalone:build" :-)
18:27:00 <dkayiwa> djazayeri: cant wait for that. :)
18:27:05 <djazayeri> r-friedman: what's up?
18:27:19 <r-friedman> so the logic pages in the wiki are not very informative
18:27:35 <r-friedman> is there anything else to look at, or can you dump me some logic tables to look at?
18:27:38 <djazayeri> r-friedman: yeah, I should have warned you about that
18:28:39 <djazayeri> r-friedman: the brief summary is that logic can have multiple implementations of RuleProvider
18:28:58 <djazayeri> the built-in one uses the logic_rule_definition table (I think that's what it's called)
18:29:13 <djazayeri> try here: http://demo.openmrs.org/openmrs/module/logic/manageRuleDefinitions.list
18:29:26 <djazayeri> with a groovy rule as defined here: https://wiki.openmrs.org/display/docs/User-defined+Rules
18:29:52 <djazayeri> (and you can always just write Java as groovy)
18:30:53 <djazayeri> It should be straightforward to go from the example Age rule to an is-adult? or is-child? rule
18:30:58 <wluyima> djazayeri, because the test install imports modules that are already bundled too
18:31:27 <djazayeri> dkayiwa: ^^ that's meant for you
18:31:35 <dkayiwa> :D
18:31:42 *** raff has joined #openmrs
18:31:49 *** raff is now known as rafa__
18:32:11 <djazayeri> rafa__, dkayiwa, wluyima: I think we have quorum for a scrum
18:32:22 *** onoratovaticone has quit IRC
18:32:33 <rafa__> hi
18:32:37 *** kishoreyekkanti has joined #openmrs
18:33:10 *** srinivasa has quit IRC
18:33:32 <djazayeri> rafa__: you're always ready to go first. :-)
18:33:55 <rafa__> Yesterday: * Worked on TRUNK-2826: Installation wizard should download a SQL dump file and use it to generate a test dataset https://tickets.openmrs.org/browse/TRUNK-2826 Today: * Finally made TRUNK-2826 work. Needs to go back to TRUNK-2830: Add a GenerateTestDataController https://tickets.openmrs.org/browse/TRUNK-2830 to export proper tables No blockers
18:34:31 <djazayeri> rafa__: by the end of tomorrow, how far do you think we'll be in this whole process?
18:35:43 <rafa__> djazayeri: it depends how complex 2830 we want
18:36:15 <rafa__> djazayeri: I mean I would suggest to export all tables omitting patient data
18:36:17 <djazayeri> rafa__: can we be at the point where we're exporting all metadata and zero patient data?
18:36:22 *** mnunez has joined #openmrs
18:36:33 <wluyima> djazayeri, ok
18:36:36 <rafa__> djazayeri: yes, that's what I meant
18:36:38 <mnunez> Hi everyone!
18:36:46 <wluyima> apparently ben has just showed up at RG
18:36:47 <djazayeri> rafa__: I don't know if you're familiar with the phrase "great minds think alike". :-)
18:36:58 <rafa__> head that :-)
18:37:05 <rafa__> *heard
18:37:27 <djazayeri> Okay, so does that sound like something that's doable by end-of-day-today?
18:37:41 <rafa__> yes, it's doable today
18:37:48 <rafa__> I have exporting everything working right now
18:38:04 <djazayeri> great, and by tomorrow can we be exporting just some patient?
18:38:05 <rafa__> it's just a matter of getting rid of patient data
18:38:39 <rafa__> it's possible but no promise ;-)
18:39:01 <djazayeri> Okay, well, that's our target.
18:39:01 <rafa__> I mean it gets complicated because we need to look for foreign keys
18:39:15 <rafa__> and satisfy them while exporting patients
18:39:28 <djazayeri> Yeah.
18:39:34 <djazayeri> I'm 100% okay with something hacky.
18:40:04 <djazayeri> i.e. if we can at least get this working for all core tables (where we can manually enumerate the necessary links) that's a good start.
18:40:23 <rafa__> okay
18:40:43 <rafa__> again I had a similar approach in mind :)
18:40:47 <wluyima> rafa__, did you try logging in after importing data?
18:40:53 <rafa__> wluyima: yes
18:41:01 <wluyima> rafa__, apparently i cant
18:41:18 <rafa__> wluyima: ohh you need to use credentials from the production server :)
18:41:25 <r-friedman> djazayeri: pls ping me when done
18:41:54 <wluyima> rafa__, that is what am using
18:42:06 <djazayeri> let's finish up the scrum first
18:42:07 <mnunez> dkayiwa: I'm still puzzled by this XForm error. Take a look at these screenshots
18:42:10 <mnunez> http://imageshack.us/photo/my-images/339/vistaml.png/
18:42:15 <OpenMRSBot> <http://ln-s.net/9JcX> (at imageshack.us)
18:42:18 <djazayeri> wluyima: what's your status?
18:42:26 <mnunez> dkayiwa: http://imageshack.us/photo/my-images/408/modify.png/
18:42:28 <OpenMRSBot> <http://ln-s.net/9JcZ> (at imageshack.us)
18:43:49 <mnunez> dkayiwa: those are the "modify" and "view" sections of the same encounter. The view shows every observation, the XForm does not.
18:44:32 <dkayiwa> mnunez: is it reproducible on a totally new form?
18:44:40 <mnunez> dkayiwa: I cannot reproduce the error in the demopage, it works just fine in there.
18:44:53 <mnunez> dkayiwa: New form and new ConvSet both
18:45:06 <dkayiwa> mnunez: which version of openmrs and xforms module are you using?
18:45:21 <djazayeri> wluyima: ?
18:46:05 <mnunez> dkayiwa: 1.8.2 and 4.0.7.2
18:46:07 <djazayeri> okay, dkayiwa, you're next then
18:46:16 <djazayeri> (sorry mnunez, have to borrow dkayiwa for a bit)
18:46:21 <dkayiwa> Committed review comments for: Add Service layer to release testing module - TRUNK-2828
18:46:21 <dkayiwa> About to commit: Add a settings page for the release testing module - TRUNK-2831
18:46:22 <dkayiwa> No Blockers
18:46:45 <djazayeri> dkayiwa: are you seeing the vision of how all these tickets are going to fit together?
18:46:54 <dkayiwa> djazayeri: yes
18:47:08 <djazayeri> okay, what are you looking at next?
18:47:19 <wluyima> djazayeri, sorry
18:47:21 <dkayiwa> not yet decided :)
18:47:33 <wluyima> just a sec
18:48:44 <djazayeri> rafa__, wluyima: do you know what tickets should be up next?
18:49:06 <rafa__> djazayeri: I guess we should have the authorization addded
18:49:19 <rafa__> djazayeri: do we have a ticket for that?
18:49:37 <djazayeri> rafa__: what do you mean by that? Does the module currently give you data without needing privileges?
18:49:44 <rafa__> djazayeri: yes :)
18:50:11 <djazayeri> Okay, yes, we need a ticket for that. Should be a one-liner, though, right?
18:50:12 <wluyima> yesterday:
18:50:12 <wluyima> -Refactored code in the init wizard to make it actually work with the new changes(with help from rafa__)
18:50:12 <wluyima> -Code review sprint tickets
18:50:12 <wluyima> -TRUNK-2827 - Installation wizard should request for all modules from the production server
18:50:12 <wluyima> -Fixing the TestController to actually return the zip file now that daniel has implemented the service layer
18:50:14 <wluyima> today:
18:50:16 <wluyima> -Get the install wizard side of things functional,
18:50:18 <wluyima> -Working with rafa to get the data importing working
18:50:20 <wluyima> -developer call
18:50:22 <wluyima> -sprint tickets
18:50:24 <wluyima> no blockers
18:50:47 <rafa__> djazayeri: that's right, but needs to be taken care on both sides
18:50:51 <wluyima> djazayeri, part of my task s today is to create more tickets for things that need to be ironed out
18:50:56 <djazayeri> wluyima:
18:50:59 <djazayeri> great
18:51:25 <djazayeri> wluyima: if you can keep this up to date, it'd be helpful: https://wiki.openmrs.org/display/RES/Improved+release+testing+by+loading+partial+production+data+into+a+Standalone
18:51:35 <wluyima> and to coordinate rafa with getting things working
18:51:38 <djazayeri> alternately, once we get Ben to fix up the sprint dashboard maybe we won't need it
18:51:55 <wluyima> djazayeri, ok
18:51:57 <djazayeri> wluyima: make sure to get dkayiwa set up with the next high-priority ticket
18:52:04 <rafa__> wluyima: haha I don't need coordination :P
18:52:14 <dkayiwa> :)
18:52:25 <wluyima> i will, by the time he gets up tomorrow morning, i will something for him
18:52:45 <djazayeri> great
18:52:48 <djazayeri> My turn
18:52:53 <wluyima> ok
18:52:55 <djazayeri> Wednesday:
18:52:55 <djazayeri> * continue work: STAND-31
18:52:55 <djazayeri> * started: STAND-32 - Improved build and package process for standalone
18:52:56 <djazayeri> * University call
18:52:56 <djazayeri> * Design call
18:52:56 <djazayeri> * Project Management call
18:52:57 <djazayeri> Today:
18:52:57 <djazayeri> * Implementers call
18:52:58 <djazayeri> * Dev call
18:52:58 <djazayeri> * Leadership call
18:52:59 <djazayeri> * continue work: STAND-32 - Improved build and package process for standalone
18:52:59 <djazayeri> * on hold: STAND-31 and STAND-17 (one-time prompt for standalone configuration on initial startup)
18:53:15 <wluyima> rafa__, sorry about my typos
18:55:01 <wluyima> djazayeri, great
18:55:09 <djazayeri> no blockers for me, but doing the packaging via maven is complicated
18:56:22 <djazayeri> so far I've got it set up so that as part of the maven process we build the schema-only + core-data by running liquibase through maven
18:57:14 <djazayeri> Next step is to write a maven plugin to actually shut down the mysql database after this, and to do the packaging that's currently in the shell script.
18:57:31 <jriley> dkayiwa, djazayeri, I put my testing notes on http://notes.openmrs.org/Testing-Feedback and opened some bug and feature tickets. Daniel, I'll post the link to the dev and implementers lists this afternoon. I need to go to the library
18:57:33 <djazayeri> Partly this is because I want to learn how to write a maven plugin. But I also think it's the right approach.
18:57:44 <djazayeri> Opinions welcome.
18:57:54 <dkayiwa> thanks so so much jriley !!!!!!!
18:57:59 <djazayeri> thanks jriley
18:58:04 <jriley> my pleasure
18:58:09 <dkayiwa> :)
18:58:39 <djazayeri> Okay, so rafa__, dkayiwa, wluyima: by tomorrow let's try to have the whole thing working end-to-end, with minimal data
18:58:49 <djazayeri> Does anyone think that's not going to be possible?
18:59:42 *** jriley has left #openmrs
19:00:22 *** nribeka has joined #openmrs
19:00:32 *** ChanServ sets mode: +v nribeka
19:01:40 <wluyima> djazayeri, ok
19:02:53 <wluyima> djazayeri, am not sure
19:03:39 <wluyima> djazayeri, am quite poor at maven that i'm not 100% about everything doable in maven
19:03:59 <rafa__> wluyima: what maven has to do with that?
19:04:17 <wluyima> rafa__, did you read djazayeri 's last comments
19:04:28 <wluyima> rafa__, he is building the standalone i think with maven
19:04:39 <rafa__> no :)
19:05:12 <wluyima> djazayeri, i think i mixed up comments, my apologies
19:05:35 <wluyima> the is possible came after his report and i mixed up things
19:06:22 <rafa__> okay are we done with scrum?
19:06:26 <djazayeri> yes
19:06:33 <djazayeri> sorry, I'm already on another call. :-)
19:06:51 <rafa__> wluyima: so what was your login problem?
19:14:39 <wluyima> rafa__, i just can't login
19:15:00 <rafa__> wluyima: okay any exceptions during installation?
19:15:37 <rafa__> wluyima: are you running the standalone 1.8 with the module installed?
19:15:46 <rafa__> or something different
19:15:47 <rafa__> ?
19:16:11 <rafa__> wluyima: did you update the module on the standalone?
19:21:44 *** mnunez has left #openmrs
19:23:52 *** mnunez has joined #openmrs
19:23:54 <wluyima> rafa__, am running the 1.9 standalone
19:24:14 <rafa__> wluyima: I haven't tested it with 1.9
19:24:21 <wluyima> rafa__, i probably need to update the module
19:24:39 <wluyima> rafa__, because right now even the import is failing
19:24:44 <wluyima> let le update
19:24:54 <rafa__> wluyima: yeah you should
19:25:01 <rafa__> wluyima: but it's good that you're running 1.9
19:25:11 <rafa__> wluyima: we'll have at least 1.8 and 1.9 covered
19:25:48 <rafa__> make sure to update both the server and the client
19:26:53 <rafa__> wluyima: ohh and run the standalone without demo data
19:27:02 <rafa__> wluyima: because with demo data it's too big
19:27:12 <rafa__> wluyima: you'd have to change packet size in mysql
19:27:27 <wluyima> rafa__, i have been running with demo data
19:27:41 <wluyima> rafa__, i will make the changes, thanks
19:29:51 <surangak> downeym, looks like im getting the shirt !
19:30:14 <surangak> I refer to CSICOn tee shirt :P
19:32:04 <wluyima> rafa__, thinsg work fine now after updating the module, good job!!
19:32:20 <rafa__> awesome!
19:33:44 *** mnunez has quit IRC
19:33:58 *** mnunez has joined #openmrs
19:34:05 <djazayeri> woohoo!
19:38:44 <rafa__> wluyima: djazayeri can you help me out listing tables with patient data?
19:39:59 <djazayeri> maybe: patient*, person*, encounter*, *obs*, *order*, exclude anything with "type"
19:47:07 <rafa__> djazayeri: do we want to disconnect users from persons in cases when we do not include specific persons?
19:48:04 <djazayeri> rafa__: we definitely need to include every person that has an attached user
19:48:19 <rafa__> I see
19:48:22 <djazayeri> we'll also need to include every person who we include as a patient
19:48:58 <djazayeri> and we'll also need to include every person that's in a relationship with a person who's otherwise included
19:49:24 <rafa__> fun begins :-)
19:50:36 <surangak> hmm.. djazayeri I just found out that your prof. Saman amarasinghe is an aluminus of ours !
19:50:44 <surangak> djazayeri, :-)
19:51:43 <surangak> http://en.wikipedia.org/wiki/List_of_Royal_College_Colombo_alumni
19:53:49 <djazayeri> surangak: he's actually the one who indirectly got me working in this field
19:54:09 <surangak> djazayeri, its a small world, I guess
19:54:26 <surangak> so me, suho and He are from the same secondary school :P
19:54:31 <surangak> and Upul also
19:54:41 <surangak> smaaaaaal worldddddd :)
19:55:15 <djazayeri> surangak: I was unhappy doing "regular computer science research", and I asked for help finding something different. He had gone to a talk by Hamish about exchanging digitized xrays in developing countries, and pointed me there.
19:56:01 *** burke has joined #openmrs
19:56:01 *** ChanServ sets mode: +o burke
19:56:05 <surangak> djazayeri, lucky you, I guess thats why everyone calls US the land of opportunity :)
19:56:18 <surangak> so is Prof. Saman like really famous over there ?
19:58:13 <djazayeri> surangak: he was my advisor (randomly-assigned)
19:58:19 *** burke has quit IRC
19:58:25 *** burke has joined #openmrs
19:58:25 *** ChanServ sets mode: +o burke
20:05:29 <rafa__> wluyima: click "ready for work" for RELTEST-7 please :)
20:05:47 <rafa__> wluyima: or else add me to module admins
20:08:28 <wluyima> rafa__, ok
20:10:27 <wluyima> rafa__, your're set, i have added you to the list of admins and changed the status
20:10:39 <rafa__> wluyima: thanks!
20:13:50 <finbrein> djazayeri: i'm getting 3 errors during the openmrs project setup in Eclipse. There is no market entries for maven-antrun-plugin:1.4 and maven-java-formatter-plugin:0.3. This occurred after using checkout the project and getting to the "Setup Maven Plugin Connectors" dialog box.Can you advise?
20:16:20 <rafa__> finbrein: you can ignore these errors and the project should build fine
20:17:32 <rafa__> finbrein: else you can open pom.xml in Eclipse and click overview in the top and choose permanently mark as ignored
20:18:27 <rafa__> then update project configuration
20:18:37 <rafa__> via maven menu
20:18:56 <finbrein> ok got it rafa__, there is another error with the OpenMRS Dependency Installer... the current subclipse version is 1.6.x but the version from OpenMRS plugin is 1.4.x
20:19:45 <rafa__> I haven't seen that, can you ignore it as well?
20:19:49 *** surangak has quit IRC
20:20:25 <finbrein> sure
20:34:23 *** burke is now known as burke_away
20:40:52 *** downeym has quit IRC
20:43:20 *** downeym has joined #openmrs
20:43:20 *** ChanServ sets mode: +o downeym
20:43:20 *** OpenMRSBot sets mode: +o downeym
20:48:38 *** kishoreyekkanti has quit IRC
20:56:02 <djazayeri> r-friedman: hi
20:56:23 <r-friedman> djazayeri: hi
20:56:36 <djazayeri> you had a ? earlier?
20:56:51 <r-friedman> one time i was on a page that showed the text of a rule and 4 radio buttons for ways of creating rules
20:57:04 <r-friedman> (this is in the TB demo)
20:57:13 <r-friedman> but now I can't seem to get back to that page
20:57:46 <r-friedman> i think i must lack a privilege to admin rules, but how can that be if i am admin?
20:59:04 <djazayeri> not sure
20:59:23 <r-friedman> am i remembering correctly what the page looks like?
20:59:32 <djazayeri> not sure
20:59:40 <r-friedman> now when I try add rule, I get a page with a language dropdown with groovy and java
20:59:59 <r-friedman> before i had sql statement and logic expression available
21:00:18 <r-friedman> as well
21:00:42 <djazayeri> r-friedman: maybe that's the patient flags module
21:01:04 <r-friedman> ah could be, i was looking at it
21:02:24 <r-friedman> maybe you sent me to a demo page? it appears i may be in a different version of logic
21:02:43 <r-friedman> the admin page has different options than where you sent me
21:03:10 *** rafa__ has quit IRC
21:03:29 <r-friedman> the demo has token reg, rule defs, test logic expressions, initial setup
21:03:57 <r-friedman> the pih demo has register default rules, logic expression tester
21:04:27 <r-friedman> i guess that's the answer
21:04:32 *** srinivasa has joined #openmrs
21:05:45 <djazayeri> r-friedman: the demo is logic 0.5
21:06:00 <r-friedman> the demo has 0.5, pih apparently has logic in core because it's not under maintain modules, although it has the admin tabs
21:06:06 <djazayeri> pih demo may only be 0.4
21:06:37 <r-friedman> ok, i am temporarily unconfused. is there a way to view existing logic tokens/rules?
21:07:01 <djazayeri> does pih = mdrtb demo?
21:07:14 <r-friedman> yes
21:08:28 <djazayeri> that doesn't use logic as far as i know
21:09:53 <r-friedman> it appears to have 100 or so logic tokens
21:09:59 *** Gagaman has joined #openmrs
21:10:29 *** mnunez has quit IRC
21:11:10 <r-friedman> so using 0.5, i would be writing tokens or rules or both?
21:11:51 <djazayeri> r-friedman: can you give me an url?
21:12:26 <r-friedman> pih is https://mdrtbdemo.pih-emr.org/openmrs/module/logic/logic.form
21:12:31 <OpenMRSBot> <http://ln-s.net/9Jem> (at mdrtbdemo.pih-emr.org)
21:14:08 <r-friedman> demo is http://demo.openmrs.org/openmrs/module/logic/editRuleDefinition.form
21:14:42 <r-friedman> so my module has to register tokens in code and then they can be used in rules?
21:20:55 <djazayeri> r-friedman: is the module trying to do this to be generally useful? or for a particular implementation?
21:21:19 <r-friedman> the module needs some logic capability
21:21:36 <r-friedman> it needs to base the logic on patient data of pratically every kind
21:22:07 <r-friedman> and it needs to be changeable by the sysadmin
21:22:39 <djazayeri> do the rules depend on concepts?
21:23:03 <djazayeri> I mean, will you have a rule like "low range for hematocrit"?
21:23:16 <r-friedman> only in the sense that concepts identify obs and active list elements and possibly person attributes
21:23:18 <djazayeri> or are the rules like "is adult?"
21:23:36 <r-friedman> most of the rules are just an age range
21:23:47 <r-friedman> but some depend on ethnicity
21:23:51 <r-friedman> or sex
21:24:04 <r-friedman> or pregnancy status
21:25:14 <djazayeri> so, one approach is that when your module is started up, it creates some rules for these things by inserting into the logic_rule_definition table (through the api)
21:26:19 <r-friedman> the rules are composed of tokens?
21:26:41 <r-friedman> AGE>29 is a rule, AGE is token?
21:27:00 <djazayeri> Rules are registered with tokens
21:27:06 <djazayeri> rule = the thing that calculates it
21:27:16 <djazayeri> token = the pointer to it in a particular system
21:27:32 <djazayeri> you could have "AGE" as a token (which runs AgeRule)
21:28:20 <r-friedman> OK, and the groovy/java code is the rule
21:28:22 <djazayeri> and you could have "AGE GREATER THAN 29" as a token, which runs AgeInRangeRule(29,null)
21:29:31 <djazayeri> Yes, the things you define in groovy/java are rules.
21:29:42 <djazayeri> If you do it through the UI, they get automatically registered with tokens.
21:29:55 <djazayeri> There are also other possilble RuleProviders
21:30:03 <r-friedman> but you can't specify parameterized rules thru the interface?
21:30:04 *** dkayiwa has quit IRC
21:30:06 <djazayeri> e.g. the Arden-based one that chica uses.
21:30:22 *** downeym has quit IRC
21:30:53 <djazayeri> r-friedman: rules are supposed to be able to take parameters, and I think that code is written, but I've never used it.
21:31:20 <r-friedman> so what's the out of the box capability? so your AgeInRange is not a real example?
21:31:39 <djazayeri> not a real example
21:31:50 <r-friedman> so to be very concrete
21:32:04 <r-friedman> for each lab test, i have multiple rules
21:32:24 <r-friedman> for each rule, there are 4 parameters that I want to set
21:32:34 <r-friedman> only one rule per patient per test will fire
21:33:18 <r-friedman> what the result of rule exectuion is is up to me?
21:33:30 <r-friedman> could be a vector of 4 values or null?
21:34:14 <r-friedman> (i guess null is a vector of 4 values if that is the flavor of the day)
21:34:28 <djazayeri> r-friedman: what are the 4 parameters?
21:34:41 <r-friedman> critical low, critical high, normal low, normal high
21:35:13 <djazayeri> so you want to *produce* 4 outputs per lab test
21:35:32 <r-friedman> well all 4 are produced at the same time.
21:35:48 <r-friedman> i could execute the same rules 4 times with 4 different results if that were crtiical
21:36:10 <r-friedman> specify, not execute
21:36:19 <r-friedman> substance would be the same, names would be diffeerent
21:36:54 <djazayeri> Once you've decided which rule to fire, are the 4 outputs fixed, or also dependent on age/weight/height?
21:37:45 <r-friedman> Any other influences are included in the rule, the result is 4 fixed outputs from the rule that fires
21:38:27 <r-friedman> i could always output an index and keep the 4 values in a table
21:38:34 <djazayeri> okay, so effectively you'll have a big table of (lab test, minAge, maxAge, gender, …) -> [critical-low, normal-low, normal-high, critical-high]
21:38:45 <r-friedman> yep
21:39:03 <djazayeri> But the tricky part is the ... ?
21:39:20 <r-friedman> but i'm actually thinking lab test, logic expression, [-> [...]
21:40:11 <r-friedman> so the tricky part is creating the table at module load time
21:40:14 <r-friedman> from xml or something
21:40:29 <djazayeri> honestly, I would suggest that you avoid logic except where you have to use it.
21:40:51 <djazayeri> Given its immaturity and performance issues.
21:41:01 <djazayeri> I imagine you'd be testing hundreds of these rules per page-load, right?
21:41:20 <r-friedman> actually, we won't run more than 8 per page load
21:41:29 <djazayeri> hmm, okay
21:41:53 <r-friedman> all on one patient
21:41:59 *** mnunez has joined #openmrs
21:42:03 <djazayeri> still, I'd say have a table like (lab test, minAge, maxAge, gender, logicExpression) -> ...
21:42:14 <djazayeri> and you only use logicExpression when the others aren't sufficient.
21:42:49 <djazayeri> This is assuming that age and gender (or other statically-known things) can cover 80% of the use case.
21:42:55 <r-friedman> that's sort of what I had planned, but with logic expression restricted to a particular value of a given person attribute
21:43:20 <r-friedman> it's only when I began thinking about pregnancy that I got to htinking about logic
21:43:44 <r-friedman> that's got to come from a program or active list
21:44:20 <djazayeri> The other thing you could do is have your table store something like (labTest, checkType, checkParameters)
21:44:50 *** Gagaman has quit IRC
21:45:02 <djazayeri> where checkType can be something like AgeAndGender, or LogicExpression, or HasProblem
21:45:19 <r-friedman> yeah, but I've got to write each one
21:45:38 <djazayeri> Well, start with just AgeAndGender, and LogicExpression :-)
21:45:52 <r-friedman> maybe I'll just steal the groovy idea and build expressions
21:45:55 <djazayeri> or I guess you can start with just LogicExpression
21:46:09 <djazayeri> So, can we work through an example on the demo server?
21:46:19 <djazayeri> I'm curious whether we can actually build the relevant rule in groovy
21:46:36 <r-friedman> ok
21:47:29 <r-friedman> let's try looking for membership in a program whose concept is the pregnancy concept
21:47:52 <djazayeri> okay
21:48:11 <djazayeri> I imagine we have to create the program
21:49:14 <r-friedman> let's say we read it in from an xml file or load the logic rules table from sql
21:49:17 <djazayeri> can you do that? taking a quick phone call
21:49:20 *** nribeka has quit IRC
21:52:14 <djazayeri> I meant create a program. :-)
21:53:47 <djazayeri> r-friedman: okay, i'm back
21:54:04 <djazayeri> I mean, let's try an example of what testing for program membership would look like in a rule
21:54:42 *** Gagaman has joined #openmrs
21:54:47 *** mnunez has quit IRC
21:55:47 <r-friedman> HashSet x = context.getPatientPrograms(3);
21:56:29 <r-friedman> for xx : x { if xx.getConcept=136 {return 3;} }
21:56:38 <r-friedman> return -1;
21:57:45 <r-friedman> first 3 is patient id, concept 136 is pregnant, returned 3 means use row ID 3 of the 4 parameters table
22:01:25 <r-friedman> hopefully the test ranges table will look something like ID, Test ID, logic expression, 4 values -- perhaps with sex, min age, max age since they're so frequent
22:05:31 *** Gagaman has quit IRC
22:05:57 *** mnunez has joined #openmrs
22:09:04 <djazayeri> r-friedman: okay, so I did "In Pregnancy Program" as an example.
22:09:12 <r-friedman> yes, i saw it
22:09:19 <djazayeri> finally got it working
22:09:27 <r-friedman> woo ha
22:09:31 <djazayeri> it will test true for 2525MT-6: Mary Ambasa Sirikkwa
22:10:29 <r-friedman> so this rule is now persisted in the rules table?
22:10:34 <djazayeri> yes
22:11:15 <r-friedman> so suppose it returns true or false instead of 3
22:11:30 <djazayeri> oh, right, you could change that
22:11:48 <r-friedman> and i want to go through a loop of all the conditions for a particular test at least until i find the right range
22:12:34 <r-friedman> would i want to register the rules just in time or load all of them at module startup?
22:13:04 <djazayeri> Maybe at module startup you would register any that aren't registered yet?
22:13:13 <djazayeri> i.e. it only happens once
22:13:27 <djazayeri> so, the reason to use logic is that it gives you a decent path for defining arbitrarily-general stuff, and also for letting admin change the definitions on their live system
22:13:28 <r-friedman> so it might as well be through the admin UI
22:13:33 <djazayeri> yeah
22:13:48 <r-friedman> is there an edit rule function?
22:13:49 <djazayeri> but I would still say that if you can do some of this without logic, you should.
22:14:03 <djazayeri> you mean different from http://demo.openmrs.org/openmrs/module/logic/editRuleDefinition.form?id=1
22:14:04 <djazayeri> ?
22:14:44 <r-friedman> no, i had forgotten when i first looked at the page there were no rules to edit
22:14:47 <r-friedman> all is fine
22:16:02 <r-friedman> i can do a sanity check at startup
22:16:14 <r-friedman> make sure all the referenced rules actually exist
22:16:38 *** srinivasa has quit IRC
22:17:05 <r-friedman> djazayeri: thanks a lot, very helpful
22:19:20 <djazayeri> np
22:19:31 <r-friedman> djazayeri: can i ask you a hibernate question?
22:20:15 <djazayeri> you can ask
22:20:36 <r-friedman> when you have a set, you have a key column name and you have a one-to-many class
22:20:58 <r-friedman> is the column name referencing the parent or the child?
22:21:45 <djazayeri> key is the column in the child which must match the primary key of the parent that it's a member of
22:22:13 <djazayeri> e.g. in Person.hbm.xml in core, <set name="addresses"…><key column="person_id" …/>
22:22:22 <djazayeri> the person_id is referring to person_address.person_id
22:22:30 <r-friedman> and not-nullrefers to the child?
22:22:44 <djazayeri> Not sure about not-null, and why it's there
22:23:02 <r-friedman> yeah, that's what i needed, with all the fields having the same name you can't really tell
22:23:46 <r-friedman> ok, great, thanks, now got a full night's work ahead of me
22:23:59 <djazayeri> enjoy
22:24:07 <r-friedman> ciao
22:24:11 *** r-friedman has quit IRC
22:36:59 *** mnunez has quit IRC
22:37:13 *** mnunez has joined #openmrs
23:10:12 *** burke_away is now known as burke
23:18:31 *** mnunez has quit IRC
23:26:44 *** burke is now known as burke_away
23:32:01 *** wluyima has quit IRC