Grading Open Service Interface Definitions grading version 3.0.0

The Grading OSID defines a service to apply grades or ratings.

Grade Systems

The grade system sessions provide the means to retrievs and manage GradeSystem definitions. A GradeSystem is a fixed set of Grades . GradeSystems may also take the form of a numerical score as well as a rating based on some system. GradeEntries belong to a single GradebookColumn.

Gradebook Columns

A Gradebook is represented by a series of GradebookColumns. A GradeBookColumn represents a something to be graded and is joined to a single GradeSystem. A GradebookColumn may be constrained to a single grader.

Grade Entries

A GradebookColumn is comprised of a series of GradeEntry elements. A GradebookColumn may represent “Assignment 3” while a GradeEntry may represent the assignment turned in by a particular student.

A Grade can be applied to a GradeEntry that relates the entry to a grader and a key Resource. In the case of a class gradebook, the key resource represents the student. If there are multiple graders for the same key resource, each grader gets their own GradebookColumn.

Gradebooks may also be used to capture ratings about other objects. In the case where people vote for their favorite assets, the key resource represents the Asset .

GradebookColumns may have a GradebookColumnSummary entry for summary results and statistics across all GradeEntries in the column.

Gradebook Cataloging

GradebookColumns are organized into Gradebooks. Gradebooks also provide for a federated hierarchy of GradebookColumns. Simple reordering of GradebookColumns can be performed by moving the GradebookColumn relative to another. The relative positioning may reference two GradebookColumns through the federation.

Sub Packages

The Grading OSID includes several subpackages. The Grading Transform OSID provides a means of translating one GradeSystem to another. The Grading Calculation OSID defines derived GradebookColumns. The Grading Batch OSID manages GradeSystems, GradeEntries, Gradebooks, and GradebookColumns in bulk.

Service Managers

Grading Profile

class dlkit.services.grading.GradingProfile

Bases: dlkit.osid.managers.OsidProfile

The GradingProfile describes the interoperability among grading services.

supports_grade_system_lookup()

Tests if a grade system lookup service is supported.

Returns:true if grade system lookup is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_grade_system_query()

Tests if a grade system query service is supported.

Returns:true if grade system query is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_grade_system_admin()

Tests if a grade system administrative service is supported.

Returns:true if grade system admin is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_grade_entry_lookup()

Tests if a grade entry lookup service is supported.

Returns:true if grade entry lookup is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_grade_entry_query()

Tests if a grade entry query service is supported.

Returns:true if grade entry query is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_grade_entry_admin()

Tests if a grade entry administrative service is supported.

Returns:true if grade entry admin is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_gradebook_column_lookup()

Tests if a gradebook column lookup service is supported.

Returns:true if gradebook column lookup is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_gradebook_column_query()

Tests if a gradebook column query service is supported.

Returns:true if grade system query is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_gradebook_column_admin()

Tests if a gradebook column administrative service is supported.

Returns:true if gradebook column admin is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_gradebook_lookup()

Tests if a gradebook lookup service is supported.

Returns:true if gradebook lookup is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

supports_gradebook_admin()

Tests if a gradebook administrative service is supported.

Returns:true if gradebook admin is supported, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

grade_record_types

Gets the supported Grade record types.

Returns:a list containing the supported Grade record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

grade_system_record_types

Gets the supported GradeSystem record types.

Returns:a list containing the supported GradeSystem record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

grade_system_search_record_types

Gets the supported GradeSystem search record types.

Returns:a list containing the supported GradeSystem search record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

grade_entry_record_types

Gets the supported GradeEntry record types.

Returns:a list containing the supported GradeEntry record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

grade_entry_search_record_types

Gets the supported GradeEntry search record types.

Returns:a list containing the supported GradeEntry search record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

gradebook_column_record_types

Gets the supported GradebookColumn record types.

Returns:a list containing the supported GradebookColumn record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

gradebook_column_search_record_types

Gets the supported gradebook column search record types.

Returns:a list containing the supported GradebookColumn search record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

gradebook_column_summary_record_types

Gets the supported GradebookColumnSummary record types.

Returns:a list containing the supported GradebookColumnSummary record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

gradebook_record_types

Gets the supported Gradebook record types.

Returns:a list containing the supported Gradebook record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

gradebook_search_record_types

Gets the supported gradebook search record types.

Returns:a list containing the supported Gradebook search record types
Return type:osid.type.TypeList

compliance: mandatory – This method must be implemented.

Grading Manager

class dlkit.services.grading.GradingManager(proxy=None)

Bases: dlkit.osid.managers.OsidManager, dlkit.osid.sessions.OsidSession, dlkit.services.grading.GradingProfile

The grading manager provides access to grading sessions and provides interoperability tests for various aspects of this service.

The sessions included in this manager are:

  • GradeSystemLookupSession: a session to look up grades and grade systems
  • GradeSystemQuerySession: a session to query grade systems None
  • GradeSystemSearchSession: a session to search grade systems
  • GradeSystemAdminSession: a session to manage grade systems
  • GradeSystemNotificationSession a session for subscribing to new or deleted grades or grade systems
  • GradeSystemGradebookSession: a session for retrieving grade system to gradebook mappings
  • GradeSystemGradebookAssignmentSession: a session for managing grade system to gradebook mappings
  • GradeSystemSmartGradebookSession: a session for managing smart gradebooks of grade systems
  • GradeEntryLookupSession: a session to look up grade entries
  • GradeEntryQuerySession: a session to query grade entries None
  • GradeEntrySearchSession: a session to search grade entries
  • GradeEntryAdminSession: a session to create, modify and delete grade entries None
  • GradeEntryNotificationSession: a session to receive messages pertaining to grade entry ```` changes
  • GradebookColumnLookupSession: a session to look up gradebook columns
  • GradebookColumnQuerySession: a session to query gradebook columns None
  • GradebookColumnSearchSession: a session to search gradebook columns
  • GradebookColumnAdminSession: a session to manage gradebook columns
  • GradebookColumnNotificationSession a session for subscribing to new or deleted gradebook columns
  • GradebookColumnGradebookSession: a session for retrieving gradebook column to gradebook mappings
  • GradebookColumnGradebookAssignmentSession: a session for managing gradebook column to gradebook mappings
  • GradebookColumnSmartGradebookSession: a session for managing smart gradebooks of gradebook columns
  • GradebookLookupSession: a session to lookup gradebooks
  • GradebookQuerySession: a session to query gradebooks
  • GradebookSearchSession : a session to search gradebooks
  • GradebookAdminSession : a session to create, modify and delete gradebooks
  • GradebookNotificationSession : a session to receive messages pertaining to gradebook changes
  • GradebookHierarchySession: a session to traverse the gradebook hierarchy
  • GradebookHierarchyDesignSession: a session to manage the gradebook hierarchy
grading_batch_manager

Gets the GradingBatchManager.

Returns:a GradingBatchManager
Return type:osid.grading.batch.GradingBatchManager
Raise:OperationFailed – unable to complete request
Raise:Unimplementedsupports_grading_batch() is false

compliance: optional – This method must be implemented if ``supports_grading_batch()`` is true.

grading_calculation_manager

Gets the GradingCalculationManager.

Returns:a GradingCalculationManager
Return type:osid.grading.calculation.GradingCalculationManager
Raise:OperationFailed – unable to complete request
Raise:Unimplementedsupports_grading_calculation() is false

compliance: optional – This method must be implemented if ``supports_grading_calculation()`` is true.

grading_transform_manager

Gets the GradingTransformManager.

Returns:a GradingTransformManager
Return type:osid.grading.transform.GradingTransformManager
Raise:OperationFailed – unable to complete request
Raise:Unimplementedsupports_grading_transform() is false

compliance: optional – This method must be implemented if ``supports_grading_transform()`` is true.

Gradebook Column Lookup Methods

GradingManager.gradebook_id

Gets the Gradebook Id associated with this session.

Returns:the Gradebook Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

GradingManager.gradebook

Gets the Gradebook associated with this session.

Returns:the Gradebook associated with this session
Return type:osid.grading.Gradebook
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.can_lookup_gradebook_columns()

Tests if this user can perform GradebookColumn lookups.

A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if lookup methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.use_comparative_gradebook_column_view()

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.

GradingManager.use_plenary_gradebook_column_view()

A complete view of the GradebookColumn returns is desired.

Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.

compliance: mandatory – This method is must be implemented.

GradingManager.use_federated_gradebook_view()

Federates the view for methods in this session.

A federated view will include gradebook columns in gradebooks which are children of this gradebook in the gradebook hierarchy.

compliance: mandatory – This method is must be implemented.

GradingManager.use_isolated_gradebook_view()

Isolates the view for methods in this session.

An isolated view restricts searches to this gradebook only.

compliance: mandatory – This method is must be implemented.

GradingManager.get_gradebook_column(gradebook_column_id)

Gets the GradebookColumn specified by its Id.

