OSID Logo
OSID Specifications
relationship package
Version 3.0.0
Release Candidate Preview
Interfaceosid.relationship.FamilyQuery
Implementsosid.OsidCatalogQuery
Description

This is the query interface for searching for families. Each method specifies an AND term while multiple invocations of the same method produce a nested OR.

MethodmatchRelationshipId
Description

Matches a relationship Id.

Parametersosid.id.IdrelationshipIda relationship Id
booleanmatch true for a positive match, false for a negative match
ErrorsNULL_ARGUMENT relationshipId is null
CompliancemandatoryThis method must be implemented.
MethodclearRelationshipIdTerms
Description

Clears the relationship Id terms.

CompliancemandatoryThis method must be implemented.
MethodsupportsRelationshipQuery
Description

Tests if a relationship query is available.

Returnboolean true if a relationship query is available, false otherwise
CompliancemandatoryThis method must be implemented.
MethodgetRelationshipQuery
Description

Gets the query interface for a relationship.

Returnosid.relationship.RelationshipQuerythe relationship query
ErrorsUNIMPLEMENTED supportsRelationshipQuery() is false
ComplianceoptionalThis method must be implemented if supportsRelationshipQuery() is true.
MethodmatchAnyRelationship
Description

Matches families with any relationship.

Parametersbooleanmatch true to match families with any relationship, false to match families with no relationship
CompliancemandatoryThis method must be implemented.
MethodclearRelationshipTerms
Description

Clears the relationship terms.

CompliancemandatoryThis method must be implemented.
MethodmatchAncestorFamilyId
Description

Sets the family Id for this query to match families that have the specified family as an ancestor.

Parametersosid.id.IdfamilyIda family Id
booleanmatch true for a positive match, false for a negative match
ErrorsNULL_ARGUMENT familyId is null
CompliancemandatoryThis method must be implemented.
MethodclearAncestorFamilyIdTerms
Description

Clears the ancestor family Id terms.

CompliancemandatoryThis method must be implemented.
MethodsupportsAncestorFamilyQuery
Description

Tests if a FamilyQuery is available.

Returnboolean true if a family query interface is available, false otherwise
CompliancemandatoryThis method must be implemented.
MethodgetAncestorFamilyQuery
Description

Gets the query interface for a family. Multiple retrievals produce a nested OR term.

Returnosid.relationship.FamilyQuerythe family query
ErrorsUNIMPLEMENTED supportsAncestorFamilyQuery() is false
ComplianceoptionalThis method must be implemented if supportsAncestorFamilyQuery() is true.
MethodmatchAnyAncestorFamily
Description

Matches families with any ancestor.

Parametersbooleanmatch true to match families with any ancestor, false to match root families
CompliancemandatoryThis method must be implemented.
MethodclearAncestorFamilyTerms
Description

Clears the ancestor family terms.

CompliancemandatoryThis method must be implemented.
MethodmatchDescendantFamilyId
Description

Sets the family Id for this query to match families that have the specified family as a descednant.

Parametersosid.id.IdfamilyIda family Id
booleanmatch true for a positive match, false for a negative match
ErrorsNULL_ARGUMENT familyId is null
CompliancemandatoryThis method must be implemented.
MethodclearDescendantFamilyIdTerms
Description

Clears the descendant family Id terms.

CompliancemandatoryThis method must be implemented.
MethodsupportsDescendantFamilyQuery
Description

Tests if a FamilyQuery is available.

Returnboolean true if a family query interface is available, false otherwise
CompliancemandatoryThis method must be implemented.
MethodgetDescendantFamilyQuery
Description

Gets the query interface for a family. Multiple retrievals produce a nested OR term.

Returnosid.relationship.FamilyQuerythe family query
ErrorsUNIMPLEMENTED supportsDescendantFamilyQuery() is false
ComplianceoptionalThis method must be implemented if supportsDescendantFamilyQuery() is true.
MethodmatchAnyDescendantFamily
Description

Matches families with any decendant.

Parametersbooleanmatch true to match families with any decendants, false to match leaf families
CompliancemandatoryThis method must be implemented.
MethodclearDescendantFamilyTerms
Description

Clears the descendant family terms.

CompliancemandatoryThis method must be implemented.
MethodgetFamilyQueryRecord
Description

Gets the family query record corresponding to the given Family record Type. Multiple record retrievals produce a nested boolean OR term.

Parametersosid.type.TypefamilyRecordTypea family record type
Returnosid.relationship.records.FamilyQueryRecordthe family query record
ErrorsNULL_ARGUMENT familyRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
UNSUPPORTED hasRecordType(familyRecordType) is false
CompliancemandatoryThis method must be implemented.