Interface SubjectSearchSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, SubjectQuerySession

public interface SubjectSearchSession extends SubjectQuerySession

This session provides methods for searching Subject objects. The search query is constructed using the SubjectQuery . The subject record Type also specifies the record for the subject query.

getSubjectsByQuery() is the basic search method and returns a list of Subjects . A more advanced search may be performed with getSubjectsBySearch() .It accepts a SubjectSearch in addition to the query for the purpose of specifying additional options affecting the entire search, such as ordering. getSubjectsBySearch() returns a SubjectSearchResults that can be used to access the resulting SubjectList or be used to perform a search within the result set through SubjectSearch .

This session defines views that offer differing behaviors for searching.

  • federated ontology view: searches include subjects in ontologies of which this ontology is an ancestor in the ontology hierarchy
  • isolated ontology view: searches are restricted to subjects in this ontology

Subjects may have a query record indicated by their respective record types. The query record is accessed via the SubjectQuery .

  • Method Details

    • getSubjectSearch

      SubjectSearch getSubjectSearch()
      Gets a subject search.
      Returns:
      the subject search
      Compliance:
      mandatory - This method must be implemented.
    • getSubjectSearchOrder

      SubjectSearchOrder getSubjectSearchOrder()
      Gets a subject search order. The SubjectSearchOrder is supplied to a SubjectSearch to specify the ordering of results.
      Returns:
      the subject search order
      Compliance:
      mandatory - This method must be implemented.
    • getSubjectsBySearch

      SubjectSearchResults getSubjectsBySearch(SubjectQuery subjectQuery, SubjectSearch subjectSearch) throws OperationFailedException, PermissionDeniedException
      Gets the search results matching the given search query using the given search.
      Parameters:
      subjectQuery - the subject query
      subjectSearch - the subject search
      Returns:
      the subject search results
      Throws:
      NullArgumentException - subjectQuery or subjectSearch is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - subjectSearch or subjectQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getSubjectQueryFromInspector

      SubjectQuery getSubjectQueryFromInspector(SubjectQueryInspector subjectQueryInspector)
      Gets a subject query from an inspector. The inspector is available from a SubjecttSearchResults .
      Parameters:
      subjectQueryInspector - a subject query inspector
      Returns:
      the subject query
      Throws:
      NullArgumentException - subjectQueryInspector is null
      UnsupportedException - subjectQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.