In plenary mode, the exact Id is found or a NotFound results. Otherwise, the returned GradebookColumn may have a different Id than requested, such as the case where a duplicate Id was assigned to a GradebookColumn and retained for compatibility.

Parameters:gradebook_column_id (osid.id.Id) – Id of the GradebookColumn
Returns:the gradebook column
Return type:osid.grading.GradebookColumn
Raise:NotFoundgradebook_column_id not found
Raise:NullArgumentgradebook_column_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

GradingManager.get_gradebook_columns_by_ids(gradebook_column_ids)

Gets a GradebookColumnList corresponding to the given IdList.

In plenary mode, the returned list contains all of the gradebook columns specified in the Id list, in the order of the list, including duplicates, or an error results if a Id in the supplied list is not found or inaccessible. Otherwise, inaccessible gradeboook columns may be omitted from the list.

Parameters:gradebook_column_ids (osid.id.IdList) – the list of Ids to retrieve
Returns:the returned GradebookColumn list
Return type:osid.grading.GradebookColumnList
Raise:NotFound – an Id was not found
Raise:NullArgumentgrade_book_column_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_columns_by_genus_type(gradebook_column_genus_type)

Gets a GradebookColumnList corresponding to the given gradebook column genus Type which does not include gradebook columns of genus types derived from the specified Type.

In plenary mode, the returned list contains all known gradebook columns or an error results. Otherwise, the returned list may contain only those gradebook columns that are accessible through this session.

Parameters:gradebook_column_genus_type (osid.type.Type) – a gradebook column genus type
Returns:the returned GradebookColumn list
Return type:osid.grading.GradebookColumnList
Raise:NullArgumentgradebook_column_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_columns_by_parent_genus_type(gradebook_column_genus_type)

Gets a GradebookColumnList corresponding to the given gradebook column genus Type and include any additional columns with genus types derived from the specified Type.

In plenary mode, the returned list contains all known gradebook columns or an error results. Otherwise, the returned list may contain only those gradebook columns that are accessible through this session.

Parameters:gradebook_column_genus_type (osid.type.Type) – a gradebook column genus type
Returns:the returned GradebookColumn list
Return type:osid.grading.GradebookColumnList
Raise:NullArgumentgradebook_column_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_columns_by_record_type(gradebook_column_record_type)

Gets a GradebookColumnList containing the given gradebook column record Type.

In plenary mode, the returned list contains all known gradebook columns or an error results. Otherwise, the returned list may contain only those gradebook columns that are accessible through this session.

Parameters:gradebook_column_record_type (osid.type.Type) – a gradebook column record type
Returns:the returned GradebookColumn list
Return type:osid.grading.GradebookColumnList
Raise:NullArgumentgradebook_column_record_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.gradebook_columns

Gets all gradebook columns.

In plenary mode, the returned list contains all known gradebook columns or an error results. Otherwise, the returned list may contain only those gradebook columns that are accessible through this session.

Returns:a GradebookColumn
Return type:osid.grading.GradebookColumnList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.supports_summary()

Tests if a summary entry is available.

Returns:true if a summary entry is available, false otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_column_summary(gradebook_column_id)

Gets the GradebookColumnSummary for summary results.

Parameters:gradebook_column_id (osid.id.Id) – Id of the GradebookColumn
Returns:the gradebook column summary
Return type:osid.grading.GradebookColumnSummary
Raise:NotFoundgradebook_column_id is not found
Raise:NullArgumentgradebook_column_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unimplementedhas_summary() is false

compliance: mandatory – This method is must be implemented.

Gradebook Column Query Methods

GradingManager.gradebook_id

Gets the Gradebook Id associated with this session.

Returns:the Gradebook Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

GradingManager.gradebook

Gets the Gradebook associated with this session.

Returns:the Gradebook associated with this session
Return type:osid.grading.Gradebook
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.can_search_gradebook_columns()

Tests if this user can perform GradebookColumn searches.

A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer search operations to unauthorized users.

Returns:false if search methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.use_federated_gradebook_view()

Federates the view for methods in this session.

A federated view will include gradebook columns in gradebooks which are children of this gradebook in the gradebook hierarchy.

compliance: mandatory – This method is must be implemented.

GradingManager.use_isolated_gradebook_view()

Isolates the view for methods in this session.

An isolated view restricts searches to this gradebook only.

compliance: mandatory – This method is must be implemented.

GradingManager.gradebook_column_query

Gets a gradebook column query.

Returns:the gradebook column
Return type:osid.grading.GradebookColumnQuery

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_columns_by_query(gradebook_column_query)

