| Interface | Description | 
|---|---|
| ComparisonOperator | 
 Marker interface to keep track of the ComparisonOperator sub type 
 | 
| LogicalOperator | 
 Marker for the logical operator 
 | 
| Operand | 
 This is a marker interface for things that can be operated on by an  
Operator in a
 LogicExpression | 
| Operator | 
 An operator used within a logical expression. 
 | 
| TransformOperator | 
 Marker for all transform operator. 
 | 
| Class | Description | 
|---|---|
| After | 
 The After operator works with a date object to tests whether an expression will yield result
 after a certain date position. 
Example: - logicService.parse("'CD4 COUNT'").after(Context.getDateformat().parse("2009/12/04");The above will give us a criteria to check if there's "CD4 COUNT" observations after 12/04/2009  | 
| And | 
 The And operator is a conjunction operator to combine two or more  
LogicCriteria objects.Example: - logicService.parse("'CD4 COUNT'").and(logicService.parse("'WEIGHT (KG)'"));The above will give us a criteria to check if there's "CD4 COUNT" and "WEIGHT (KG)" observations  | 
| AsOf | 
 The AsOf operator works with a date object to test whether an expression will yield result after
 a certain date position 
Example: - logicService.parse("'CD4 COUNT'").asOf(Context.getDateformat().parse("2009/12/04");The above will give us a criteria to check if there's "CD4 COUNT" observations as of 12/04/2009  | 
| Average | 
 The Average operator will calculate the average result from a collection of result returned by
 the logic expression 
Example: - logicService.parse("'CD4 COUNT'").average();The above will give us a criteria to get the average result of the "CD4 COUNT" observations  | 
| Before | 
 The Before operator works with a date object to tests whether an expression will yield result
 before a certain date position. 
Example: - logicService.parse("'CD4 COUNT'").before(Context.getDateformat().parse("2009/12/04");
 The above will give us a criteria to check if there's "CD4 COUNT" observations before 12/04/2009  | 
| Contains | 
 The Contains operator will return results that contains the operand . 
Example: - logicService.parse("EncounterDataSource.ENCOUNTER_KEY").contains("ADULTRETURN");The above will give us a criteria to check if there's encounter ADULTRETURN for a certain patients  | 
| Count | 
 The Count operator will return the number of results returned by the logic service 
Example: - logicService.parse("EncounterDataSource.ENCOUNTER_KEY").count();The above will give us a criteria to get the number of encounter type we have in the system  | 
| Distinct | 
 The Distinct operator will filter out duplicate results and return a set of distinct results. 
Example: - logicService.parse("EncounterDataSource.ENCOUNTER_KEY").distinct();The above will give us a criteria to get all distinct encounter type from the system  | 
| Equals | 
 The Equals operator will test whether a result equals to an operand or not. 
Example: - logicService.parse("EncounterDataSource.ENCOUNTER_KEY").equals("ADULTRETURN");The above will give us a criteria to get only ADULTRETURN encounters  | 
| Exists | 
 The Exists operator test whether a criteria will exist for person or not. 
Example: - logicService.parse("EncounterDataSource.ENCOUNTER_KEY").equals("ADULTRETURN").exists();
 The above will give us a criteria to test whether ADULTRETURN encounter exists or not  | 
| First | 
 The First operator will return a subset result of the entire result returned by the criteria 
Example: - logicService.parse("'CD4 COUNT'").first(2);The above will give us a criteria to get the first two "CD4 COUNT" observations  | 
| GreaterThan | 
 The GreaterThan operator will return result that have a greater value than the operand. 
Example: - logicService.parse("'CD4 COUNT'").gt(200);The above will give us a criteria to get the "CD4 COUNT" observations that has the value numeric more than 200  | 
| GreaterThanEquals | 
 The GreaterThanEquals operator will return result that have a greater value than or equals to the
 operand. 
Example: - logicService.parse("'CD4 COUNT'").gte(200);The above will give us a criteria to get the "CD4 COUNT" observations that has the value numeric more than or equals to 200  | 
| In | 
 The In operator test whether a value is in a collection of value or not. 
Example: 
  Collection answers = Collection.asList("ADULTRETURN"); The above criteria will test whether a patient have EncounterType in the list | 
| Last | 
 The Last operator will return a subset result of the entire result returned by the criteria. 
Example: - logicService.parse("'CD4 COUNT'").last(2);The above will give us a criteria to get the last two "CD4 COUNT" observations  | 
| LessThan | 
 The LessThan operator will return result that have a less value than the operand. 
Example: - logicService.parse("'CD4 COUNT'").gte(200);The above will give us a criteria to get the "CD4 COUNT" observations that has the value numeric less than 200  | 
| LessThanEquals | 
 The LessThan operator will return result that have a less value than or equals to the operand. 
Example: - logicService.parse("'CD4 COUNT'").lte(200);The above will give us a criteria to get the "CD4 COUNT" observations that has the value numeric less than or equals to 200  | 
| Not | 
 The Not operator will negate the a logic expression 
 | 
| NotExists | 
 The NotExists operator test whether a criteria will exist for person or not. 
Example: - logicService.parse("EncounterDataSource.ENCOUNTER_KEY").equals("ADULTRETURN").notExists();
 The above will give us a criteria to test whether ADULTRETURN encounter exists or not  | 
| Or | 
 The Or operator is a disjunction operator to combine two or more  
LogicCriteria objects.Example: - logicService.parse("'CD4 COUNT'").or(logicService.parse("'WEIGHT (KG)'"));The above will give us a criteria to check if there's "CD4 COUNT" or "WEIGHT (KG)" observations  | 
| Within | 
 The Within operator tests whether an expression will yield true for a certain time frame. 
Example: - logicService.parse("'CD4 COUNT'").within(Duration.years(2));The above will give us a criteria to check if there's "CD4 COUNT" observations within the last 2 years  | 
Copyright © 2018 OpenMRS Inc.. All Rights Reserved.