Week of 03/23/2008 - 02:00 to 03/30/2008 - 01:59
(Followup to part III)
Before we move to higher-level aspects, there are two important functionalities which deal with topic maps as a whole: merging maps and taking the difference of two maps. Lets look at the latter here even though it might still be regarded as somewhat experimental.
One of the positive side-effects of the extremely flat data structure is that not only it is possible to define difference succinctly, it is also rather efficient to produce.
- Jozef: Packaging Perl modules for Debian
in den Räumlichkeiten des NIG (Neues Institutsgebäude)
NIG, Raum D116, im Gang D
(Followup to part II)
Looking up assertions with match_forall works, but is cumbersome if you just want to find instances, types, subtypes or supertypes of a given toplet.
To experiment with this here, we need some topic map with just a few types, subtypes and some instances for these. Instead of creating them programmatically, we write the map in one of the convenient text notations and let a parser do the job.
For the notation we choose (the old and trusty) AsTMa:
(Followup to part I)
Compared to toplets, assertions are more complicated. They are also more interesting as they carry the connections between toplets and between toplets and literal values.
To express, for instance, that my cat Sacklpicka is an instance of a cat, the following would create a stand-alone assertion:
There is one thing many Europeans do not understand about seasons (the climatic ones, yes):
- You would miss them, if you didn't have 'em.
And there is one thing many Australians do not understand about seasons:
- You cannot miss them, because you never had 'em.
Mostly for our Australian friends, those who have been so overly supportive over the last years, those we had to leave behind, those we sorely miss (no, I don't mean you, Warren) ... here a recent view from our window for your education:
Here are two versions of "aliens emerging from the sea".
This section covers the lowest-level data structure of the Perl TM package. That layer may not be overly comfortable, but is useful to know if you plan to do something serious with the distribution. Such as virtualization.
Creating a Topic Map
To create an empty topic map, there is really not much to it except loading the module and using a constructor:
my $tm = new TM;
The map is actually not really empty. The constructor will also load the infrastructure,