To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 5710
5709  |  5711
Subject: 
Re: Keywords Question
Newsgroups: 
lugnet.cad.dev
Date: 
Wed, 13 Dec 2000 19:00:14 GMT
Viewed: 
778 times
  
In lugnet.cad.dev, Dave Schuler wrote:

Is there a particular thread where the guidelines, if any, of keywords are
discussed in depth?

Yes there is.  If the news-search wasn't temporarily deactivated, I'd point
you to it.

Here's a cooked version of the discussion:

=============================================
FAQ for CATEGORY and KEYWORDS meta-statements
=============================================
Q: What are '0 CATEGORY' and '0 KEYWORDS'?

A: They are meta-statements.  Meta-statements are statements in an LDraw
file, but which are not recognized by LDraw.  Meta-statements do things
like clear the screen, pause momentarily, or display a comment.

Both CATEGORY and KEYWORDS are used in part files exclusively. They don't
appear in models, primitives, or subparts. They provide information for
organizing and searching the part library. Before the CATEGORY and KEYWORDS
meta-statements were defined, the only way to organize the part library was
by the descriptive name and part number. While useful, the name and number
do not provide enough information to thoroughly catalog a large directory
of parts (currently some 1700 files!).

Q: What is the difference between CATEGORY and KEYWORDS.  What belongs to
the one and what to the other?

A: CATEGORY provides a method to place all parts in a comprehensive
classification system.

KEYWORDS provides a method to associate freeform search terms with a part.

CATEGORY is good for locating a part by drilling into the list of
categories. KEYWORDS are good for locating a part by doing text searches.

The Partsref pages (at <http://guide.lugnet.com/partsref/>) illustrate how
both meta-statements can be used. The list of categories are built from the
CATEGORY entries, and the Search box allows users to search for specific
words & terms contained in the KEYWORDS of parts (search also looks through
part names, numbers, and categories).

Q: What is the syntax for these two meta-statements?

0 CATEGORY <category>
0 KEYWORDS <words>, <more words>, ..., <final words>

The CATEGORY and/or KEYWORDS lines should appear at the beginning of the
part-file, just after the standard header. Something like this:

0 Some Part
0 Name: 0000.dat
0 Author: Me
0 Unofficial Part
0 CATEGORY Some
0 KEYWORDS shape, theme, useful

Q: What is the exact purpose of the "0 CATEGORY" statement ?

A: The high-level purpose is to make it easier to find parts in the part
library.

More specifically, the 0 CATEGORY meta-statement provides a way to specify
the categorization/classification of parts in the LDraw part library.

Currently, any program or service that recognizes 0 CATEGORY uses it as a
single-level classification. Whatever text is included after CATEGORY is
used as a single category name. There was some discussion of whether 0
CATEGORY should support a multi-level classification system, but this was
never decided.

So the statement:

0 CATEGORY Minifig Accessory

would specify that the part containing this statement belongs in the
category "Minifig Accessory" (as opposed to belonging to the "Accessory"
subcategory of "Minifig").

Q: Are there any "rules" for what you can put in 0 CATEGORY?

A: Rule 1. Don't specify any category that doesn't already exist.
Rule 2. If you've got a part that you feel belongs in a new category,
discuss it on lugnet.cad.dev or e-mail the parts administrator.

Generally, the 'categories' of the LDraw part library are the same as the
first word(s) in the part names.  We are getting beyond this, slowly.

It's better to have part names like "Minifig Sword" rather than "Minifig
Accessory Sword". If the part has a 0 CATEGORY setting, there is more
freedom to give the part a name that is easy to use.

Q: Is it allowed to name more than one category, and what is the syntax
then?

A: That wasn't the intent of the 0 CATEGORY meta-statement. Categories were
meant to be a strict classification system, with the long-term possibility
of having sub-categories.

Q: Why should category names be restricted to some kind of "official" list?

A: To prevent different people from making up different names/spellings
when they mean the same thing, and to avoid completely arbitrary names
being used for categories.

Everybody's got their own ideas for classifying LEGO pieces. Some
categories are common ('basic brick', 'sloped piece', etc.). But most
everyone is going to have some unusual categories for unusual pieces
('gizmo', '>10 studs', etc.).  The LCAD classification should avoid these
'unusual' categories, since they tend to be non-intuitive for everyone
except the person who thought of them.

Classification will be most useful when there is a balance between the
number of categories, the number of parts in each category, and clear
definition for each category. If every author defined their own values for
the CATEGORY meta-statement, the overall classification would be much less
clear.

Q: What is the current list of categories?

A: By default, if a part does not have a CATEGORY entry, the first word in
the part name is used as the category. So the default list of categories is
the unique list of words used at the beginning of the part names.

But some of these default categories are less useful than they could be.
Some are too narrow/small, such as 'Tap'. Some are not very useful for
clear classification, such as 'Town' and 'Space'.

For new parts, the category names should be selected from the following
list:

Animal
Antenna
Arch
Arm
Bar
Baseplate
Belville
Boat
Bracket
Brick
Car
Cone
Container
Conveyor
Crane
Cylinder
Door
Electric
Exhaust
Fence
Flag
Forklift
Freestyle
Garage
Gate
Glass
Grab
Hinge
Homemaker
Hose
Jack
Ladder
Lever
Magnet
Minifig
Minifig Accessory
Panel
Plane
Plant
Plate
Platform
Propellor
Rack
Roadsign
Rock
Scala
Slope
Staircase
Support
Tail
Tap
Technic
Tile
Tipper
Tractor
Trailer
Train
Turntable
Tyre
Wedge
Wheel
Winch
Window
Windscreen
Wing

In the near future, this list will be changing, as more parts are
deliberately classified. Overall, there should be fewer categories, with a
better balance between the categories.

Q: What is the purpose of the 0 KEYWORDS meta-statement?

A: KEYWORDS provides a place to put search-text. The 0 KEYWORDS
meta-statement may specify any terms the author feels would be useful in
identifying the part, especially terms which are not included in the part's
filename, descriptive name, or the CATEGORY.

Q: Any rules for KEYWORDS?

Keywords typically include alternate part uses, geometric terms, synonyms
(if the part name includes the term "rounded", a keyword might be
"curved"), and playthemes.

When specifying multiple keyword entries, separate each entry with a comma
",".  This allows multi-word keywords, like "Wild West".

We should probably start compiling a list of suggested keywords. Just like
with categories, having standard keywords will make it easier to locate
parts.

Q: does KEYWORDS allows multiple entries?

A: Yes, there may be multiple entries on a KEYWORDS statement. Also,
multiple 0 KEYWORDS meta-statements may appear in a single file. Each
KEYWORDS meta-statement should be limited to 80 characters.

Entries on a 0 KEYWORDS meta-statement can be comma-delimited, or just
space-delimited.

Each entry can be any string of text. Most search-engines will probably
perform searches on all the entries, as a single string of text. So
internal delimiters are probably not all that important.

- Manfred Moolhuysen, initial question asker
- Steve Bliss, initial question answerer



Message is in Reply To:
  Keywords Question
 
Is there a particular thread where the guidelines, if any, of keywords are discussed in depth? Dave! (24 years ago, 13-Dec-00, to lugnet.cad.dev)

2 Messages in This Thread:

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

Custom Search

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