| Interface | osid.profile.ProfileItemLookupSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session provides methods for retrieving  This session defines two sets of views which offer differing behaviors when retrieving multiple objects. 
 Generally, the comparative view should be used for most applications as it permits operation even if there a particular element is inaccessible. For example, a hierarchy output can be plugged into a lookup method to retrieve all objects known to a hierarchy, but it may not be necessary to break execution if a node from the hierarchy no longer exists. However, some administrative applications may need to know whether it had retrieved an entire set of objects and may sacrifice some interoperability for the sake of precision. ProfileItems may have an additional records indicated by their respective record types.  | ||
| Method | getProfileId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Profile Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getProfile | ||
| Description | 
                     Gets the   | ||
| Return | osid.profile.Profile | the  Profile  associated with this session  | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canLookupProfileItems | ||
| Description | 
                     Tests if this user can perform   | ||
| Return | boolean |  false  if lookup methods are not authorized,  true 
 otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | useComparativeProfileItemView | ||
| Description | 
                     The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | usePlenaryProfileItemView | ||
| Description | 
                     A complete view of the   | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useFederatedProfileView | ||
| Description | 
                     Federates the view for methods in this session. A federated view will include items in profiles which are children of this profile in the profile hierarchy.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useIsolatedProfileView | ||
| Description | 
                     Isolates the view for methods in this session. An isolated view restricts lookups to this profile only.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getProfileItem | ||
| Description | 
                     Gets the   | ||
| Parameters | osid.id.Id | profileItemId | the  Id  of the  ProfileItem  to retrieve  | 
| Return | osid.profile.ProfileItem | the returned  ProfileItem   | |
| Errors | NOT_FOUND | no  ProfileItem  found with the given  Id   |                 |
| NULL_ARGUMENT |  profileItemId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProfileItemsByIds | ||
| Description | 
                     Gets a   | ||
| Parameters | osid.id.IdList | profileItemIds | the list of  Ids  to retrieve  | 
| Return | osid.profile.ProfileItemList | the returned  ProfileItem  list  | |
| Errors | NOT_FOUND | an  Id was  not found  |                 |
| NULL_ARGUMENT |  profileItemIds  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProfileItemsByGenusType | ||
| Description | 
                     Gets a   | ||
| Parameters | osid.type.Type | profileItemGenusType | a profile item genus type | 
| Return | osid.profile.ProfileItemList | the returned  ProfileItem  list  | |
| Errors | NULL_ARGUMENT |  profileItemGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProfileItemsByParentGenusType | ||
| Description | 
                     Gets a   | ||
| Parameters | osid.type.Type | profileItemGenusType | a profile item genus type | 
| Return | osid.profile.ProfileItemList | the returned  ProfileItem  list  | |
| Errors | NULL_ARGUMENT |  profileItemGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProfileItemsByRecordType | ||
| Description | 
                     Gets a   | ||
| Parameters | osid.type.Type | profileItemRecordType | a profile item record type | 
| Return | osid.profile.ProfileItemList | the returned  ProfileItem  list  | |
| Errors | NULL_ARGUMENT |  profileItemRecordType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProfileItems | ||
| Description | 
                     Gets all   | ||
| Return | osid.profile.ProfileItemList | a list of  ProfileItems   | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |