To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.admin.databaseOpen lugnet.admin.database in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Administrative / Database / 122
121  |  123
Subject: 
Re: Official and Unofficial theme categories
Newsgroups: 
lugnet.admin.database
Date: 
Fri, 8 Jan 1999 04:22:42 GMT
Reply-To: 
LPIEN@CTP.IWANTNOSPAM.nospamCOM
Viewed: 
1203 times
  
Todd Lehman wrote:

Wow! -- how many kids get to have that kind of a LEGO-geek discussion with
their dad?  :)

It all started harmlessly enough ;-) I said, "there are red ninjas and
blue ninjas, the old ones are blue, the new ones are red..." and Nik
said, "no there aren't Dad, there are no blue ninjas", and I said
"what?" and he told me about the samurai and it went from there.

Your categorizations above sound a lot better than colors!  :)

Well, certainly they're more detailed, but they don't actually help us
categorize a Ninja set, because most sets come with Samurais AND Ninjas
AND robbers. More later in answer to your affinity/hierarchy questions.

In terms of modifiers (or "properties" of objects), I want to steer way
clear of text-based or enum-based modifiers on objects.  I want all
modifiers in the DB to be pointers (references, two-way) to other objects.
In other words, if some LEGO set is listed as being a vehicle, it means that
there's a reference to the object that means "being a vehicle."

Yes, exactly. Or deeper. If it is instead associated with "Jerrdan" it
implies that it is a truck, which implies that it is a vehicle.

What I describe below is the most general solution to the problem. It
may be TOO general.

We need to do meta modeling of various properties. We can build various
hierarchical or partly hierarchical models. For example we can build an
availability hierarchy or model that captures when, where, and how a set
could possibly be available. Exhaustively enumerating would be
expensive, so we'll keep it sparse and only populate it as needed.

Consider the following partial trees

Geographical:
World
  North America
    US
    Canada
  Europe
    Holland
    UK

Sales Avenue:
Universal
  TLG Organization
    Samsonite
    LegoLand
    LIC
    S@H
  Retail
    TRU Exclusive
    Target Exclusive
  Promotional
    Consumer Goods Companies
       Weetabix
       Kelloggs
    Oil Companies
       Shell
       Exxon
    Transport Companies
       Airlines
         British Air
       Ferry Lines
         Stena
    Associations
       ANWB

Temporal: (this is the weakest part, it requires a lot more thought)
Always Available
    1961
    ...
    1996
      June
    1997


Now, with this set of models available to us, we can relate a particular
set that we want to characterise availability of to any point in
whatever classes we want to.

For example, the soccer sets....

The baseplate set comes in various versions. For the set that has dutch
instructions
we associate to Holland geography, and to Shell, and to 1998 March
through 1998 July (or whenever it ran out). But for the set that has
British instructions, we associate to UK geography, to TRU, and to
LegoLand (Because it was available in both places) and again to the
proper date range.

If a set is sold generally at retail we associate to retail, but if it
is a TRU exclusive, we associate to TRU exclusive, deeper in the
hierarchy, instead.

Now, a set that was a TRU exclusive for a period of time, and then was a
S@H, we want two sets of associations, and we want to distinguish
between them. Therefore it is not enough merely to put in a relation (a
two way set of pointers back and forth) between the set and the various
things in the various models, as we will not be able to tell WHICH of
the geographies goes with which of the sales avenues. We need to
introduce an intermediate object that collects one each of the various
types of associations.

Our set/partspack/bucket then has a collection of 1-N of these
intermediates. Each intermediate denotes a particular thing. The
pressbox (if we model it without regard to the language of the box
printing) would have several. One to capture holland availability, two
to capture UK (one for TRU, one for LegoLand), and so forth for german,
austrian etc. Alternatively, there actually are several pressbox sets,
one per country, that each have one or two affinity intermediates.

It's interesting to look at the Promotional/Soccer category vs. the
Promotional/SHELL category.  In the case of Soccer, it's actually its
own *tightly coherent* theme -- (and as a side note, probably an unofficial
sub-category of Town to some degree) -- while in the case of SHELL, the
sets aren't their own "theme" but rather clear-cut instances of other
themes, such as Town, Fright Knights, UFO, first-year Adventurers, etc.
Nevertheless, the Shell sets need their own sub-category of "promotional."
So -- in other words, the difference between Soccer and SHELL here is that
sets within the Soccer category only belong to one category, whereas sets
within the SHELL category belong to two categories: SHELL and some other
theme-category.  If you collect all Space sets, you wouldn't want to
miss out on a U.F.O. set just because it was released through SHELL --
especially when it has a 4-digit regular LEGO set number.

See, this is where calling SHELL a category falls apart. SHELL is not a
category, just a way to get sets. The shell soccer sets are
town/soccer/holland specific modified by the availability through shell.

OK, I'm definitly confusing you by my unwashed use of OO terminology --
sorry!

What I want to capture is the fact that there is the concept of a

   mathematical-set A which contains all LEGO-sets which were sold by SHELL

as well as the concept of a

   mathematical-set B which contains all LEGO sets pertaining to soccer at
   minifig scale.