Gets a list of gradebook columns matching the given query.

Parameters:gradebook_column_query (osid.grading.GradebookColumnQuery) – the gradebook column query
Returns:the returned GradebookColumnList
Return type:osid.grading.GradebookColumnList
Raise:NullArgumentgradebook_column_query is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedgradebook_column_query is not of this service

compliance: mandatory – This method must be implemented.

Gradebook Column Admin Methods

GradingManager.gradebook_id

Gets the Gradebook Id associated with this session.

Returns:the Gradebook Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

GradingManager.gradebook

Gets the Gradebook associated with this session.

Returns:the Gradebook associated with this session
Return type:osid.grading.Gradebook
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.can_create_gradebook_columns()

Tests if this user can create gradebook columns.

A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a gradebook column will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.

Returns:false if GradebookColumn creation is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.can_create_gradebook_column_with_record_types(gradebook_column_record_types)

Tests if this user can create a single GradebookColumn using the desired record types.

While GradingManager.getGradebookColumnRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific GradebookColumn. Providing an empty array tests if a GradebookColumn can be created with no records.

Parameters:gradebook_column_record_types (osid.type.Type[]) – array of gradebook column record types
Returns:true if GradebookColumn creation using the specified record Types is supported, false otherwise
Return type:boolean
Raise:NullArgumentgradebook_column_record_types is null

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_column_form_for_create(gradebook_column_record_types)

Gets the gradebook column form for creating new gradebook columns.

A new form should be requested for each create transaction.

Parameters:gradebook_column_record_types (osid.type.Type[]) – array of gradebook column record types
Returns:the gradebook column form
Return type:osid.grading.GradebookColumnForm
Raise:NullArgumentgradebook_column_record_types is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupported – unable to get form for requested record types

compliance: mandatory – This method must be implemented.

GradingManager.create_gradebook_column(gradebook_column_form)

Creates a new GradebookColumn.

Parameters:gradebook_column_form (osid.grading.GradebookColumnForm) – the form for this GradebookColumn
Returns:the new GradebookColumn
Return type:osid.grading.GradebookColumn
Raise:IllegalStategradebook_column_form already used in a create transaction
Raise:InvalidArgument – one or more of the form elements is invalid
Raise:NullArgumentgradebook_column_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedgradebook_column_form did not originate from get_gradebook_column_form_for_create()

compliance: mandatory – This method must be implemented.

GradingManager.can_update_gradebook_columns()

Tests if this user can update gradebook columns.

A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a GradebookColumn will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.

Returns:false if gradebook column modification is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_column_form_for_update(gradebook_column_id)

Gets the gradebook column form for updating an existing gradebook column.

A new gradebook column form should be requested for each update transaction.

Parameters:gradebook_column_id (osid.id.Id) – the Id of the GradebookColumn
Returns:the gradebook column form
Return type:osid.grading.GradebookColumnForm
Raise:NotFoundgradebook_column_id is not found
Raise:NullArgumentgradebook_column_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.update_gradebook_column(gradebook_column_form)

Updates an existing gradebook column.

Parameters:gradebook_column_form (osid.grading.GradebookColumnForm) – the form containing the elements to be updated
Raise:IllegalStategradebook_column_form already used in an update transaction
Raise:InvalidArgument – the form contains an invalid value
Raise:NullArgumentgradebook_column_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedgradebook_column_form did not originate from get_gradebook_column_form_for_update()

compliance: mandatory – This method must be implemented.

GradingManager.sequence_gradebook_columns(gradebook_column_ids)

Resequences the gradebook columns.

Parameters:gradebook_column_ids (osid.id.IdList) – the Ids of the GradebookColumns
Raise:NullArgumentgradebook_column_id_list is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.move_gradebook_column(front_gradebook_column_id, back_gradebook_column_id)

Moves a gradebook column in front of another.

Parameters:
  • front_gradebook_column_id (osid.id.Id) – the Id of a GradebookColumn
  • back_gradebook_column_id (osid.id.Id) – the Id of a GradebookColumn
Raise:

NotFoundfront_gradebook_column_id or back_gradebook_column_id is not found

Raise:

NullArgumentfront_gradebook_column_id or back_gradebook_column_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.copy_gradebook_column_entries(source_gradebook_column_id, target_gradebook_column_id)

Copies gradebook column entries from one column to another.

If the target grade column grade system differs from the source, the grades in the entries are transformed to the new grade system.

