...
''(Just thinking here...maybe we should construct the Arden Class with only the data source, letting the data source control provide the context and/or patient to the Arden Class if needed. I suspect that Arden Classes will primarily make requests to the data source, passing the patient and context. Will Arden Classes need to access other parts of the API? -[archive:~burke]Burke Mamlin)''
Attributes
obsMap
: A map of all the obs that created this DSS Object. The key is the Concept (for example - "birthWt")and the value is the OpenMRS Obs objectconcludeVal
: Does this mlm concluded? The object holds a conclude value (true or false). This qualifies the above obsMapprintStr
: String representation of the mlm including any variable substitution such as name, gender etc.context
: OpenMRS contextlocale
: OpenMRS locale ''(the locale is specified within the context -[archive:~burke]Burke Mamlin)''patient
: patient this DSS object belongs to
...
The Arden Value object consists of obs (1..n OpenMRS objects - specifically the obs that led to the conclusion of mlm being true or false, we do not want the obs that did not contribute to the conclusion of this mlm?). These are the obs that we would want to hold on to for further use in derived concept when the level of decision making is passed a level up. For example in the lowBirthWtCalculated example (a derived concept consisting of - birthWt < 2500 gms or "parent reported" low birth weight), the derived concept "lowBirthWtCalculated" is attributed to say for example - "parent reported", then the obs associated with Arden Value object is "parent reported" and we weed out the other obs (in this case "birthWt"), otherwise we are just going to pass up the "if then" logic of the child Arden Class up to the derived concept. ''(we'll need to discuss this part...not sure I follow -[archive:~burkeFormer user (Deleted)])
Arden Data Source
Any class implementing the ArdenDataSource
interface that provides the ability to transform an Arden Clause (a data request) into an Arden Value.
...
Each Arden Class returns an Arden Value object associated with a patient. One Arden Class can call another (rule chaining) by using the call syntax (in Arden) which results in a chain of the Arden Value objects. More to follow...
Resources
- http://en.wikipedia.org/wiki/Decision_support_system Decision Support System defined
- Team members can download Arden Syntax documentation from http://resources.openmrs.org/download resources.openmrs.org/download using their OpenMRS credentials