[sc34wg3] Which set is the unconstrained scope? (SAM-issue 'scope-unconstrained-rep')

Bernard Vatant sc34wg3@isotopicmaps.org
Fri, 7 Jun 2002 19:42:08 +0200


Your analysis is very interesting, although I don't share your conclusions. I don't think
I ever expressed on that point, so here goes.

Saying that the unconstrained scope is an empty set is a non-sense, saying it's the set of
all topics in the topic map is as silly as can be, as you very well show ... and saying
it's universal is arrogant :))

What is the natural (implicit) scope in a topic map? Well, it's obvious enough : it is the
topic map itself !
All unscoped characteristics I consider valid in the limits of the topic map I built, but
I can't infer of their validity outside its borders.

So what? If I want to explicit this implicit scope, it contains *exactly one* topic, which
represents the topic map itself.
It's not empty, and it's not universal.

In mathematical terms, if TM is the topic map : unconstrainedScope(TM) = {reified(TM)}

This reified topic map, explicited at merging time, will be the only topic to be
considered by <mergeMap>

It seems to me both intuitive, clearly defined, scalable, and does not seem to raise any
philosophical nor implementation or merging problems. Moreover, demanding that merging
explicits this implicit scope through a reification of the original topic map(s) keeps the
more simple track one can imagine of the merging: original topic maps are represented as
topics in the result of the merging.

And this is a very generic principle. Merging is like gathering information from a third
party ...

If A asserts (x killed y) with no restriction, this means it is valid in the unconstrained
scope of A.
Any third party using this assertion should say : (according to A) (x killed y)

Bernard  - ready for the flame war :o)

Bernard Vatant
Consultant - Mondeca
Chair - OASIS TM PubSubj Technical Committee

