OSID Logo
OSID Specifications
rules package
Version 3.0.0
Release Candidate Preview
Interfaceosid.rules.RuleLookupSession
Implementsosid.OsidSession
Description

This session provides methods for retrieving Rule objects.

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition
  • isolated engine view: All rule methods in this session operate, retrieve and pertain to rules defined explicitly in the current engine.
  • federated engine view: All rule methods in this session operate, retrieve and pertain to all rules defined in this engine and any other rules implicitly available in this engine through engine inheritence.
  • active rule view: All rule lookup methods return active rules.
  • any status rule view: Rules of any active or inactive status are returned from methods.

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 Rules it can access, without breaking execution. However, an assessment may only be useful if all Rules referenced by it are available, and a test-taking applicationmay sacrifice some interoperability for the sake of precision.

MethodgetEngineId
Description

Gets the Engine Id associated with this session.

Returnosid.id.Idthe Engine Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetEngine
Description

Gets the Engine associated with this session.

Returnosid.rules.Enginethe engine
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanLookupRules
Description

Tests if this user can perform Rule 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 PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returnboolean false if lookup methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseComparativeRuleView
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.

CompliancemandatoryThis method is must be implemented.
MethodusePlenaryRuleView
Description

A complete view of the Rule 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.

CompliancemandatoryThis method is must be implemented.
MethoduseFederatedEngineView
Description

Federates the view for methods in this session. A federated view will include rules in engines which are children of this engine in the engine hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedEngineView
Description

Isolates the view for methods in this session. An isolated view restricts retrievals to this engine only.

CompliancemandatoryThis method is must be implemented.
MethoduseActiveRuleView
Description

Only active rules are returned by methods in this session.

CompliancemandatoryThis method is must be implemented.
MethoduseAnyStatusRuleView
Description

All active and inactive rules are returned by methods in this session.

CompliancemandatoryThis method is must be implemented.
MethodgetRule
Description

Gets the Rule specified by its Id.

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

In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.

Parametersosid.id.IdruleId Id of the Rule
Returnosid.rules.Rulethe rule
ErrorsNOT_FOUND ruleId not found
NULL_ARGUMENT ruleId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method is must be implemented.
MethodgetRulesByIds
Description

Gets a RuleList corresponding to the given IdList.

In plenary mode, the returned list contains all of the rules 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 Rules may be omitted from the list and may present the elements in any order including returning a unique set.

In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.

Parametersosid.id.IdListruleIdsthe list of Ids to retrieve
Returnosid.rules.RuleListthe returned Rule list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT ruleIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetRulesByGenusType
Description

Gets a RuleList corresponding to the given rule genus Type which does not include rules of genus types derived from the specified Type.

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

In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.

Parametersosid.type.TyperuleGenusTypea rule genus type
Returnosid.rules.RuleListthe returned Rule list
ErrorsNULL_ARGUMENT ruleGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetRulesByParentGenusType
Description

Gets a RuleList corresponding to the given rule genus Type and include any additional rules with genus types derived from the specified Type.

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

In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.

Parametersosid.type.TyperuleGenusTypea rule genus type
Returnosid.rules.RuleListthe returned Rule list
ErrorsNULL_ARGUMENT ruleGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetRulesByRecordType
Description

Gets a RuleList containing the given repository record Type.

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

In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.

Parametersosid.type.TyperuleRecordTypea rule record type
Returnosid.rules.RuleListthe returned Rule list
ErrorsNULL_ARGUMENT ruleRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetRules
Description

Gets all Rules.

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

In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.

Returnosid.rules.RuleLista list of Rules
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.