Data typing provides an extension to the attributes of files
and data beyond what is provided by the traditional UNIX file systems.
These extensions consist of attributes, such as icon names, descriptions,
and actions, that can be performed on files and data. This information
is stored in name/value pairs in the DATA_ATTRIBUTES
table (or database). The desktop uses a certain set of DATA_ATTRIBUTES,
described in the following paragraphs. The DATA_ATTRIBUTES
table is extendable for future and application-specific growth,
although extending this table is not recommended because other applications
may not check the additions.
Data is matched with a specific file or data entry in a DATA_CRITERIA
table. The DATA_CRITERIA
table entries are sorted in decreasing order from most specific
to least specific. For example, /usr/lib/lib*
is more specific than /usr/*
and would, therefore, appear first. When a request to type a file
or data is made, the table is checked in sequence to find the best
match using the information provided either from the file or from
the data. When an information and entry match is found, DATA_ATTRIBUTES_NAME
is used to find the proper DATA_ATTRIBUTES
entry.
Library
and Header Files |
 |
To use data typing, you need to link to the libDtSvc
library. Actions are usually loaded with the data-typing information.
Actions require links to the libXm
and libX11 libraries. The
header files are Dt/Dts.h
and Dt/Dt.h.
Demo Program |
 |
A demo program containing an example of how to use the data-typing
database is in /usr/dt/examples/dtdts/datatypes/datatyping.c.