----- Message d'origine -----
De : "Marc de Graauw" <marc@marcdegraauw.com>
À : <sc34wg3@isotopicmaps.org>
Envoyé : vendredi 7 juin 2002 16:55
Objet : [sc34wg3] Which set is the unconstrained scope? (SAM-issue

> I have raised an issue in private conversation with Lars on the unconstrained
> scope, now listed as "scope-unconstrained-rep". Description: "How should the
> unconstrained scope be represented? Essentially, it is the scope made up of all
> subjects, that is, the universal set.". I would like to expand on this. (Since
> this is an old issue, it was probably raised by others too.)
> The current text of the SAM mentions: "If the scope of a topic characteristic
> assignment is the empty set the statement is considered to have unlimited
> validity, and it is said to be in the unconstrained scope." I remarked that
> this should be the universal set rather than the empty set. (Or rather, since
> scopes consist of topics, it should be the set of all topics.) Lars agreed that
> this was an issue but was concerned about the repercussions for applications.
> When an iteration over the elements of a scope is defined, this would imply an
> interation over the universal set, which is not desirable.
> The current positions on what the unconstrained scope is are:
> - ISO 13250: all the topics in the entire topic map  ("This International
> Standard does not require that scopes be specified explicitly. If the scope of
> a topic characteristic assignment is not explicitly specified via one or more
> scope attributes, the scope within which the topic characteristic applies to
> the topic includes all the topics in the entire topic map; this special scope
> is called the unconstrained scope.")
> - XTM: does not say anything about which set the unconstrained scope
> represents. ("Every characteristic has a scope, which may be specified either
> explicitly, as a set of topics, or implicitly, in which case it is known as the
> unconstrained scope. Assignments made in the unconstrained scope are always
> valid.")
> - PMTM4: The scope comprised of the null set of topics -- the "no-topic" scope
> - DRM: nothing, scope is for the SAM
> - SAM: the empty set, see above
> The ISO 13250 defintion is strange, since the unconstrained scope here is
> defined to be equivalent to the scope made up of all topics in the Topic Map.
> I.e. when we have a topic map which consists of two topics:
> <topicmap>
>   <topic id="NL">
>     <topname>
>       <basename>Netherlands</basename>
>     </topname>
>   </topic>
>   <topic id="MdG">
>     <topname>
>       <basename>Marc de Graauw</basename>
>     </topname>
>   </topic>
> </topicmap>
> then ISO 13250 would imply that this is equivalent to:
> <topicmap>
>   <topic id="MdG">
>     <topname scope="MdG NL">
>       <basename>Marc de Graauw</basename>
>     </topname>
>   </topic>
>   <topic id="NL">
>     <topname>
>       <basename>Netherlands</basename>
>     </topname>
>   </topic>
> </topicmap>
> Since both Topic Maps will behave differently when merging with a third one, I
> do not see how this could be correct. It is also strange to use a topic to
> scope it's own name as a general principle, although this would be correct in
> some circumstances. Further, the second Topic Map would seem to suggest that
>  the basename "Marc de Graauw" is not valid outside the defined scope (or not
> known to be valid), while the first Topic Map would seem to suggest that there
> is no known limitation to the validity of the basename "Marc de Graauw". Though
> strictly speaking this interpretation is up to applications, it still seems
> counterintuitive.
> The reason it is undesirable for the unconstrained scope to be the empty set is
> that applications may very well decide to ask questions such as "is that scope
> a subset of this set of topics?". Since scopes are sets, such questions are
> natural. If the unconstrained scope is the empty set, no scope would be a  the
> subset of the unconstrained scope when it would be more natural to expect every
> defined scope to be a subset of the unconstrained scope. One can expect a lot
> of applications to use scope in such a way that a topic characteristic
> assignment in scope {a, b} is valid to a wider extent than an assignment in
> scope {b}. Since assignments in the unconstrained scope are always valid, it
> would seem more natural to define the unconstrained scope as {a, b, ... all
> other topics ... } then as {}.
> There is, I think, a natural solution to the representation of the
> unconstrained scope. We must distinguish between explicitly defined scopes and
> implicitly defined scopes (XTM already does, and ISO 13250 speaks of explicitly
> and not-explicitly specified scopes). Then an explicitly defined scope is a
> scope element (in XTM) or attribute (in HyTM) or any corresponding data
> structure in an application with topics as elements (elements meant here in the
> mathematical sense, as elements of a set). An implicitly defined scope is one
> required by the processing of a Topic Map syntax, i.e. the unconstrained scope
> when no scope is explicitly defined. Then we could say that iteration is
> allowed over explicitly defined scopes, and not over implicitly defined scopes.
> If that route is chosen, then there are several possibilities on the unconst
> rained scope:
> 1. It is the empty set, which is undesirable IMHO. In short, it forces
> applications to implement behaviour which is at odds with what the standard
> says.
> 2. It is the set of all topics. Any topic is an element of the unconstrained
> scope, and any set of topics is a subset of the unconstrained scope (though not
> necessarily a proper subset). The elements of explicitly defined scopes are
> accessible by applications, the elements of implicitly defined scopes (the
> uncontrained scope) are not.
> 3. Say nothing about the 'settiness' of the unconstrained scope. Explicitly
> defined scopes are sets of topics, what implicitly defined scopes (and thus the
> unconstrained scope) are is up to applications. The only thing that matters
> about the unconstrained scope is the consequences it has on merging.
> 4. The unconstrained scope is the set of all topics that are 'known' to be
> relevant for a Topic Map to an application. These would include:
> - all topics in the Topic Map under scrutiny
> - all topics in Topic Maps that are to be merged, either through <mergeMap>
> elements (in XTM) or through user-driven or application-driven merging.
> This is an adaptation of ISO13250 which removes the undesired effects described
> above, but retains the idea. An advantage is that the unconstrained scope
> remains accessible, i.e. an iteration over the unconstrained scope is possible.
> It does not remove other peculiarities of the 13250 definition. The
> unconstrained scope will change when a topic is added to a Topic Map, and the
> unconstrained scope will be a different thing for different Topic Maps.
> I think 2 would be the best route unless there are difficulties involved which
> I have overlooked.
> Marc
> _______________________________________________
> sc34wg3 mailing list
> sc34wg3@isotopicmaps.org
> http://www.isotopicmaps.org/mailman/listinfo/sc34wg3