Parameters:
  • source_gradebook_column_id (osid.id.Id) – the Id of a GradebookColumn
  • target_gradebook_column_id (osid.id.Id) – the Id of a GradebookColumn
Raise:

NotFoundsource_gradebook_column_id ortarget_gradebook_column_id is not found

Raise:

NullArgumentsource_gradebook_column_id target_gradebook_column_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.can_delete_gradebook_columns()

Tests if this user can delete gradebook columns.

A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a GradebookColumn will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.

Returns:false if GradebookColumn deletion is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.delete_gradebook_column(gradebook_column_id)

Deletes the GradebookColumn identified by the given Id.

Parameters:gradebook_column_id (osid.id.Id) – the Id of the GradebookColumn to delete
Raise:NotFound – a GradebookColumn was not found identified by the given Id
Raise:NullArgumentgradebook_column_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.can_manage_gradebook_column_aliases()

Tests if this user can manage Id aliases for GradebookColumns.

A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.

Returns:false if GradebookColumn aliasing is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.alias_gradebook_column(gradebook_column_id, alias_id)

Adds an Id to a GradebookColumn for the purpose of creating compatibility.

The primary Id of the GradebookColumn is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another gradebook column, it is reassigned to the given gradebook column Id.

Parameters:
  • gradebook_column_id (osid.id.Id) – the Id of a GradebookColumn
  • alias_id (osid.id.Id) – the alias Id
Raise:

AlreadyExistsalias_id is already assigned

Raise:

NotFoundgradebook_column_id not found

Raise:

NullArgumentgradebook_column_id or alias_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Gradebook Lookup Methods

GradingManager.can_lookup_gradebooks()

Tests if this user can perform Gradebook lookups.

A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if lookup methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.use_comparative_gradebook_view()

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.

GradingManager.use_plenary_gradebook_view()

A complete view of the Gradebook returns is desired.

Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.

compliance: mandatory – This method is must be implemented.

GradingManager.get_gradebook(gradebook_id)

Gets the Gradebook specified by its Id.

In plenary mode, the exact Id is found or a NotFound results. Otherwise, the returned Gradebook may have a different Id than requested, such as the case where a duplicate Id was assigned to a Gradebook and retained for compatility.

Parameters:gradebook_id (osid.id.Id) – Id of the Gradebook
Returns:the gradebook
Return type:osid.grading.Gradebook
Raise:NotFoundgradebook_id not found
Raise:NullArgumentgradebook_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

GradingManager.get_gradebooks_by_ids(gradebook_ids)

Gets a GradebookList corresponding to the given IdList.

In plenary mode, the returned list contains all of the gradebooks specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Gradebook objects may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:gradebook_ids (osid.id.IdList) – the list of Ids to retrieve
Returns:the returned Gradebook list
Return type:osid.grading.GradebookList
Raise:NotFound – an Id was not found
Raise:NullArgumentgradebook_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebooks_by_genus_type(gradebook_genus_type)

Gets a GradebookList corresponding to the given gradebook genus Type which does not include gradebooks of types derived from the specified Type.

In plenary mode, the returned list contains all known gradebooks or an error results. Otherwise, the returned list may contain only those gradebooks that are accessible through this session.

Parameters:gradebook_genus_type (osid.type.Type) – a gradebook genus type
Returns:the returned Gradebook list
Return type:osid.grading.GradebookList
Raise:NullArgumentgradebook_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebooks_by_parent_genus_type(gradebook_genus_type)

Gets a GradebookList corresponding to the given gradebook genus Type and include any additional gradebooks with genus types derived from the specified Type.

In plenary mode, the returned list contains all known gradebooks or an error results. Otherwise, the returned list may contain only those gradebooks that are accessible through this session.

Parameters:gradebook_genus_type (osid.type.Type) – a gradebook genus type
Returns:the returned Gradebook list
Return type:osid.grading.GradebookList
Raise:NullArgumentgradebook_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebooks_by_record_type(gradebook_record_type)

Gets a GradebookList containing the given gradebook record Type.

In plenary mode, the returned list contains all known gradebooks or an error results. Otherwise, the returned list may contain only those gradebooks that are accessible through this session.

Parameters:gradebook_record_type (osid.type.Type) – a gradebook record type
Returns:the returned Gradebook list
Return type:osid.grading.GradebookList
Raise:NullArgumentgradebook_record_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebooks_by_provider(resource_id)

Gets a GradebookList for the given provider ````.

In plenary mode, the returned list contains all known gradebooks or an error results. Otherwise, the returned list may contain only those gradebooks that are accessible through this session.

