Science Environment for Ecological Knowledge
Ecoinformatics site parent site of Partnership for Biodiversity Informatics site parent site of SEEK - Home
Science Environment for Ecological Knowledge









 

 

 



KRSMS Semantic Annotation Language

Difference between version 172 and version 168:

Line 63 was replaced by line 63
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Lines 66-71 were replaced by lines 66-68
- This pattern can be read as "For each unique x value of R create
- an instance of C." In this example, the term "R.x" is a __<a
- href="#variable">resource variable</a>__. Executing this pattern
- results in the following document, assuming there are __n__
- unique values of {{x}} in {{R}} <a
- href="#3">[4]</a>. As above, identifiers are generated as a result of
+ This pattern can be read as "For each unique x value of R create
+ an instance of C." In this example, the term "R.x" is a __resource variable__. Executing this pattern results in the following document, assuming there are __n__
+ unique values of {{x}} in {{R}}[4]. As above, identifiers are generated as a result of
Line 119 was replaced by line 116
- !!!3.1 Individuals
+ !!3.1 Individuals
Line 128 was replaced by line 125
- <individual type="ont:C" foreach="R.x, R.y"/>
+ <individual type="ont:C" foreach="DISTINCT R.x, R.y"/>
Line 151 was replaced by line 148
- SELECT R1.x, R2.x
+ SELECT DISTINCT R1.x, R2.x
Line 165 was replaced by line 162
- <individual type="ont:C" foreach="R.x, R.y" if="R.x>0"/>
+ <individual type="ont:C" foreach="DISTINCT R.x, R.y" if="R.x>0"/>
Lines 197-198 were replaced by line 194
-
- !!!3.2 Object Properties
+ !!3.2 Object Properties
Line 206 was replaced by line 202
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Lines 214-215 were replaced by line 210
- __n__ unique values of {{x}} in {{R}} <a
- href="#6">[6]</a>.
+ __n__ unique values of {{x}} in {{R}}[6].
Line 258 was replaced by line 253
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Line 283 was replaced by line 278
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Line 319 was replaced by line 314
- !!!3.3 Datatype Properties
+ !!3.3 Datatype Properties
Line 346 was replaced by line 341
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Line 366 was replaced by line 361
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Line 371 was replaced by line 366
- This pattern can be read as "For each unique x value of R, create
+ This pattern can be read as "For each unique x value of R, create
Line 382 was replaced by line 377
- Resource variables can be used outside of the current iteration
+ Resource variables can be used outside of the current iteration
Line 393 was replaced by line 388
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Line 398 was replaced by line 393
- This pattern can be read as "For each unique x value of R, create
+ This pattern can be read as "For each unique x value of R, create
Line 417 was replaced by line 412
- <individual type="ont:C" foreach="R1.x">
+ <individual type="ont:C" foreach="DISTINCT R1.x">
Line 422 was replaced by line 417
- corresponds to the following first-order rule, assuming
+ corresponds to the following first-order rule, assuming
Lines 431-432 were replaced by line 426
-
- In an instantiation pattern, {{value}} expressions must
+ In an instantiation pattern, {{value}} expressions must
Line 446 was replaced by line 440
- <individual type="ont:C" foreach="R.x">
+ <individual type="ont:C" foreach="DISTINCT R.x">
Line 459 was replaced by line 453
- Thus, the condition on the property does not affect whether the
+ Thus, the condition on the property does not affect whether the
Line 466 was replaced by line 460
- Like with conditions on {{individual}} statements, no
+ Like with conditions on {{individual}} statements, no
Line 476 was replaced by line 470
- !!!3.3 Complex Instantiation Patterns
+ !!3.3 Complex Instantiation Patterns
Line 487 was replaced by line 481
- __Pattern Labels.__ Each individual instantiation pattern can
+ __Pattern Labels.__ Each individual instantiation pattern can
Line 492 was replaced by line 486
- <individual label="o1" type="ont:C" foreach="R.x"/>
+ <individual label="o1" type="ont:C" foreach="DISTINCT R.x"/>
Line 495 was replaced by line 489
- The first-order rule for this pattern is:
+ The first-order rule for this pattern is:
Line 501 was replaced by line 495
- The use of labels in this way does not change the interpretation
+ The use of labels in this way does not change the interpretation
Lines 506-508 were replaced by lines 500-501
- __Referencing Patterns.__ Properties can reference patterns
- using pattern labels in {{value}} expressions <a
- href="#9">[9]</a>. To distinguish pattern references from constants
+ __Referencing Patterns.__ Properties can reference patterns
+ using pattern labels in {{value}} expressions[9]. To distinguish pattern references from constants
Line 514 was replaced by line 507
- <individual label="o2" type="ont:D" foreach="R.x, R.y">
+ <individual label="o2" type="ont:D" foreach="DISTINCT R.x, R.y">
Line 519 was replaced by line 512
- This pattern can be read as "For each unique x, y (tuple) value
+ This pattern can be read as "For each unique x, y (tuple) value
Line 529 was replaced by line 522
- As with resource variables, pattern references are interpreted
+ As with resource variables, pattern references are interpreted
Line 538 was replaced by line 531
- The iteration context of a property is not required to be a
+ The iteration context of a property is not required to be a
Line 543 was replaced by line 536
- <individual label="o3" type="ont:D" foreach="R.y, R.z">
+ <individual label="o3" type="ont:D" foreach="DISTINCT R.y, R.z">
Line 548 was replaced by line 541
- each unique {{y}}, {{z}} pair for {{R}}
+ each unique {{y}}, {{z}} pair for {{R}}
Line 554 was replaced by line 547
- Also, the iteration context of a property only applies to the
+ Also, the iteration context of a property only applies to the
Line 559 was replaced by line 552
- <individual label="o5" type="ont:E" foreach="R.x, R.z">
+ <individual label="o5" type="ont:E" foreach="DISTINCT R.x, R.z">
Line 563 was replaced by line 556
- <individual label="o4" type="ont:D" foreach="R.y">
+ <individual label="o4" type="ont:D" foreach="DISTINCT R.y">
Line 569 was replaced by line 562
- The corresponding first-order rules for these patterns are:
+ The corresponding first-order rules for these patterns are:
Line 579 was replaced by line 572
- Thus, although property values containing pattern references are
+ Thus, although property values containing pattern references are
Line 592 was replaced by line 585
- The triples created from pattern {{o1}} are:
+ The triples created from pattern {{o1}} are:
Line 599 was replaced by line 592
- The triples created from pattern {{o4}} are:
+ The triples created from pattern {{o4}} are:
Line 607 was replaced by line 600
- And the triples created from pattern {{o5}} are:
+ And the triples created from pattern {{o5}} are:
Line 616 was replaced by line 609
- Notice that both individuals of pattern {{o5}} are
+ Notice that both individuals of pattern {{o5}} are
Line 624 was replaced by line 617
- To use the iteration context of {{o5}} for
+ To use the iteration context of {{o5}} for
Line 630 was replaced by line 623
- <individual label="o6" type="ont:E" foreach="R.x, R.z">
+ <individual label="o6" type="ont:E" foreach="DISTINCT R.x, R.z">
Line 637 was replaced by line 630
- The corresponding first-order rule for this pattern is:
+ The corresponding first-order rule for this pattern is:
Line 646 was replaced by line 639
- Note that in this case, however, we generate only one
+ Note that in this case, however, we generate only one
Line 652 was replaced by line 645
- __Property Iteration and Labels__. It is also possible to apply
+ __Property Iteration and Labels__. It is also possible to apply
Lines 659-660 were replaced by lines 652-653
- <individual label="o7" type="ont:E" foreach="R.x, R.z">
- <property type="ont:Q" valuetype="ont:D" foreach="R.y" label="o8">
+ <individual label="o7" type="ont:E" foreach="DISTINCT R.x, R.z">
+ <property type="ont:Q" valuetype="ont:D" foreach="DISTINCT R.y" label="o8">
Line 666 was replaced by line 659
- results in the first-order rule:
+ results in the first-order rule:
Line 676 was replaced by line 669
- As shown, labels may also be applied to intermediate individuals
+ As shown, labels may also be applied to intermediate individuals
Removed line 684
-
Lines 687-698 were replaced by line 679
- __<a name="annotation">Semantic Annotation<a/>:__ A mapping
- from a resource to an instance(s) of an ontology(ies). Semantic
- annotations in our framework have identifiers as well as associated
- metadata (who created the annotation, and so on).
-
- __<a name="resource">Resource</a>:__ A structured information
- source with a defined schema. Can be a dataset or a service, such as
- a workflow, actor, or web-service.
-
- __<a name="ontology">Ontology</a>:__ Here, by ontology we mean
- an OWL-based representation of a set of concepts, properties, and
- constraints (axioms).
+ ;Semantic Annotation: A mapping from a resource to an instance(s) of an ontology(ies). Semantic annotations in our framework have identifiers as well as associated metadata (who created the annotation, and so on).
Lines 700-726 were replaced by lines 681-706
- __<a name="template">Semantic Annotation Template</a>:__ A set
- of instantiation patterns within a particular semantic annotation.
-
- __<a name="pattern">Instantiation Pattern</a>:__ An XML-based
- specification of a mapping from portions of a resource to instances
- of an ontology.
-
- __<a name="prefix">Prefix Label</a>:__ A label used to
- represent an ontology location.
-
- __<a name="variable">Resource Variable</a>:__ An attribute of a
- resource, which in an annotation template takes the form 'R.x' (or
- more generally a path expression 'R.x1.x2...xn' for nested
- relations).
-
- __<a name="context">Iteration Context</a>:__ The set of
- resource variables, or current variable bindings (as the pattern is
- being executed), for a property or condition in an instantiation
- pattern. The iteration context is determined by the enclosing
- {{foreach}} expression of the item in question.
-
- __<a name="label">Pattern Label</a>:__ A label assigned to a
- template instantiation pattern.
-
- __<a name="reference">Pattern Reference</a>:__ A reference to a
- template instantiation pattern (using a pattern label) from within
- an object property in another (or possibly the same) pattern.
+ ;Resource: A structured information source with a defined schema. Can be a dataset or a service, such as a workflow, actor, or web-service.
+
+ ;Ontology: Here, by ontology we mean an OWL-based representation of a set of concepts, properties, and constraints (axioms).
+
+ ;Semantic Annotation Template: A set of instantiation patterns within a particular semantic annotation.
+
+ ;Instantiation Pattern: An XML-based specification of a mapping from portions of a resource to instances of an ontology.
+
+ ;Prefix Label: A label used to represent an ontology location.
+
+ ;Resource Variable: An attribute of a resource, which in an annotation template takes the form 'R.x' (or more generally a path expression 'R.x1.x2...xn' for nested relations).
+
+ ;Iteration Context: The set of resource variables, or current variable bindings (as the pattern is being executed), for a property or condition in an instantiation pattern. The iteration context is determined by the enclosing {{foreach}} expression of the item in question.
+
+ ;Pattern Label: A label assigned to a template instantiation pattern.
+
+ ;Pattern Reference: A reference to a template instantiation pattern (using a pattern label) from within an object property in another (or possibly the same) pattern.
+
+
+ !!!Footnotes
+
+ [#1] In OWL, instances of classes are called 'individuals.'
+
+ [#2] Alternatively, we could use anonymous identifiers for generated OWL individuals. However, using explicit as opposed to anonymous identifiers has a number of advantages, e.g., identifiers can be used for "provenance" (that is, using conventions for identifier names one could go from the created OWL individuals back to the resource item used to generte the resource), and also make it easier to formalize the interpretation of patterns in first-order logic.
+
+ [#3] The examples of resources in this document are assumed to be relational data sets. However, the approach described here can be used with a variety of resource structures, including nested relational data (e.g., like in XML).
At line 727 added 1 line.
+ [#4] By default, variables in {{foreach}} expressions that are null in the resource do not generate corresponding ontology class instances.
At line 728 added 1 line.
+ [#5] We use the notation {{(Axy)}} for universal quantification over variables {{x}} and {{y}}; {{(Exy)}} for existential quantification over variables {{x}} and {{y}}; and {{->}} for implication.
Lines 730-764 were replaced by line 712
- <a name="footnotes"></a> <h2>Footnotes</h2>
-
- <a name="1">[1]</a> In OWL, instances of classes are called
- 'individuals.'
-
- <a name="2">[2]</a> Alternatively, we could use anonymous
- identifiers for generated OWL individuals. However, using explicit
- as opposed to anonymous identifiers has a number of advantages,
- e.g., identifiers can be used for "provenance" (that is, using
- conventions for identifier names one could go from the created OWL
- individuals back to the resource item used to generte the resource),
- and also make it easier to formalize the interpretation of patterns
- in first-order logic.
-
- <a name="2">[3]</a> The examples of resources in this document are
- assumed to be relational data sets. However, the approach described
- here can be used with a variety of resource structures, including
- nested relational data (e.g., like in XML).
-
- <a name="3">[4]</a> By default, variables in {{foreach}}
- expressions that are null in the resource do not generate
- corresponding ontology class instances.
-
- <a name="5">[5]</a> We use the notation {{(Axy)}} for
- universal quantification over variables {{x}} and
- {{y}}; {{(Exy)}} for existential quantification
- over variables {{x}} and {{y}}; and
- {{->}} for implication.
-
- <a name="6">[6]</a> Note that the use of {{property}}
- expressions in this way is useful for cases in which the property is
- either (i) not defined (or optional) in the ontology for the
- associated class, or (ii) is a required property, but the
- {{valuetype}} expression gives a subclass of the property's
- defined range.
+ [#6] Note that the use of {{property}} expressions in this way is useful for cases in which the property is either (i) not defined (or optional) in the ontology for the associated class, or (ii) is a required property, but the {{valuetype}} expression gives a subclass of the property's defined range.

Back to KRSMS Semantic Annotation Language, or to the Page History.