See: Description
Interface | Description |
---|---|
Condition |
The
Condition is used to input conditions into a rule
execution. |
Engine |
An
Engine represents a collection of rules. |
EngineAdminSession |
This session creates, updates, and deletes
Engines. |
EngineForm |
This is the form for creating and updating
Engines. |
EngineHierarchyDesignSession |
This session manages a hierarchy of engines.
|
EngineHierarchySession |
This session defines methods for traversing a hierarchy of
Engine objects. |
EngineList |
Like all
OsidLists, EngineList provides a
means for accessing Engine elements sequentially either one
at a time or many at a time. |
EngineLookupSession |
This session provides methods for retrieving
Engine
objects. |
EngineNode |
This interface is a container for a partial hierarchy retrieval.
|
EngineNodeList |
Like all
OsidLists, EngineNodeList
provides a means for accessing EngineNode elements
sequentially either one at a time or many at a time. |
EngineNotificationSession |
This session defines methods to receive notifications on adds/changes
to
Engine objects. |
EngineQuery |
This is the query for searching for engines.
|
EngineQueryInspector |
This is the query inspector for examining engine queries.
|
EngineQuerySession |
This session provides methods for searching
Engine
objects. |
EngineReceiver |
The engine receiver is the consumer supplied interface for receiving
notifications pertaining to new, updated or deleted
Engine
objects. |
EngineSearch |
The search interface for governing engine searches.
|
EngineSearchOrder |
An interface for specifying the ordering of search results.
|
EngineSearchResults |
This interface provides a means to capture results of a search.
|
EngineSearchSession |
This session provides methods for searching
Engine
objects. |
Result |
The
Result is the output of a rule execution. |
Rule |
A
Rule represents an entity that can be executed in a
rules engine. |
RuleAdminSession |
This session creates, updates, and deletes
Rules. |
RuleEngineAssignmentSession |
This session provides methods to re-assign
TerRulesms to
Engine objects A Rule may appear in multiple
Engine objects and removing the last reference to a
Rule is the equivalent of deleting it. |
RuleEngineSession |
This session provides methods to retrieve
Rule to
Engine mappings. |
RuleForm |
This is the form for creating and updating
Rules. |
RuleList |
Like all
OsidLists, RuleList provides a
means for accessing Rule elements sequentially either one
at a time or many at a time. |
RuleLookupSession |
This session provides methods for retrieving
Rule
objects. |
RuleNotificationSession |
This session defines methods to receive notifications on adds/changes
to
Rule objects. |
RuleQuery |
This is the query for searching rules.
|
RuleQueryInspector |
This is the query inspector for examining rule queries.
|
RuleQuerySession |
This session provides methods for searching
Rule
objects. |
RuleReceiver |
The rule receiver is the consumer supplied interface for receiving
notifications pertaining to new or deleted rules.
|
RuleSearch |
The search interface for governing rule searches.
|
RuleSearchOrder |
An interface for specifying the ordering of search results.
|
RuleSearchResults |
This interface provides a means to capture results of a search.
|
RuleSearchSession |
This session provides methods for searching
Rule
objects. |
RulesManager |
The rules manager provides access to rules sessions and provides
interoperability tests for various aspects of this service.
|
RuleSmartEngineSession |
This session manages queries and sequencing to create "smart" dynamic
catalogs.
|
RulesProfile |
The rules profile describes the interoperability among rule services.
|
RulesProxyManager |
The rules manager provides access to rules sessions and provides
interoperability tests for various aspects of this service.
|
RulesSession |
This session provides methods to evaluate and execute rules.
|
The Open Service Interface Definitions for the org.osid.rules service.
The Rules OSID provides a means to evaluate rules and retrieve results.
A Rule
represents a something that can be executed and can
be organized into Engines.
The rule evaluation accepts a
Condition
that is used to supply input conditions to the
rule engine.
The Rules OSID does not define a means for authoring rules. Definitions
exist for evaluating, examining and organizing rules. A Rule
is identified by an Id such that a consumer wishing to evaluate a rule must
have knowledge of the Rule Id
along with the expectations of
data (recod Type
) required in the Condition.
The Rule also implies the structure of the Result,
which can
be a simple boolean value or another structure defined in a Result Record.
Engines can be organized into hierarchies for federation. An engine that is a parent of another engine makes visible the rules of its children.
Example where the consumer executes a rule with knowledge of the
Rule Id
, ConditionRecord
Type,
and
the meaning of the Result.
RulesSession session = manager.getRulesSession(); Condition condition = session.getConditionForRule(shouldIWearACoatRuleId); if (!condition.hasRecordType(temperatureConditionRecordType) { error ("temperature condition record not supported"); } TemperatureCondition temp = condition.getConditionRecord(temperatureConditionRecordType); temp.setTemperature(28); if (session.evaluateRule(shouldIWearACoatRuleId, condition) { putOnACoat(); }
Copyright © 2009 Massachusetts Institute of Technology.
Copyright © 2010 Ingenescus. All Rights Reserved.
This Work is being provided by the copyright holder(s) subject to the following license. By obtaining, using and/or copying this Work, you agree that you have read, understand, and will comply with the following terms and conditions.
Permission to use, copy and distribute unmodified versions of this Work, for any purpose, without fee or royalty is hereby granted, provided that you include the above copyright notices and the terms of this license on ALL copies of the Work or portions thereof.
You may nodify or create Derivatives of this Work only for your internal purposes. You shall not distribute or transfer any such Derivative of this Work to any location or to any third party. For the purposes of this license, "Derivative" shall mean any derivative of the Work as defined in the United States Copyright Act of 1976, such as a translation or modification.
This Work and the information contained herein is provided on an "AS IS" basis WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE WORK OR THE USE OR OTHER DEALINGS IN THE WORK.
The export of software employing encryption technology may require a specific license from the United States Government. It is the responsibility of any person or organization contemplating export to obtain such a license before exporting this Work.