[sc34wg3] SAM-issue term-scope-def

Marc de Graauw sc34wg3@isotopicmaps.org
Sat, 13 Jul 2002 15:57:44 +0200


Bernard,

I've taken a closer look at your definitions and find some parts hard to
understand. I think I figured out what you mean, but am not certain I've
interpreted you right. So please help me out.

| 2. "S applies" is a logical non-sense if S is considered as a set. As
suggested before,
| and as discussed language example seems to clearly show, a formal expression
of "S
| applies" has to be grounded on the definition of scoping variables:
|
| -- There exists a set of scoping variables {Vk} attached to A.
| -- Each variable has a domain Dk (the set of all possible values of Vk)
| -- Each variable has at least one value declared in S
|
| Let's take the case where S has a single element. S ={s}
| Let V be the variable of which s is a value.
|
| "S applies" means "V = s" (shortcut for "the value of V is s")
|
| Example: V is the "language" variable, s is "Dutch"
| "Dutch applies" means :
| "The value of the language variable is Dutch"
|
| Now if S has several elements.
| Let Sk be the intersection of Dk and S. It's clear that S is the union of all
Sk.
|
| What does "S applies" means? It should be "for all k, value of Vk belongs to
Sk"

Isn't that the same as saying: "for all k, value of Vk belongs to S"?
Since all values of Vk are in Dk, then iff value of Vk is in S, it is in Sk
(intersection of S and Dk) so those statements seem the same to me. I find it
hard to see what the introduction of Sk adds to your argument, except making it
more complex.

Now what do you intend the 'scoping variables' to be? Is this intended as a kind
of 'user context', where a user picks a value for each scoping variable? Are the
scoping variables allowed to have only a single value at a time? Must they
always have a value? I.e. if a variable 'region' has as its domain {France,
Navarre} must the value of 'region' be either 'France' or 'Navarre', can it be
empty, or can it have both values? The way I figured it out you probably mean
the scoping variables have only one value each. So when there is a variable
'language' the user picks a value, say Dutch, and the scope applies iff the
scope contains the topic 'Dutch'. It doesn't matter whether the scope contains
other language topics too. If the scope however contains topics which belong to
another variable, the user must pick a value for that variable too, say the user
picks 'Navarre' for the 'region' variable, then a scope applies iff it contains
both 'Dutch' and 'Navarre', and possibly other language and region topics, but
not if it contains themes of yet another variable.

Is this interpretation right?

|
| 3. Now what is the formal expression of "A is valid when S applies"
| "When" should be understood IMO as a sufficient condition, that is:
|
| If "S applies" then "A is valid"
|
| Otherwise said:
|
| (for all k, value of Vk belongs to Sk) => A
|
| Or, more expanded:
|
| "If (value of V1 belongs to S1) and (value of V2 belongs to S2) and ... (value
of Vk
| belongs to Sk) then A is valid"
|
| Now if "when" is understood as "if and only if", we would have (for all k, Vk
belongs to
| Sk) <=> A
| But that seems not sustainable, because asserting the validity in a scope does
not infer
| anything of the validity in other scopes, as "tennis" example clearly shows.
|
| It figures that a proper use of scope should imply for each assertion
| -- The declaration of scoping variables (e.g. language)
| -- The declaration of domain of values for each scoping variable (e.g. Dutch,
German, ...)
|

I fail to see why the domains would need to be declared, as long as it is
declared which variable each theme belongs to. It is problematic too. When I
make a Topic Map, and I am interested only in Dutch and German, I do not want to
declare a complete domain of all languages. Neither do I want to declare a
variable type 'language-dutch-or-german' instead of the generic 'language'
variable, since that would make it very hard to include French in a later stage,
and it makes perfect sense to say the variable is 'language' even when my Topic
Map does not use all languages.

| Merging process could then be based on:
|
| -- Union of sets of scoping variables of merged topic map.

Does this mean you want this merge to occur?

Merge assertion 1:
{Henri is King} (scoped assertion)
{France, Navarre} (space scope)

with assertion 2:
{Henri is King} (scoped assertion)
{1589-1610} (time scope)

to yield assertion 3:
{Henri is King} (scoped assertion)
{France, Navarre} (space scope)
{1589-1610} (time scope)

| -- Union of domains of values for each scoping variable.

Don't you mean "union of Sk's"? Seems consistent with what you say in another
post:

|{Henri is King} (scoped assertion)
|{France, Navarre} (space scope)
|{1589-1610} (time scope)
|{BV} (source scope)
|
|If you have the same assertion confirmed by "Larousse 1972" (just checked),
this will be
|added to the source member:
|
|{Henri is King} (scoped assertion)
|{France, Navarre} (space scope)
|{1589-1610} (time scope)
|{BV, Larousse} (source scope)

Since here you merge the Sk's of the 'source' variable.

|
| Enough maths for today ... Hope that helps ...
|
| Bernard
|

Thanks,

Marc