OSID Logo
OSID Specifications
relationship package
Version 3.1.0
Interfaceosid.relationship.RelationshipSmartFamilySession
Implementsosid.OsidSession
Used Byosid.relationship.RelationshipManager
osid.relationship.RelationshipProxyManager
Description

This session manages queries and sequencing to create "smart" dynamic catalogs. A RelationshipQuery can be retrieved from this session and mapped to this Family to create a virtual collection of Relationships. The entries may be sequenced using the RelationshipSearchOrder from this session.

This Family has a default query that matches any relationship and a default search order that specifies no sequencing. The queries may be examined using a RelationshipQueryInspector. The query may be modified by converting the inspector back to a RelationshipQuery.

MethodgetFamilyId
Description

Gets the Family Id associated with this session.

Returnosid.id.Id the Family Id associated with this session
Compliancemandatory This method must be implemented.
MethodgetFamily
Description

Gets the Family associated with this session.

Returnosid.relationship.Family the family
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodcanManageSmartFamilies
Description

Tests if this user can manage smart families. 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 smart operations.

Returnboolean false if smart family methods are not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodgetRelationshipQuery
Description

Gets a relationship query.

Returnosid.relationship.RelationshipQuery the relationship query
Compliancemandatory This method must be implemented.
MethodgetRelationshipSearchOrder
Description

Gets a relationship search order.

Returnosid.relationship.RelationshipSearchOrder the relationship search order
Compliancemandatory This method must be implemented.
MethodapplyRelationshipQuery
Description

Applies a relationship query to this family.

Parametersosid.relationship.RelationshipQueryrelationshipQuery the relationship query
ErrorsNULL_ARGUMENT relationshipQuery is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure occurred
UNSUPPORTED relationshipQuery not of this service
Compliancemandatory This method must be implemented.
MethodinspectRelationshipQuery
Description

Gets a relationship query inspector for this family.

Returnosid.relationship.RelationshipQueryInspector the relationship query inspector
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure occurred
Compliancemandatory This method must be implemented.
MethodapplyRelationshipSequencing
Description

Applies a relationship search order to this family.

Parametersosid.relationship.RelationshipSearchOrderrelationshipSearchOrder the relationship search order
ErrorsNULL_ARGUMENT relationshipSearchOrder is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure occurred
UNSUPPORTED relationshipSearchOrder not of this service
Compliancemandatory This method must be implemented.
MethodgetRelationshipQueryFromInspector
Description

Gets a relationship query from an inspector.

Parametersosid.relationship.RelationshipQueryInspectorrelationshipQueryInspector a relationship query inspector
Returnosid.relationship.RelationshipQuery the relationship query
ErrorsNULL_ARGUMENT relatinshipQueryInspector is null
UNSUPPORTED relationshipQueryInspector is not of this service
Compliancemandatory This method must be implemented.