Graph Matching Description
Description of the structure of query and resource graphs to be matched by the semantic matching engine
Graph Matching Description Element
Elements of a Graph Matching Description (GraphMD) are: ClusterMD, NodeMD, and PropertyMD
Matchable
Whereas GraphMDs and ClusterMDs are used to group elements, the instances of this class hold concrete values to be matched by applying a certain type of Matchers
Cluster Matching Description
Description of how to match a cluster (group of nodes) from a query graph with the corresponding cluster from a resource graph
Node Matching Description
Description of how to match a node from a query graph with the corresponding node from a resource graph
Property Matching Description
Description of how to match a property value of a node from a query graph with the corresponding property value of a node from a resource graph
Matcher
Calculates the similarity of two given RDFNodes. The RDFNodes may be Resources (having unique URI) or Literals with numeric or String values.
Numeric Matcher
Matcher which calculates semantic similarity of two numerical values
String Matcher
Matcher which calculates the similarity of two String values
Taxonomic Matcher
Matcher which calculates concept similarity between two given concepts based on their respective positions in the concept hierarchy
Taxonomy
This class represents a hierarchical structure of concepts from a given ontology
Milestone Calculator
A class which calculates milestone values for each hierarchy level of a given taxonomy
Exponential Milestone Calculator
This class represents a milestone calculator using an exponential function m(level) = 0.5 * pow (k_factor, level). The milestone values decrease exponentially allong the hierarchy levels.
Lineal Milestone Calculator
This class represents a milestone calculator using a linear function: m(level) = 1 - (level / deepestLevel)
query Model URL
used to provide a URL of the RDF model holding the query graph to be matched
resource Model URL
used to provide a URL of the RDF model holding the resource graph to be matched
query Graph URI
used to provide a URI of the RDF resource, which represents the entry of the query graph to be matched against resource graphs
resource Graph URI path
used to provide an RDQL path expression which will be evaluated in order to find all URI's of RDF resources representing the entry of each resource graph to be matched againest the query graph
cluster matching descriptions
used to provide a list (in form of an rdf:Bag) of cluster matching descriptions
label
label of the given Graph Matching Description Element
weight
Weight of the given Graph Matching Description Element. The summ of all element weights at a certain description level (for instance, weight of all nodes inside a cluster) equals 1.
node matching descriptions
used to provide a list (in form of an rdf:Bag) of node matching descriptions
matcher
used to privede the Matcher which will calculate the similarity of the query and res nodes/properties
reverse matching
In most cases the matching engine compares a value from a resource graph with the semantically corresponding value from a query graph (= the "required" value). But for some nodes it is reasonable to reverse the matching. A good example is comparing job requirements with applicant's profile. If a person (query graph) looks for a job (resource graph) then while comparing his skills with skills required for a certain position the required skills from a resource graph (job description) become the "should be" values, thus the matching direction has to be reversed.
query node path
used to provide an RDQL path expression which will be evaluated by the matching engine in order to find the queryNode(s)
resource node path
used to provide an RDQL path expression which will be evaluated by the matching engine in order to find the resourceNode(s)
property matching descriptions
used to provide a list (in form of an rdf:Bag) of property matching descriptions
query property URI
URI of the property of the query node
resource property URI
URI of the property of the resource node
decrease similarity
n2, these two numbers have a similarity value = 1 - for n1 > n2, the sim value is a number inside the interval [0,1). A good example for such a case is when comparing the maximum price (n1) of a product some person is willing to pay with the actual product's price (n2). If the product's price is lower than n1 than it meets this person's expectations (therefore sim = 1), otherwise the sim decreases with increasing price. If "with deviation" is set then the similarity dicreases both upwards and downwards.
Range: "upwards", "downwards", "with deviation"]]>
maximum deviation fraction
For two numbers n1 nad n2, maxDevFraction is a fraction of n1 which indicates the maximum deviation from n1 beyond which the similarity between n1 and n2 eqals 0. Example: For n1=10 and maxDevFraction=0.7 and decreaseSim="downwards", any value of n2 which is lower than 3 will result in sim = 0.
case sensitive
Indicates if the matching should be case sensitive or not
similarity inheritance
If set to true (default setting) then sim(queryConcept, resourceConcept = any Subclass of queryConcept) = 1. This assumption seems to be reasonable because a subclass is always a kind of its superclass. Hovewer, there may be cases in which the user wants the actual distance between a subclass and a superclass to be respected in the similarity calculation. In this case, set this parameter to false.
taxonomy
The taxonomy based on which the TaxonomicMatcher calculates the concept similarity
milestone calculator
Indicates the type of milestone calculator which determines milestone values for all taxonomy levels
taxonomy URL
Location of the taxonomy file
root concept URI
URI of the root concept of a given taxonomy
k factor
Parameter used in the milestone formula: 0.5 / Math.pow(k, conceptLevel)where k is a factor larger than 1 that indicates the rate at which the milestone value decreases along the hierarchy.