Note that B just happens to be a proper-subset of A (but it doesn't
necessarily have to be that way; there just aren't currently any other
soccer sets).

This in fact is not true. Soccer sets were available from outlets other
than Shell in countries other than Holland. Richard Dee got me a bunch
from UK TRUs. But that is a detail that does not detract from your
argument.

So we wouldn't model B as a subset of A.  But we might model
some new set C as a subset of A, where C is the mathematical-set which
contains all LEGO sets pertaining to soccer -and- sold by SHELL.  C would
also then be a subset of B.  C could be constructed on-the-fly or could
actually be set up as part of the taxonomy...that's a nice subject for
debate.

Ditto. This is a freestyle set that just happens to be only available at
Target.

Again, its categorization as a holiday set or as a promotional set or as a
Target exclusive -doesn't- detract from the fact that it's unofficially a
FreeStyle set.  The sum of the fuzzy quantifiers doesn't have to equal 100%
-- that's part of the magic of this.

You're on the right track. I'm mostly (completely) in agreement with
what you want the model to express, just not with how to go about
expressing it.

I think it's important to capture
subject matter affinity but not introduce supercategories for it.
Perhaps have a subject matter hierarchy modeled and have sets have an
affinity to it. That handles the sets that have more than one subject
matter (like the hydronauts/stingray hybrid, or a castle minifig set)

Can you give a couple concrete examples?  I'm not sure I get your meaning
but it sounds really cool.

See above, and below. Using the below tree, Airport Shuttle ties to
point B, but it also ties to a point not shown that has roadways (AS has
two roadway plates) and to another point in a more architectural part of
the hierarchy for the stations, and so forth.


I love your tree below, BTW! -- much more logical.

You can't run trains on
monorail track or vice versa. However the sets probably would have
strong affinities in the subject matter hierarchy...

Transport
   Land
      Fixed Guideway
         Two rail
             Steel rails/wheels
                Conventional Train  (point A)
             Steel rails/ rubber wheels
                Paris Metro
             Concrete rails/rubber wheels
                Various airport people movers
         One Rail
             Concrete rails/steel wheels
                Conventional Monorails  (point B)

with most  Lego train tying to point A and Lego Monorail tying to point
B via affinity

That's awesome!  Is "affinity" another way of saying fuzzy percentage?  If
you are 95% Libertarian, does it mean that you have a very high affinity for
that attribute?

Yes. See above. The concept that got us the big set of availability
models I outlined, and the affinity objects that connect sets to
availabilities can be used here as well. Since we use an object to do
the connection, we can hang the percentage (and any other attributes OF
THE RELATIONSHIP, such as our confidence, where it came from, etc.) on
that connection object.

Now, about those ninjas. Affinity relationships help us here as well We
can build a minifig organization as well, and we can peg every minifig
ever issued in that scheme. Then a set can have associations to each
minifig in it. We can then do searches along the lines of "what sets
have Any red ninja characters", knowing that the red ninjas, their
princess, and the master are all underneath "red ninja", in addition to
what you currently support (in the fibblesnork castle DB), which is to
be able to ask which sets have a specific minifig in them.

note that minifigs themselves have to have affinities to other
organizational structures. The girl with the horse on her shirt appears
both in paradisa sets and in Train sets. When we also fold pieces in
(she has a black pony tail hair piece, so do other figs) it gets rather
powerful, but also rather complex.

The natural UI way to do the search is to let the user walk the various
affinity models and select where he wants to start searching. An
affinity to any node within the subhierarchy of that model is a match.

As we discussed in person if you get your meta model right, the model
itself falls out rather easily.

But we need to debate whether this completely general model will fall
apart under the weight of all the data that will need to be gathered in
order to make it work.

Do we actually know to any certainty where and how a set from 1973 was
available? If not, how do we model it? Universal? new node called
unknown?
Do we model sets differently because their outer package has different
languages on it (the soccer press box example. Is that one set or many,
it has many languages on it, and many inserts)?
Can we classify every distribution scheme and every retail outlet?
Can we classify and peg every single minifig ever produced? wow.

--
Larry Pieniazek    http://my.voyager.net/lar
For me: No voyager e-mail please. All snail-mail to Ada, please.
- Posting Binaries to RTL causes flamage... Don't do it, please.
- Stick to the facts when posting about others, please.
- This is a family newsgroup, thanks.



Message has 1 Reply:
  Re: Official and Unofficial theme categories
 
(...) I have a couple of thoughts on the time classification 1) apply a full range of tags - first appearance, last appearance (in a catalogue, end of promo, etc), last available (retail), last available (S@H), last seen (auction/sale). This I think (...) (26 years ago, 8-Jan-99, to lugnet.admin.database)

Message is in Reply To:
  Re: Official and Unofficial theme categories
 
(...) Wow! -- how many kids get to have that kind of a LEGO-geek discussion with their dad? :) Your categorizations above sound a lot better than colors! :) (...) I'm probably using the wrong terminology -- This whole OO-data-modeling thing is still (...) (26 years ago, 8-Jan-99, to lugnet.admin.database)

37 Messages in This Thread:













Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    
Active threads in Database

 
LUGNET Guide updates (Thu 12 Sep 2024)
18 hours ago
Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR