| Interface | osid.repository.CompositionLookupSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session provides methods for retrieving  This session defines views that offer differing behaviors when retrieving multiple objects. 
  Generally, the comparative view should be used for most 
                applications as it permits operation even if there is data 
                that cannot be accessed. For example, a browsing application 
                may only need to examine the   Compositions may have an additional records indicated by 
                their respective record types. The record may not be accessed 
                through a cast of the   | ||
| Method | getRepositoryId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Repository Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getRepository | ||
| Description | 
                     Gets the   | ||
| Return | osid.repository.Repository | the  Repository  associated with this session  | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canLookupCompositions | ||
| 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 | useComparativeCompositionView | ||
| 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 | usePlenaryCompositionView | ||
| Description | 
                     A complete view of the   | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useFederatedRepositoryView | ||
| Description | 
                     Federates the view for methods in this session. A federated view will include compositions in repositories which are children of this repository in the repository hierarchy.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useIsolatedRepositoryView | ||
| Description | 
                     Isolates the view for methods in this session. An isolated view restricts lookups to this repository only.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useActiveCompositionView | ||
| Description | 
                     Only active compositions are returned by methods in this session.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useAnyStatusCompositionView | ||
| Description | 
                     All active and inactive compositions are returned by methods in this session.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useSequesteredCompositionView | ||
| Description | 
                     The methods in this session omit sequestered compositions.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useUnsequesteredCompositionView | ||
| Description | 
                     The methods in this session return all compositions, including sequestered compositions.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getComposition | ||
| Description | 
                     Gets the    In active mode, compositions are returned that are currently active. In any effective mode, active and inactive compositions are returned. In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Parameters | osid.id.Id | compositionId |  Id  of the  Composiiton   | 
| Return | osid.repository.Composition | the composition | |
| Errors | NOT_FOUND |  compositionId  not found  |                 |
| NULL_ARGUMENT |  compositionId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getCompositionsByIds | ||
| Description | 
                     Gets a    In active mode, compositions are returned that are currently active. In any effective mode, active and inactive compositions are returned. In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Parameters | osid.id.IdList | compositionIds | the list of  Ids  to retrieve  | 
| Return | osid.repository.CompositionList | the returned  Composition list   | |
| Errors | NOT_FOUND | an  Id  was not found  |                 |
| NULL_ARGUMENT |  compositionIds  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCompositionsByGenusType | ||
| Description | 
                     Gets a    In active mode, compositions are returned that are currently active. In any effective mode, active and inactive compositions are returned. In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Parameters | osid.type.Type | compositionGenusType | a composition genus type | 
| Return | osid.repository.CompositionList | the returned  Composition list   | |
| Errors | NULL_ARGUMENT |  compositionGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCompositionsByParentGenusType | ||
| Description | 
                     Gets a    In active mode, compositions are returned that are currently active. In any effective mode, active and inactive compositions are returned. In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Parameters | osid.type.Type | compositionGenusType | a composition genus type | 
| Return | osid.repository.CompositionList | the returned  Composition list   | |
| Errors | NULL_ARGUMENT |  compositionGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCompositionsByRecordType | ||
| Description | 
                     Gets a    In active mode, compositions are returned that are currently active. In any effective mode, active and inactive compositions are returned. In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Parameters | osid.type.Type | compositionRecordType | a composition record type | 
| Return | osid.repository.CompositionList | the returned  Composition list   | |
| Errors | NULL_ARGUMENT |  compositionRecordType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCompositionsByProvider | ||
| Description | 
                     Gets a  In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Parameters | osid.id.Id | resourceId | a resource  Id   | 
| Return | osid.repository.CompositionList | the returned  Composition list   | |
| Errors | NULL_ARGUMENT |  resourceId  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCompositions | ||
| Description | 
                     Gets all  In plenary mode, the returned list contains all known compositions or an error results. Otherwise, the returned list may contain only those compositions that are accessible through this session. In active mode, compositions are returned that are currently active. In any effective mode, active and inactive compositions are returned. In sequestered mode, no sequestered compositions are returned. In unsequestered mode, all compositions are returned.  | ||
| Return | osid.repository.CompositionList | a list of  Compositions   | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |