Interface ObjectiveQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidExtensibleQuery, OsidFederateableQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, Suppliable

public interface ObjectiveQuery extends OsidObjectQuery, OsidFederateableQuery

This is the query for searching objectives. Each method match request produces an AND term while multiple invocations of a method produces a nested OR .

  • Method Details

    • matchAssessmentId

      void matchAssessmentId(Id assessmentId, boolean match)
      Sets the assessment Id for this query.
      Parameters:
      assessmentId - an assessment Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - assessmentId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAssessmentIdTerms

      void clearAssessmentIdTerms()
      Clears the assessment Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAssessmentQuery

      boolean supportsAssessmentQuery()
      Tests if an AssessmentQuery is available for querying activities.
      Returns:
      true if an assessment query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAssessmentQuery

      AssessmentQuery getAssessmentQuery()
      Gets the query for an assessment. Multiple retrievals produce a nested OR term.
      Returns:
      the assessment query
      Throws:
      UnimplementedException - supportsAssessmentQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAssessmentQuery()} is {@code true} .
    • matchAnyAssessment

      void matchAnyAssessment(boolean match)
      Matches an objective that has any assessment assigned.
      Parameters:
      match - true to match objectives with any assessment, false to match objectives with no assessment
      Compliance:
      mandatory - This method must be implemented.
    • clearAssessmentTerms

      void clearAssessmentTerms()
      Clears the assessment terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchKnowledgeCategoryId

      void matchKnowledgeCategoryId(Id gradeId, boolean match)
      Sets the knowledge category Id for this query.
      Parameters:
      gradeId - a grade Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - gradeId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearKnowledgeCategoryIdTerms

      void clearKnowledgeCategoryIdTerms()
      Clears the knowledge category Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsKnowledgeCategoryQuery

      boolean supportsKnowledgeCategoryQuery()
      Tests if a GradeQuery is available for querying knowledge categories.
      Returns:
      true if a grade query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getKnowledgeCategoryQuery

      GradeQuery getKnowledgeCategoryQuery()
      Gets the query for a knowledge category. Multiple retrievals produce a nested OR term.
      Returns:
      the grade query
      Throws:
      UnimplementedException - supportsKnowledgeCategoryQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsKnowledgeCategoryQuery()} is {@code true} .
    • matchAnyKnowledgeCategory

      void matchAnyKnowledgeCategory(boolean match)
      Matches an objective that has any knowledge category.
      Parameters:
      match - true to match objectives with any knowledge category, false to match objectives with no knowledge category
      Compliance:
      mandatory - This method must be implemented.
    • clearKnowledgeCategoryTerms

      void clearKnowledgeCategoryTerms()
      Clears the knowledge category terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchCognitiveProcessId

      void matchCognitiveProcessId(Id gradeId, boolean match)
      Sets the cognitive process Id for this query.
      Parameters:
      gradeId - a grade Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - gradeId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCognitiveProcessIdTerms

      void clearCognitiveProcessIdTerms()
      Clears the cognitive process Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCognitiveProcessQuery

      boolean supportsCognitiveProcessQuery()
      Tests if a GradeQuery is available for querying cognitive processes.
      Returns:
      true if a grade query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCognitiveProcessQuery

      GradeQuery getCognitiveProcessQuery()
      Gets the query for a cognitive process. Multiple retrievals produce a nested OR term.
      Returns:
      the grade query
      Throws:
      UnimplementedException - supportsCognitiveProcessQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCognitiveProcessQuery()} is {@code true} .
    • matchAnyCognitiveProcess

      void matchAnyCognitiveProcess(boolean match)
      Matches an objective that has any cognitive process.
      Parameters:
      match - true to match objectives with any cognitive process, false to match objectives with no cognitive process
      Compliance:
      mandatory - This method must be implemented.
    • clearCognitiveProcessTerms

      void clearCognitiveProcessTerms()
      Clears the cognitive process terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchActivityId

      void matchActivityId(Id activityId, boolean match)
      Sets the activity Id for this query.
      Parameters:
      activityId - an activity Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - activityId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearActivityIdTerms

      void clearActivityIdTerms()
      Clears the activity Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsActivityQuery

      boolean supportsActivityQuery()
      Tests if an ActivityQuery is available for querying activities.
      Returns:
      true if an activity query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getActivityQuery

      ActivityQuery getActivityQuery()
      Gets the query for an activity. Multiple retrievals produce a nested OR term.
      Returns:
      the activity query
      Throws:
      UnimplementedException - supportsActivityQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsActivityQuery()} is {@code true} .
    • matchAnyActivity

      void matchAnyActivity(boolean match)
      Matches an objective that has any related activity.
      Parameters:
      match - true to match objectives with any activity, false to match objectives with no activity
      Compliance:
      mandatory - This method must be implemented.
    • clearActivityTerms

      void clearActivityTerms()
      Clears the activity terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchRequisiteObjectiveId

      void matchRequisiteObjectiveId(Id requisiteObjectiveId, boolean match)
      Sets the requisite objective Id for this query.
      Parameters:
      requisiteObjectiveId - a requisite objective Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - requisiteObjectiveId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearRequisiteObjectiveIdTerms

      void clearRequisiteObjectiveIdTerms()
      Clears the requisite objective Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsRequisiteObjectiveQuery

      boolean supportsRequisiteObjectiveQuery()
      Tests if an ObjectiveQuery is available for querying requisite objectives.
      Returns:
      true if an objective query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getRequisiteObjectiveQuery

      ObjectiveQuery getRequisiteObjectiveQuery()
      Gets the query for a requisite objective. Multiple retrievals produce a nested OR term.
      Returns:
      the objective query
      Throws:
      UnimplementedException - supportsRequisiteObjectiveQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsRequisiteObjectiveQuery()} is {@code true} .
    • matchAnyRequisiteObjective

      void matchAnyRequisiteObjective(boolean match)
      Matches an objective that has any related requisite.
      Parameters:
      match - true to match objectives with any requisite, false to match objectives with no requisite
      Compliance:
      mandatory - This method must be implemented.
    • clearRequisiteObjectiveTerms

      void clearRequisiteObjectiveTerms()
      Clears the requisite objective terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDependentObjectiveId

      void matchDependentObjectiveId(Id dependentObjectiveId, boolean match)
      Sets the dependent objective Id to query objectives dependent on the given objective.
      Parameters:
      dependentObjectiveId - a dependent objective Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - dependentObjectiveId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDependentObjectiveIdTerms

      void clearDependentObjectiveIdTerms()
      Clears the dependent objective Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDepndentObjectiveQuery

      boolean supportsDepndentObjectiveQuery()
      Tests if an ObjectiveQuery is available for querying dependent objectives.
      Returns:
      true if an objective query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDependentObjectiveQuery

      ObjectiveQuery getDependentObjectiveQuery()
      Gets the query for a dependent objective. Multiple retrievals produce a nested OR term.
      Returns:
      the objective query
      Throws:
      UnimplementedException - supportsDependentObjectiveQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDependentQuery()} is {@code true} .
    • matchAnyDependentObjective

      void matchAnyDependentObjective(boolean match)
      Matches an objective that has any related dependents.
      Parameters:
      match - true to match objectives with any dependent, false to match objectives with no dependents
      Compliance:
      mandatory - This method must be implemented.
    • clearDependentObjectiveTerms

      void clearDependentObjectiveTerms()
      Clears the dependent objective terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchEquivalentObjectiveId

      void matchEquivalentObjectiveId(Id equivalentObjectiveId, boolean match)
      Sets the equivalent objective Id to query equivalents.
      Parameters:
      equivalentObjectiveId - an equivalent objective Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - equivalentObjectiveId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearEquivalentObjectiveIdTerms

      void clearEquivalentObjectiveIdTerms()
      Clears the equivalent objective Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsEquivalentObjectiveQuery

      boolean supportsEquivalentObjectiveQuery()
      Tests if an ObjectiveQuery is available for querying equivalent objectives.
      Returns:
      true if an objective query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEquivalentObjectiveQuery

      ObjectiveQuery getEquivalentObjectiveQuery()
      Gets the query for an equivalent objective. Multiple retrievals produce a nested OR term.
      Returns:
      the objective query
      Throws:
      UnimplementedException - supportsEquivalentObjectiveQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsEquivalentQuery()} is {@code true} .
    • matchAnyEquivalentObjective

      void matchAnyEquivalentObjective(boolean match)
      Matches an objective that has any related equivalents.
      Parameters:
      match - true to match objectives with any equivalent, false to match objectives with no equivalents
      Compliance:
      mandatory - This method must be implemented.
    • clearEquivalentObjectiveTerms

      void clearEquivalentObjectiveTerms()
      Clears the equivalent objective terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorObjectiveId

      void matchAncestorObjectiveId(Id objectiveId, boolean match)
      Sets the objective Id for this query to match objectives that have the specified objective as an ancestor.
      Parameters:
      objectiveId - an objective Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - objectiveId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorObjectiveIdTerms

      void clearAncestorObjectiveIdTerms()
      Clears the ancestor objective Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAncestorObjectiveQuery

      boolean supportsAncestorObjectiveQuery()
      Tests if an ObjectiveQuery is available.
      Returns:
      true if an objective query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAncestorObjectiveQuery

      ObjectiveQuery getAncestorObjectiveQuery()
      Gets the query for an objective. Multiple retrievals produce a nested OR term.
      Returns:
      the objective query
      Throws:
      UnimplementedException - supportsAncestorObjectiveQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAncestorObjectiveQuery()} is {@code true} .
    • matchAnyAncestorObjective

      void matchAnyAncestorObjective(boolean match)
      Matches objectives that have any ancestor.
      Parameters:
      match - true to match objective with any ancestor, false to match root objectives
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorObjectiveTerms

      void clearAncestorObjectiveTerms()
      Clears the ancestor objective query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantObjectiveId

      void matchDescendantObjectiveId(Id objectiveId, boolean match)
      Sets the objective Id for this query to match objectives that have the specified objective as a descendant.
      Parameters:
      objectiveId - an objective Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - objectiveId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantObjectiveIdTerms

      void clearDescendantObjectiveIdTerms()
      Clears the descendant objective Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDescendantObjectiveQuery

      boolean supportsDescendantObjectiveQuery()
      Tests if an ObjectiveQuery is available.
      Returns:
      true if an objective query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDescendantObjectiveQuery

      ObjectiveQuery getDescendantObjectiveQuery()
      Gets the query for an objective. Multiple retrievals produce a nested OR term.
      Returns:
      the objective query
      Throws:
      UnimplementedException - supportsDescendantObjectiveQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDescendantObjectiveQuery()} is {@code true} .
    • matchAnyDescendantObjective

      void matchAnyDescendantObjective(boolean match)
      Matches objectives that have any ancestor.
      Parameters:
      match - true to match objectives with any ancestor, false to match leaf objectives
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantObjectiveTerms

      void clearDescendantObjectiveTerms()
      Clears the descendant objective query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchObjectiveBankId

      void matchObjectiveBankId(Id objectiveBankId, boolean match)
      Sets the objective bank Id for this query.
      Parameters:
      objectiveBankId - an objective bank Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - objectiveBankId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearObjectiveBankIdTerms

      void clearObjectiveBankIdTerms()
      Clears the objective bank Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsObjectiveBankQuery

      boolean supportsObjectiveBankQuery()
      Tests if a ObjectiveBankQuery is available for querying objective banks.
      Returns:
      true if an objective bank query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getObjectiveBankQuery

      ObjectiveBankQuery getObjectiveBankQuery()
      Gets the query for an objective bank. Multiple retrievals produce a nested OR term.
      Returns:
      the objective bank query
      Throws:
      UnimplementedException - supportsObjectiveBankQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsObjectiveBankQuery()} is {@code true} .
    • clearObjectiveBankTerms

      void clearObjectiveBankTerms()
      Clears the objective bank terms.
      Compliance:
      mandatory - This method must be implemented.
    • getObjectiveQueryRecord

      ObjectiveQueryRecord getObjectiveQueryRecord(Type objectiveRecordType) throws OperationFailedException
      Gets the objective query record corresponding to the given Objective record Type . Multiple retrievals produce a nested OR term.
      Parameters:
      objectiveRecordType - an objective query record type
      Returns:
      the objective query record
      Throws:
      NullArgumentException - objectiveRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(objectiveRecordType) is false
      Compliance:
      mandatory - This method must be implemented.