ToolMatch Proposal 0.2

From Earth Science Information Partners (ESIP)

Contact: Eric Rozell

Use Cases

Use Case 1

  • Description: Automatically match tool to a dataset collection based on dataset collection attributes.
  • Purpose: Dataset collection providers who annotate their collections using a specific set of relevant attributes can allow users to automatically discover tools that work with those datasets. Dataset collection providers need only worry about annotating specific attributes of their collections. Tool providers must determine relevant attributes of a dataset that would determine compatible. No explicit annotation of compatibility between collections and datasets is needed.
  • Example: Match specific OpenLayers mapping tool to dataset collections accessible from a WMS.
  • Generic Example: Match ToolA to dataset collections with attribute value AttributeX.
  • Step 1: Define a subclass of toolmatch:DatasetCollection, toolmatch:ToolACompatibleCollection
  • Step 2: Assert that any instance of toolmatch:ToolACompatibleCollection is compatible with ToolA
  • Step 3: Assert that any instance with attribute value, AttributeX, is an instance of toolmatch:ToolACompatibleCollection

Stretch Use Case

  • Description: Automatically match any tool from a specific subclass of tools to dataset collections with specific attributes.
  • Purpose: This should reduce the number of steps that must be taken by tool providers to annotate their tools. Rather than determine what attributes of a dataset collection are relevant, a tool provider can find a class of tools similar to its own, which has already determined these relevant attributes.

Ontology Model

Classes

  • toolmatch:DataAccess
  • toolmatch:DataCollection
  • toolmatch:Tool

Properties

  • toolmatch:compatibleWith
    • toolmatch:visualizes
      • toolmatch:maps
    • toolmatch:visualizedBy
      • toolmatch:mappedBy
  • toolmatch:hasAccessibility
Entity Type Description
toolmatch:DataAccess owl:Class A specific attribute of a toolmatch:DataCollection. Namely, describing that a toolmatch:DataCollection is available by a specific service or in a specific format.
toolmatch:DataCollection owl:Class A dataset collection, which should be matched to toolmatch:Tool instances. It should have one or more attributes.
toolmatch:Tool owl:Class A broadly-defined class of tools which work with toolmatch:DataCollection instances. It should be paired with a subclass of toolmatch:DataCollection, which defines the criteria for a "compatible" toolmatch:DataCollection.
toolmatch:compatibleWith owl:ObjectProperty A symmetric relationship between toolmatch:Tool instances and toolmatch:DataCollection instances. In other words, a tool is compatible with a data collection, then that data collection is also compatible with that tool.
toolmatch:visualizes owl:ObjectProperty A subproperty of toolmatch:compatibleWith denoting a specific relationship between toolmatch:Tool instances and toolmatch:DataCollection instances. Note, this is not a symmetric property, but instead an inverse property of toolmatch:visualizedBy.
toolmatch:maps owl:ObjectProperty A subproperty of toolmatch:visualizes, defining a specific visualization relationship. This is an inverse property of toolmatch:mappedBy.
toolmatch:visualizedBy owl:ObjectProperty Defines a relationship from a toolmatch:DataCollection that can be visualized by a toolmatch:Tool.
toolmatch:mappedBy owl:ObjectProperty A specialization of the toolmatch:visualizedBy property.
toolmatch:hasAccessibility owl:ObjectProperty A property used to assert that a toolmatch:DataCollection is accessible by a given toolmatch:DataAccess instance (e.g., it's available in a specific format).