JDM exceptions (continued)
Thrown when there is failure in task execution or execution
status retrieval methods.
Thrown when the given method arguments are not valid. For
example, when the user gives a mining object name longer
than the supported name length, this exception is thrown.
Thrown when the application calls the methods that are not
supported by a JDM implementation. For example, if a JDM
implementation does not support the cost matrix capability for
a classification function, the cost matrix-related methods
would throw this exception.
Discovering DME Capabilities
Since not all vendors support all mining algorithms and functions,
the JDM standard provides vendors the flexibility to adopt the stan-
dard without expanding their basic set of mining functions or algo-
rithms. However, having a standard that allows flexible feature
implementation poses challenges for writing interoperable applica-
tion code. To mitigate this, JDM provides the ability to discover DME
capabilities at runtime by defining a list of capabilities using enumer-
ation classes. For example, the capabilities of Connection are enumer-
ated using the ConnectionCapabilities enum. The ConnectionFactory
and Connection objects provide supportCapabilities methods to dis-
cover DME capabilities.
DME capabilities are broadly divided into three major types:
infrastructure capabilities, function and algorithm capabilities, and task
capabilities . Infrastructure capabilities include, for example, whether
the DME supports synchronous and asynchronous execution of the
tasks, the types of mining objects supported by the DME, and the
persistence options supported for mining objects by the DME.
Function capabilities include, for example, whether the CostMatrix is
supported for Classification . Algorithm capabilities include, for
example, whether tree node statistics output is supported by the
decision tree algorithm implementation.
Applications can check function and algorithm capabilities sup-
ported by a DME before using them, especially if application
designers want to run such applications across multiple vendor
DME implementations. To this end, the factory object associated