Name | PopulationRuleInfo | |
---|---|---|
Usage | PopulationService | |
getPopulationRule getPopulationRulesByIds getPopulationRuleForPopulation searchForPopulationRules validatePopulationRule createPopulationRule updatePopulationRule | ||
Type | Complex |
ShortName | Name | Type | Description | Required? | Read only? | Cardinality | XML Attribute? | Implementation Notes |
---|---|---|---|---|---|---|---|---|
id | Unique Id | String | The system assigned unique id to identify this Object. Could be implemented as as sequence number or as a UUID. Attempts to set this value on creates should result in a ReadOnlyException being thrown An Id:
|
Required on updates | Read only | One | Yes | |
typeKey | Type Key | String | A unique identifier for the type of this object. | Required | Read only | One | Yes | |
stateKey | State Key | String | A unique identifier for the state of this object. | Required | One | Yes | ||
name | Name | String | A display name for this entity. | One | No | |||
descr | Description | RichTextInfo | A description of the entity. | One | No | |||
searchCriteria | Search Criteria | QueryByCriteria | The search criteria to be used in building this population. *** NOT IMPLEMENTED ***** TODO: Figure out how this can be persisted |
Required when the rule type indicates the population is based on a search criteria | One | No | ||
agendaIds | Agenda Ids | StringList | Agenda Ids to be used in building this population. | Required when the rule type indicates this is based on a KRMS rule | Many | No | ||
groupIds | Group Ids | StringList | A list of Group Ids to be used in building this population. | Required when the rule type indicates this is based on a group | Many | No | ||
personIds | Person Ids | StringList | A list of Person Ids to be used in building this population. Note: this does not hold the list of members unless people can be manually added or removed from the population. |
Required when rule type indicates students can be explicitly added/removed from the population. | Many | No | ||
childPopulationIds | Child Population Ids | StringList | A list of Population Ids to be used in building this population. The operation is determined by the PopuationRule Type. |
Required if the rule type indicates this population is created as a union or intersection or minus other existing populations. | Many | No | ||
referencePopulationId | Reference Population Id | String | The Population Id to be used as the reference population from which the child populations are removed in the minus operation. This is used only in the minus operation to help calculate "all others not caught but the any of the above" use case. |
Required if the rule type is a Minus type | One | No | ||
sortOrderTypeKeys | Sort Order Type Keys | StringList | Gets the valid sort order keys that can be used to sort the members of the Population. The valid sort order keys correspond to the underlying rule sorting capabilities. This may return an empty list indicating the population does not support any particular ordering. |
Many | No | |||
variesByTime | Varies By Time | Boolean | Tests to see if the Population may vary by time. If true then the response to isMemberAtXXXX getMembersAtXXXX methods should be used to assess membership because it is highly likely the population would return a different result depending on the time parameter that is supplied. An example of populations that vary by time include freshman, sophomore, junior, senior, etc... because the answer varies greatly depending on the term in question. Some examples of populations that are not expected to vary with time are males or students with IDs ending in an odd number or US citizens. Note: Saying that a population does not vary with time does not mean that the population does not change over time. Rather it means that calls isMember and isMemberAtXXX methods or getMembers and getMembersAtXXX should normally return the same answer if invoked simultaneously. |
Required | One | No | ||
supportsGetMembers | Supports Get Members | Boolean | Tests to see if this Population supports the getting of an explicit list of the members in this population. Not all populations need to support this method and only support the isMember method which tests. If false then calls to the getMembersXXX family for this population should throw an OperationFailedException exception. |
Required | One | No | ||
meta | Meta | MetaInfo | Create and last update info for the structure. This is optional and treated as read only since the data is set by the internals of the service during maintenance operations. Contains audit trail information about the creation and last update of this object Also contains the version ind used for optimistic locking. Attempts to set or update should result in a ReadOnlyException being thrown. |
Required on updates | Read only | One | No | |
attributes | Dynamic Attributes | AttributeInfoList | List of dynamic attributes, each holding a key-value pair that can be configured to hold additional information for an implementing institution. Note: the key may be repeated more than once to simulate a list of values. |
Many | No |