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









 

 

 



Sparrow Language

Difference between version 32 and version 1:

At line 0 added 1 line.
+ !!! Intended audience
At line 1 added 101 lines.
+ This document is intended for __SEEK and Kepler developers__.
+
+ It is a __DRAFT DESIGN DOCUMENT__ and does not reflect functionality as it
+ currently exists in Kepler or SEEK. Comments and feedback are appreciated.
+
+ !!! Introduction
+
+ Sparrow is a description-logic syntax that is meant as a "lightweight" alternative to RDF/S and OWL for defining ontologies. This document details the sparrow syntax. Note that in terms of expressivity, sparrow lies between RDF/S and OWL-DL.
+
+ !!! Sparrow
+
+ Sparrow, like description logics, represent ontologies using concepts, roles, and individuals. We desribe each of these below.
+
+ !! Concepts
+
+ In sparrow, concepts are defined using ''sentences.'' For instance, we can introduce a new concept called 'Vegetarian' using the following sentence.
+
+ {{{
+ concept Vegetarian
+ }}}
+
+ This sentence simply states that the 'Vegetarian' is a concept. Note that the term 'concept' is a reserved word in the sparrow language. A concept can be further elaborated using ''concept axioms,'' which are essentially more complex sentences of a restricted form. Consider the following example.
+
+ {{{
+ concept Animal kind-of Organism
+ }}}
+
+ This sentence states that 'Animal' is a subconcept of 'Organism'. In other words, every animal is an organism. The term 'kind-of' is a reserved word (sometimes referred to as "is-a"). The sentence is considered an axiom because it is asserting a rule, or relationship, that is assumed to hold between 'Animal' and 'Organism'. Namely, that being an animal implies being an organism.
+
+ Both 'Animal' and 'Organism' are asserted as being concepts by this sentence. The sentence is equivalent to the following three sparrow sentences.
+
+ {{{
+ concept Organism
+ concept Animal
+ concept Animal kind-of Organism
+ }}}
+
+ Multiple sentences defining the same concept can be combined through conjunction (and). For example, the sentences:
+
+ {{{
+ concept Animal kind-of Organism
+ concept Animal kind-of not Plant
+ }}}
+
+ can be combined into the sentence:
+
+ {{{
+ concept Animal kind-of Organism and not Plant
+ }}}
+
+ Here the terms 'and' and 'not' are sparrow reserved words. The sentence states that an animal is an organism but not a plant. For convenience, 'and' can be replaced by the term 'but', for example:
+
+ {{{
+ concept Animal kind-of Organism but not Plant
+ }}}
+
+ Capitalization is not important in sparrow, thus the previous sentence is equivalent to:
+
+ {{{
+ CONCEPT animal KIND-OF organism BUT NOT plant
+ }}}
+
+ Another type of concept axiom that can be expressed in sparrow is equivalence among concepts. For example, consider the following sentence.
+
+ {{{
+ concept Human same-as Person
+ }}}
+
+ This sentence asserts that 'Human' and 'Person' denote the same concept.
+
+
+ !! Roles
+
+ A more complex example ...
+
+ {{{
+ concept Macromolecule same-as Molecule that contains at-least 100 Atom
+ }}}
+
+
+
+ !! Individuals
+
+
+
+ !!! Packaging Sparrow Ontologies
+
+ A sparrow ontology is made up of a set of sparrow sentences. Typically an ontology would be stored in a single file, however, a file could conceivable store multiple ontologies. An ontology is started with the 'ontology' reserved word. An ontology can import definitions from other ontologies. The following example starts an ontology definition and imports an external ontology.
+
+ {{{
+ ontology myOnt 'http://seek.ecoinformatics.org/ontology1#'
+ import yourOnt 'http://seek.ecoinformatics.org/ontology2#'
+
+ ...
+
+ }}}
+
+ !!! Sparrow Reserved Wordsf
+
+ ||reserved word||variant
+ | and | but, that

Back to Sparrow Language, or to the Page History.