Parameters:resource_id (osid.id.Id) – a resource Id
Returns:the returned Gradebook list
Return type:osid.grading.GradebookList
Raise:NullArgumentresource_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.gradebooks

Gets all Gradebooks.

In plenary mode, the returned list contains all known gradebooks or an error results. Otherwise, the returned list may contain only those gradebooks that are accessible through this session.

Returns:a GradebookList
Return type:osid.grading.GradebookList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Gradebook Admin Methods

GradingManager.can_create_gradebooks()

Tests if this user can create Gradebooks.

A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a Gradebook will result in a PermissionDenied. This is intended as a hint to an application that may not wish to offer create operations to unauthorized users.

Returns:false if Gradebook creation is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.can_create_gradebook_with_record_types(gradebook_record_types)

Tests if this user can create a single Gradebook using the desired record types.

While GradingManager.getGradebookRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Gradebook. Providing an empty array tests if a Gradebook can be created with no records.

Parameters:gradebook_record_types (osid.type.Type[]) – array of gradebook record types
Returns:true if Gradebook creation using the specified Types is supported, false otherwise
Return type:boolean
Raise:NullArgumentgradebook_record_types is null

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_form_for_create(gradebook_record_types)

Gets the gradebook form for creating new gradebooks.

A new form should be requested for each create transaction.

Parameters:gradebook_record_types (osid.type.Type[]) – array of gradebook record types
Returns:the gradebook form
Return type:osid.grading.GradebookForm
Raise:NullArgumentgradebook_record_types is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupported – unable to get form for requested record types

compliance: mandatory – This method must be implemented.

GradingManager.create_gradebook(gradebook_form)

Creates a new Gradebook.

Parameters:gradebook_form (osid.grading.GradebookForm) – the form for this Gradebook
Returns:the new Gradebook
Return type:osid.grading.Gradebook
Raise:IllegalStategradebook_form already used in a create transaction
Raise:InvalidArgument – one or more of the form elements is invalid
Raise:NullArgumentgradebook_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedgradebook_form did not originate from get_gradebook_form_for_create()

compliance: mandatory – This method must be implemented.

GradingManager.can_update_gradebooks()

Tests if this user can update Gradebooks.

A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a Gradebook will result in a PermissionDenied. This is intended as a hint to an application that may not wish to offer update operations to unauthorized users.

Returns:false if Gradebook modification is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.get_gradebook_form_for_update(gradebook_id)

Gets the gradebook form for updating an existing gradebook.

A new gradebook form should be requested for each update transaction.

Parameters:gradebook_id (osid.id.Id) – the Id of the Gradebook
Returns:the gradebook form
Return type:osid.grading.GradebookForm
Raise:NotFoundgradebook_id is not found
Raise:NullArgumentgradebook_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.update_gradebook(gradebook_form)

Updates an existing gradebook.

Parameters:gradebook_form (osid.grading.GradebookForm) – the form containing the elements to be updated
Raise:IllegalStategradebook_form already used in an update transaction
Raise:InvalidArgument – the form contains an invalid value
Raise:NullArgumentgradebook_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedgradebook_form did not originate from get_gradebook_form_for_update()

compliance: mandatory – This method must be implemented.

GradingManager.can_delete_gradebooks()

Tests if this user can delete gradebooks.

A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a Gradebook will result in a PermissionDenied. This is intended as a hint to an application that may not wish to offer delete operations to unauthorized users.

Returns:false if Gradebook deletion is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.delete_gradebook(gradebook_id)

Deletes a Gradebook.

Parameters:gradebook_id (osid.id.Id) – the Id of the Gradebook to remove
Raise:NotFoundgradebook_id not found
Raise:NullArgumentgradebook_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

GradingManager.can_manage_gradebook_aliases()

Tests if this user can manage Id aliases for Gradebooks.

A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.

Returns:false if Gradebook aliasing is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

GradingManager.alias_gradebook(gradebook_id, alias_id)

Adds an Id to a Gradebook for the purpose of creating compatibility.

The primary Id of the Gradebook is determined by the provider. The new Id performs as an alias to the primary Id . If the alias is a pointer to another gradebook, it is reassigned to the given gradebook Id.

Parameters:
  • gradebook_id (osid.id.Id) – the Id of a Gradebook
  • alias_id (osid.id.Id) – the alias Id
Raise:

AlreadyExistsalias_id is already assigned

Raise:

NotFoundgradebook_id not found

Raise:

NullArgumentgradebook_id or alias_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.