Interface OsidQuery

All Superinterfaces:
Suppliable
All Known Subinterfaces:
AcademyQuery, AccountQuery, ActionEnablerQuery, ActionGroupQuery, ActionQuery, ActivityQuery, ActivityQuery, ActivityQuery, ActivityRegistrationQuery, ActivityUnitQuery, AddressBookQuery, AddressQuery, AgencyQuery, AgendaQuery, AgentQuery, AnswerQuery, AntimatroidQuery, AppointmentQuery, AssessmentEntryQuery, AssessmentOfferedQuery, AssessmentPartQuery, AssessmentQuery, AssessmentTakenQuery, AssetContentQuery, AssetQuery, AuctionConstrainerEnablerQuery, AuctionConstrainerQuery, AuctionHouseQuery, AuctionProcessorEnablerQuery, AuctionProcessorQuery, AuctionQuery, AuditConstrainerEnablerQuery, AuditConstrainerQuery, AuditEnablerQuery, AuditProcessorEnablerQuery, AuditProcessorQuery, AuditQuery, AuthorizationEnablerQuery, AuthorizationQuery, AvailabilityEnablerQuery, AvailabilityQuery, AwardEntryQuery, AwardQuery, BallotConstrainerEnablerQuery, BallotConstrainerQuery, BallotQuery, BankQuery, BidEnablerQuery, BidQuery, BillingQuery, BinQuery, BlockQuery, BlogQuery, BookQuery, BranchQuery, BrokerConstrainerEnablerQuery, BrokerConstrainerQuery, BrokerEnablerQuery, BrokerProcessorEnablerQuery, BrokerProcessorQuery, BrokerQuery, BudgetEntryQuery, BudgetQuery, BuildingQuery, BusinessQuery, BusinessQuery, CalendarQuery, CampusQuery, CandidateQuery, CanonicalUnitEnablerQuery, CanonicalUnitProcessorEnablerQuery, CanonicalUnitProcessorQuery, CanonicalUnitQuery, CatalogEnablerQuery, CatalogQuery, CatalogueQuery, CategoryQuery, ChainQuery, ChecklistQuery, CheckQuery, CommentQuery, CommissionEnablerQuery, CommissionQuery, CommitmentEnablerQuery, CommitmentQuery, CompetencyQuery, CompositionEnablerQuery, CompositionQuery, ConferralQuery, ConfigurationQuery, ContactEnablerQuery, ContactQuery, ControllerQuery, ConvocationQuery, CookbookQuery, CourseCatalogQuery, CourseEntryQuery, CourseOfferingQuery, CourseQuery, CourseRegistrationQuery, CourseRequirementQuery, CredentialEntryQuery, CredentialQuery, CreditQuery, CustomerQuery, CyclicEventQuery, CyclicTimePeriodQuery, DeedQuery, DemographicEnablerQuery, DemographicQuery, DepotQuery, DeviceEnablerQuery, DeviceQuery, DictionaryQuery, DirectionQuery, DirectoryEntryQuery, DirectoryQuery, DispatchConstrainerEnablerQuery, DispatchConstrainerQuery, DispatchEnablerQuery, DispatchProcessorEnablerQuery, DispatchProcessorQuery, DispatchQuery, DistributorQuery, DocetQuery, EdgeEnablerQuery, EdgeQuery, EffortQuery, EngineQuery, EngineQuery, EnrollmentQuery, EntryQuery, EntryQuery, EntryQuery, EntryQuery, EventQuery, FamilyQuery, FileQuery, FiscalPeriodQuery, FloorQuery, ForumQuery, FoundryQuery, FrontOfficeQuery, FunctionQuery, GradebookColumnQuery, GradebookColumnSummaryQuery, GradebookQuery, GradeEntryQuery, GradeQuery, GradeSystemQuery, GraphQuery, HierarchyQuery, HoldEnablerQuery, HoldQuery, IdiomQuery, IngredientQuery, InputEnablerQuery, InputQuery, InquestQuery, InquiryEnablerQuery, InquiryQuery, InstallationContentQuery, InstallationQuery, InstructionQuery, IntersectionQuery, InventoryQuery, IssueConstrainerEnablerQuery, IssueConstrainerQuery, IssueEnablerQuery, IssueProcessorEnablerQuery, IssueProcessorQuery, IssueQuery, IssueQuery, ItemQuery, ItemQuery, ItemQuery, ItemQuery, JobConstrainerEnablerQuery, JobConstrainerQuery, JobProcessorEnablerQuery, JobProcessorQuery, JobQuery, JournalEntryQuery, JournalQuery, KeyQuery, LeaseQuery, LessonQuery, LocationQuery, LogEntryQuery, LogEntryQuery, LogQuery, MailboxQuery, MapQuery, MessageQuery, MeterQuery, ModelQuery, ModuleQuery, NodeQuery, ObjectiveBankQuery, ObjectiveQuery, ObstacleEnablerQuery, ObstacleQuery, OfferingConstrainerEnablerQuery, OfferingConstrainerQuery, OfferingQuery, OfficeQuery, OffsetEventEnablerQuery, OffsetEventQuery, OntologyQuery, OrderQuery, OrganizationQuery, OsidAggregateableQuery, OsidBrowsableQuery, OsidCapsuleQuery, OsidCatalogQuery, OsidCompendiumQuery, OsidConstrainerQuery, OsidContainableQuery, OsidEffectuatorQuery, OsidEnablerQuery, OsidExtensibleQuery, OsidFederateableQuery, OsidGovernatorQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidOperableQuery, OsidOperatorQuery, OsidProcessorQuery, OsidRelationshipQuery, OsidRequestQuery, OsidRuleApplicatorQuery, OsidRuleQuery, OsidSourceableQuery, OsidSubjugateableQuery, OsidTemporalQuery, OublietteQuery, PackageQuery, ParameterProcessorEnablerQuery, ParameterProcessorQuery, ParameterQuery, ParameterQuery, ParticipantQuery, PathQuery, PathQuery, PayerQuery, PaymentQuery, PeriodQuery, PersonQuery, PlanQuery, PollsQuery, PoolConstrainerEnablerQuery, PoolConstrainerQuery, PoolEnablerQuery, PoolProcessorEnablerQuery, PoolProcessorQuery, PoolQuery, PositionQuery, PostEntryQuery, PostQuery, PostQuery, PressQuery, PriceEnablerQuery, PriceQuery, PriceScheduleQuery, ProcedureQuery, ProcessConstrainerEnablerQuery, ProcessConstrainerQuery, ProcessEnablerQuery, ProcessProcessorEnablerQuery, ProcessProcessorQuery, ProcessQuery, ProcessQuery, ProductQuery, ProficiencyQuery, ProfileEntryEnablerQuery, ProfileEntryQuery, ProfileItemQuery, ProfileQuery, ProgramEntryQuery, ProgramOfferingQuery, ProgramQuery, ProjectQuery, ProvisionableEnablerQuery, ProvisionableQuery, ProvisionEnablerQuery, ProvisionQuery, ProvisionReturnQuery, PublisherQuery, QualifierQuery, Query, QuestionQuery, QueueConstrainerEnablerQuery, QueueConstrainerEnablerQuery, QueueConstrainerQuery, QueueConstrainerQuery, QueueEnablerQuery, QueueEnablerQuery, QueueProcessorEnablerQuery, QueueProcessorEnablerQuery, QueueProcessorQuery, QueueProcessorQuery, QueueQuery, QueueQuery, RaceConstrainerEnablerQuery, RaceConstrainerQuery, RaceProcessorEnablerQuery, RaceProcessorQuery, RaceQuery, RealmQuery, ReceiptQuery, RecipeQuery, RecurringEventEnablerQuery, RecurringEventQuery, RegistrationQuery, RegistrationRequestItemQuery, RegistrationRequestQuery, RegistrationTargetQuery, RelationshipEnablerQuery, RelationshipQuery, RelevancyEnablerQuery, RelevancyQuery, RenovationQuery, ReplyQuery, RepositoryQuery, RequestQuery, RequestTransactionQuery, RequisiteQuery, ResourceQuery, ResourceRelationshipQuery, ResponseQuery, ResultQuery, RoomQuery, RouteQuery, RouteSegmentQuery, RuleQuery, SceneQuery, ScheduleQuery, ScheduleSlotQuery, SequenceRuleEnablerQuery, SequenceRuleQuery, SettingQuery, ShipmentQuery, SignalEnablerQuery, SignalQuery, SiteQuery, SpeedZoneEnablerQuery, SpeedZoneQuery, StateQuery, StatisticQuery, StepConstrainerEnablerQuery, StepConstrainerQuery, StepEnablerQuery, StepProcessorEnablerQuery, StepProcessorQuery, StepQuery, StockQuery, StoreQuery, SubjectQuery, SubscriptionEnablerQuery, SubscriptionQuery, SummaryQuery, SupersedingEventEnablerQuery, SupersedingEventQuery, SyllabusQuery, SystemQuery, TermQuery, TextQuery, TimePeriodQuery, TodoProducerQuery, TodoQuery, TriggerEnablerQuery, TriggerQuery, UtilityQuery, ValueEnablerQuery, ValueQuery, VaultQuery, VoteEnablerQuery, VoteQuery, WarehouseQuery, WorkflowEventQuery, WorkQuery, WorkQuery

public interface OsidQuery extends Suppliable

The OsidQuery is used to assemble search queries. An OsidQuery is available from an OsidQuerySession and defines methods to match objects. Once the desired parameters are set, the OsidQuery is given to the designated search method. The same OsidQuery returned from the session must be used in the search as the provider may utilize implementation-specific data wiithin the object.

If multiple data elements are set in this interface, the results matching all the given data (eg: AND) are returned.

Any match method inside an OsidQuery may be invoked multiple times. In the case of a match method, each invocation adds an element to an OR expression. Any of these terms may also be negated through the match flag.

OsidQuery { OsidQuery.matchDisplayName AND (OsidQuery.matchDescription OR OsidQuery.matchDescription)}            
OsidObjects allow for the definition of an additonal records and the OsidQuery parallels this mechanism. An interface type of an OsidObject record must also define the corresponding OsidQuery record which is available through query interfaces. Multiple requests of these typed interfaces may return the same underlying object and thus it is only useful to request once.

An OsidQuery may be used to query for set or unset values using the "match any" methods. A field that has not bee explicitly assigned may default to a value. If multiple language translations exist and the query session is placed in a non-default locale, fields that have not been explicitly assigned in the non-default locale are considered unset even if the values from the default locale appear in the objects.

  • Method Details

    • getStringMatchTypes

      TypeList getStringMatchTypes()
      Gets the string matching types supported. A string match type specifies the syntax of the string query, such as matching a word or including a wildcard or regular expression.
      Returns:
      a list containing the supported string match types
      Compliance:
      mandatory - This method must be implemented.
    • supportsStringMatchType

      boolean supportsStringMatchType(Type stringMatchType)
      Tests if the given string matching type is supported.
      Parameters:
      stringMatchType - a Type indicating a string match type
      Returns:
      true if the given Type is supported, false otherwise
      Throws:
      NullArgumentException - stringMatchType is null
      Compliance:
      mandatory - This method must be implemented.
    • matchKeyword

      void matchKeyword(String keyword, Type stringMatchType, boolean match)
      Adds a keyword to match. Multiple keywords can be added to perform a boolean OR among them. A keyword may be applied to any of the elements defined in this object such as the display name, description or any method defined in an interface implemented by this object.
      Parameters:
      keyword - keyword to match
      stringMatchType - the string match type
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - keyword is not of stringMatchType
      NullArgumentException - keyword or stringMatchType is null
      UnsupportedException - supportsStringMatchType(stringMatchType) is false
      Compliance:
      mandatory - This method must be implemented.
    • clearKeywordTerms

      void clearKeywordTerms()
      Clears all keyword terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAny

      void matchAny(boolean match)
      Matches any object.
      Parameters:
      match - true to match any object, false to match no objects
      Compliance:
      mandatory - This method must be implemented.
    • clearAnyTerms

      void clearAnyTerms()
      Clears the match any terms.
      Compliance:
      mandatory - This method must be implemented.