Supported by ESIP’s Semantic Web cluster, ToolMatch is intended to be a service based on community-built semantic web applications that will provide data users with the means to match their datasets with a comprehensive list of useful, appropriate tools, and also provide data tool developers with datasets or data collections that will work with their tools.
Problem: Initially, the ToolMatch service would solve two simple but prevalent use cases. The first use case involves the fact that, for a given dataset, the tools that can be used to work with the dataset, (e.g., by reading, visualizing, mapping, analyzing the data) are difficult to find. In many cases, the information that Tool A works with Dataset B is somewhere on the Web, but not in a readily identifiable or discoverable form. In other cases, particularly for more generalized tools, the information does not exist at all, at least until somebody tries to use the tool on a given dataset. What a user needs to do is to be able to search for the tools that can be used with a given dataset, and then find out what the tool can do with the dataset.
The second use case is a converse of the first: for a given data tool, it can be difficult to find datasets that will work with the tool most appropriately, and also to find data users who can provide the feedback necessary to build comprehensive and sustainable frameworks and methods of access / use of a tool. What a tool developer needs to do is to be able to search for datasets that can be used with their tool, and to capture information about what the data user would like to be able to do with their data in the shorter and longer terms.
Proposed Solution: The ToolMatch service will have, at its foundation, a simple ontology and set of rules that will describe what kinds of tools work with what kinds of datasets. A semantic representation of known tools (instance data) will be added to the ToolMatch knowledge base so that, in the first use case, when information about a set of data is proffered by a ToolMatch user, RDF triples will be generated to represent that data, inferencing will be run against the model, and a set of tools can be generated that will work with that data.
In the second use case, a user interface and web services will allow tool developers and/or tool users to enter information about a tool in order to discover data that can work with that tool.
For both use cases, a simple user interface for user interaction, and a simple RESTful web service for use by applications and data portals, will give the client access to the ToolMatch knowledge base with the same goal of matching tools with data.