DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

/usr/man/cat.4/dtdtsfile.4




dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

NAME
     dtdtsfile - format	and location of	 desktop  data	type  and
     action files

SYNOPSIS
     set DtDbVersion=version_number
     set VariableName=variable_value

     RecordType	record_name
     {
	  # Comment
	  FieldName field_value
	  FieldName field_value
	       .
	       .
	       .
     }

DESCRIPTION
     The TED data types	database  provides  definitions	 for  the
     data types	and actions recognized by TED clients.

     The general syntax	of the data types files	is  as	described
     above  in the SYNOPSIS section of this man	page.  The set of
     general constructs	composing the database entries is as fol-
     lows:

  Comments
     Any line whose first non-space character is # is treated  as
     a	comment	 line,	and  is	ignored	during the reading of the
     database file.

  Database Version
     The database loader supports a version number,  which  indi-
     cates  the	version	of the database	syntax used by a particu-
     lar database file.	 If a  database	 version  number  is  not
     specified,	 then  the  database loader assumes that the file
     uses the version 1.0 syntax, described here.  If a	 database
     file  specifies  a	version	number,	then it	must be	the first
     non-blank,	non-comment line in the	 database  file;  if  the
     version  is  specified  anywhere  else  in	the file, then an
     error message is generated, and the remainder of that  data-
     base file is ignored.  The	database version number	is speci-
     fied using	the following syntax:

	  set DtDbVersion=version_number

  String Variables
     Database records can reference string variables that are set
     within the	database file.	The scope of a string variable is
     restricted	to only	those record definitions within	the data-
     base  file	 defining the string variable.	A string variable
     is	defined	using the following syntax:

Unix System LaboratoLast change: 1 August 1995			1

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

	  set VariableName=variable_value

     String variables are referenced using either of the standard
     shell  variable  referencing  syntaxes:   $variable_name  or
     ${variable_name}.	A variable name	can be made up of any  of
     the alphanumeric characters and the underscore.

  Environment Variables
     Database records may refer	to environment	variables,  using
     either  of	the standard shell variable referencing	syntaxes:
     $environment_variable or  ${environment_variable}.	  If  the
     environment  variable  name conflicts with	a string variable
     name, the string variable takes precedence.

  Line Continuation
     Any field within a	record can be continued	onto another line
     by	 ending	 the  line  with  a  \	character.  The	\ and any
     <blank>s following	the \ and preceding the	newline	are  dis-
     carded; leading <blank>s on the following line are	preserved
     in	the continued field.

  Record Name
     The first line of a record	is made	up of  the  record  type,
     RecordType	  (one	of:   DATA_ATTRIBUTES,	DATA_CRITERIA  or
     ACTION), followed by the record name, record_name,	which  is
     henceforth	 used  to  identify this record.  The record_name
     string must be coded in ASCII and	must  be  uniquely  named
     across  the  data	attributes,  data  criteria  and  actions
     tables.

  Record Delimiters
     After  the	 record	 name  has  been  located,  the	 set   of
     corresponding fields is delimited by the {	and } characters.
     Each of these characters must appear on a line by itself.

  Fields
     The fields	are all	of the non-comment  lines  found  between
     the  record  delimiters.  They are	composed of keyword/value
     pairs.  The FieldName string must be coded	 in  ASCII.   The
     field_value  may  be  coded  in  additional, implementation-
     dependent,	code sets, except that any literal string  values
     shown  in	Data Criteria Format, below, string must be coded
     in	ASCII.

  Record Types
     There are three recognized	record types  in  database  files
     used for data types (and actions):

	o DATA_CRITERIA

	o DATA_ATTRIBUTES

Unix System LaboratoLast change: 1 August 1995			2

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

	o ACTION

     These three kinds of database record can appear together  in
     the same file or they can be segregated into separate files.
     See dtaction(4) for the file format of ACTION records.

DATA_CRITERIA RECORDS
     The first seven subsections of  this  section  describe  the
     FieldName	s  supported  for  data	 criteria  records.   The
     remaining subsections describe formatting and sorting infor-
     mation for	data criteria records.

  NAME_PATTERN Field
     A shell  pattern-matching	expression  describing	the  file
     names  that  could	 match	this  data.  See Pattern Matching
     Notation.	The default is an empty	string,	 which	means  to
     ignore file patterns in matching.

     If	the data to be matched is in  a	 buffer,  rather  than	a
     file,  the	 NAME_PATTERN expression is evaluated against the
     opt_name value given to DtDtsBufferToDataType(3) and related
     functions.

  PATH_PATTERN Field
     A shell pattern-matching expression describing the	 absolute
     pathnames	that could match this data.  See Pattern Matching
     Notation.	The default is an empty	string,	 which	means  to
     ignore path patterns in matching.

     The PATH_PATTERN expression is used only for  matching  data
     in	files; it does not affect matching of data in buffers.

  CONTENT Field
     Strings that match	on the contents	 of  a	file,  buffer  or
     directory:

	  offset type value(s)

     The offset	string is a positive decimal  integer  number  of
     octets  from  the beginning of the	file or	buffer,	where the
     first value is tested.  The offset	value is ignored for  the
     filename type.

     The type string is	one of the following:

	string	   The value is	a single string	that is	 compared
		   against  the	data starting at the offset loca-
		   tion.

	byte

	short

Unix System LaboratoLast change: 1 August 1995			3

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

	long	   Each	<blank>-separated value	 is  an	 unsigned
		   integer:   decimal, octal (leading 0) or hexa-
		   decimal (leading 0x or 0X).	 Multiple  values
		   are	matched	 against  multiple  byte (octet),
		   short (two octets) or long (four octets) loca-
		   tions  starting  at	offset	octets	from  the
		   beginning of	the file or data.

	filename   The value is	a string that is compared against
		   the filenames located anywhere in a directory.
		   The use of filename on non-directory	data pro-
		   duces undefined results.

     The default CONTENT is an empty field, which means	to ignore
     contents in matching.

     The CONTENT field applies to data in both files and buffers.

     Examples of two data criteria records  with  CONTENT  fields
     are:

	  DATA_CRITERIA	PCL1
	  {
	      DATA_ATTRIBUTES_NAME    PCL
	      CONTENT	      0	byte 033 0105
	      MODE	      f&!x
	  }

	  DATA_CRITERIA	POSTSCRIPT3
	  {
	      DATA_ATTRIBUTES_NAME    POSTSCRIPT
	      CONTENT	      0	string %!
	      MODE	      f&!x
	  }

  MODE Field
     A string of zero to four  characters  that	 match	the  mode
     field  of a stat structure	(see stat(2)).	The first charac-
     ter indicates:

	d  match a directory

	s  match a socket

	l  match a symbolic link

	f  match a regular file

	b  match a block file

	c  match a character special file

Unix System LaboratoLast change: 1 August 1995			4

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

     The first,	or subsequent characters, can also be:

	r  match any file with any of its user,	group,	or  other
	   read	permission bits	set

	w  match any file with any of its user,	group,	or  other
	   write permission bits set

	x  match any file with any of its user,	group,	or  other
	   execute or directory-search permission bits set

     For example, the MODE field of frw	matches	any regular  file
     that is readable or writable; x matches any file with any of
     its executable or search bits set.

     The default is an empty field, which  means  to  ignore  the
     mode in matching.

     If	the data to be matched is in  a	 buffer,  rather  than	a
     file, the buffer is processed as if it had	a mode of fr.

  LINK_NAME Field
     A shell pattern-matching expression describing the	 filename
     component	(basename)  of	the  filename  the  symbolic link
     points to that could match	this data.  See	Pattern	 Matching
     Notation.	 The  default is an empty expression, which means
     to	ignore symbolic	link names in matching.	 LINK_NAME points
     to	the file itself, not to	the name of the	file.

     The LINK_NAME expression is used only for matching	 data  in
     files; it does not	affect matching	of data	in buffers.

  LINK_PATH Field
     A shell pattern-matching expression describing the	 absolute
     pathname  of  the	file pointed to	by the symbolic	link that
     could match this data.  See Pattern Matching Notation.   The
     default  is  an empty expression, which means to ignore sym-
     bolic link	name in	matching.

     The LINK_PATH expression is used only for matching	 data  in
     files; it does not	affect matching	of data	in buffers.

  DATA_ATTRIBUTES_NAME Field
     The name of this type of data.  This value	is a  record_name
     in	the data attributes table.

  Pattern Matching Notation
     The pattern-matching text field permits  use  of  the  shell
     pattern-matching  characters *, ?,	and [].	 The asterisk (*)
     matches any set of	characters, the	question mark (?) matches
     a	single	character, and the square brackets ([])	match any
     one of a set of characters	enclosed in the	square	brackets.

Unix System LaboratoLast change: 1 August 1995			5

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

     The  full	definition  of	shell  pattern matching	is in the
     X/Open CAE	Specification, Commands	and Utilities, Issue 4.

  Logical Expressions
     The logical operators AND (&), OR (|) and NOT  (!)	  can  be
     used  in  any  of	the  data  criteria  fields,  except  for
     DATA_ATTRIBUTES_NAME, as  shown  in  Data	Criteria  Format,
     below.  The resultant expressions are evaluated from left to
     right.

  White	Space
     White space is used to  delimit  tokens,  as  shown  by  the
     blanks and	newline	terminals in Data Criteria Format, below.
     Within the	pattern	terminal, however, leading  and	 trailing
     white  space not explicitly shown in the grammar is signifi-
     cant to the expression.  For example,

	  NAME_PATTERN	 abc | def

     is	matched	by either ``abc	'' (with a trailing  <space>)  or
     ``	 def'' (with a leading <space>).

  Escape Character
     Shell pattern-matching and	logical	expression characters can
     be	 escaped  and used as literal characters by preceding the
     character with a backslash	(\).  For example, \*  is  inter-
     preted  as	 an  asterisk,	\? as a	question mark and \[\] as
     square brackets.  Backslash itself	can be escaped by preced-
     ing it with a backslash (\\).

  Data Criteria	Format
     The following pseudo-BNF describes	the data  criteria  vari-
     able definition:

DataCriteriaDefn   ::= `DATA_CRITERIA' blanks record_name
{
		       data_criteria_defn
}

data_criteria_defn ::= (
		       `PATH_PATTERN' blanks pattern_datas newline
		    |  `NAME_PATTERN' blanks pattern_datas newline
		    |  `LINK_PATH' blanks pattern_datas	newline
		    |  `LINK_NAME' blanks pattern_datas	newline
		    |  `CONTENT' blanks	content_fields newline
		    |  `MODE' blanks mode_specs	newline
		    |  `DATA_ATTRIBUTES_NAME' blanks name newline
		       )

pattern_datas	   ::= pattern_data [(`&' | `|') pattern_datas]
pattern_data	   ::= [`!'] pattern

Unix System LaboratoLast change: 1 August 1995			6

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

pattern		   ::= a shell pattern matching	expression, as
		       defined in sh(1)
mode_specs	   ::= mode_spec [(`&' | `|') mode_specs]
mode_spec	   ::= (
		       type_spec [permission_spec]
		    |  type_spec (`&' |	`|') permission_spec
		       )
type_spec	   ::= [`!'] type_char {type_char}
type_char	   ::= (`d' | `l' | `f'	| `s' |	`b' | `c' )
permission_spec	   ::= [`!'] permission_char {permission_char}
permission_char	   ::= (`r' | `w' | `x')
content_fields	   ::= content_field [(`&' | `|') content_fields]
content_field	   ::= (
		       [`!'] offset blanks `string' blanks string
		    |  [`!'] offset blanks `byte'  blanks data_values
		    |  [`!'] offset blanks `short' blanks data_values
		    |  [`!'] offset blanks `long'  blanks data_values
		    |  [`!'] offset blanks `filename' blanks string
		       )
offset		   ::= an unsigned decimal integer
data_values	   ::= data_value [blanks data_values]
data_value	   ::= an unsigned integer:  decimal, octal (leading
		       0) or hexadecimal (leading 0x or	0X)
name		   ::= ( "A-Z" | "a-z" ) [name_char]
name_char	   ::= { "A-Z" | "a-z" | "0-9" | "-" }
string		   ::= a character string, not including <newline>
newline		   ::= `\n'
blanks		   ::= one or more <blank>s (spaces and/or tabs)
_____________________________________________________________________

  Data Criteria	Sorting
     There may be multiple data	criteria records that could match
     a	file or	data.  This subsection describes the sorting pro-
     cess used by  the	XCDE  data  typing  services.	The  more
     specific  criteria	are sorted toward the top of the list and
     the more general criteria toward the bottom.  The data  cri-
     teria  record  selected  is  the  first  match  found on the
     resulting sorted list.

     The following sorting rules are applied in	sequence to  each
     possible  pair  of	 data criteria records.	 If a rule deter-
     mines that	one data criteria record is  more  specific  than
     another,  the two records are positioned in the list so that
     the more specific comes before the	less specific; otherwise,
     the next rule in sequence is applied.

	1. Records are ordered by  the	fields	specified  within
	   them:

	      a. Records with both  content  and  pattern  fields
		 (most specific)

Unix System LaboratoLast change: 1 August 1995			7

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

	      b. Records with only pattern fields

	      c. Records with only content fields

	      d. Records with neither content nor pattern  fields
		 (least	specific)

	2. Records are ordered based on	the presence of	any shell
	   pattern-matching  characters	 in  their file	name pat-
	   terns (NAME_PATTERN or PATH_PATTERN):

	      a. File names with no shell pattern-matching  char-
		 acters	(most specific)

	      b. File names with no shell pattern-matching  char-
		 acters	in the final suffix (such as *.c)

	      c. Others	(least specific)

	3. Records with	a path pattern	are  more  specific  than
	   records with	a name pattern.

	4. Records with	a name pattern of *  are  treated  as  if
	   they	have no	name pattern.

	5. Records are	ordered	 based	on  the	 types	of  shell
	   pattern-matching characters in their	patterns:

	      a. Patterns with any ? (most specific)

	      b. Patterns with any []

	      c. Patterns with any * (least specific)

	6. Records with	path patterns that share leading pathname
	   components are ordered as follows:

	      a. The leading pathname  components  without  shell
		 pattern-matching  characters  are  selected  for
		 comparison.   (For  example,  /foo/bar/bam/baz.?
		 and /foo/bar/*/baz are	evaluated as /foo/bar/bam
		 and /foo/bar for this rule.)

	      b. The selected paths are	ordered	so that	the long-
		 est is	more specific.

	      c. If the	selected paths are equal, the  full  path
		 patterns  are	ordered	 based	on the number and
		 types of shell	 pattern-matching  characters  in
		 their patterns, in the	following sequence:

Unix System LaboratoLast change: 1 August 1995			8

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

		    i. Path patterns with fewer	* characters  are
		       more specific.

		    ii.
		       Path patterns with fewer	[] characters are
		       more specific.

		    iii.
		       Path patterns with fewer	? characters  are
		       more specific.

	      d. If the	path patterns are still	of equal specifi-
		 city,	the one	with the larger	number of literal
		 characters (those not	used  as  shell	 pattern-
		 matching  special  characters)	 in  its  pattern
		 after the first non-literal  character	 is  more
		 specific.

	7. Records are ordered based on	a  character  sorting  of
	   the	path patterns, with the	lowest value in	collation
	   sequence being more specific.

	8. Records are ordered so that the one with more criteria
	   is  more  specific.	 (For  example,	 a  record with	a
	   PATH_PATTERN, CONTENT and MODE is more  specific  than
	   one with only a PATH_PATTERN.)

     Two records still equal after executing the preceding  rules
     are ordered in an unspecified sequence.

DATA_ATTRIBUTES	RECORDS
     The following FieldNames are supported  for  data	attribute
     records.	Each  of  the  FieldNames  is  identical  to  the
     corresponding name	member string of a DtDtsAttribute  struc-
     ture; see <Dt/Dts.h>.

  DESCRIPTION Field
     A textual description of  the  data  that	is  suitable  for
     presentation  to  a  user	requesting  information	about the
     data.  The	description should contain no formatting informa-
     tion  such	 as  tab  or newline characters.  The application
     that presents the information to the user formats the infor-
     mation.   If  this	 field	is NULL	or is not included in the
     data attribute record, the	name of	the data attribute should
     be	used.

  ICON Field
     The name of the icon to use for this data.	 If this field is
     NULL  or  is  not	included  in the data attribute	record,	a
     default value (Dtactn for an executable file or  Dtdata  for
     other data) should	be used.

Unix System LaboratoLast change: 1 August 1995			9

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

     Icons are found by	using the standard TED icon search  path,
     so	 the  value can	be either an absolute pathname (for exam-
     ple, /foo/icons/myicon.bm), a relative pathname  (for  exam-
     ple,  icons/myicon.bm)  or	 a partial filename (for example,
     myicon).  Partial filenames are preferred because they allow
     the  TED  icon search path	to find	the icon with the optimum
     size and depth for	the current environment.

  INSTANCE_ICON	Field
     The name of the icon to use for this instance of data.   The
     contents  of  this	 field	are  as	 described in ICON Field,
     above.  If	INSTANCE_ICON is set, the application should  use
     it	 instead  of  ICON.   If  this	field  is  NULL	or is not
     included in the data attribute record, the	ICON field should
     be	used.

     An	example	value  of  INSTANCE_ICON  is  %name%.icon,  which
     would  select  an	icon based on a	specific filename, rather
     than on a generic data type.

  PROPERTIES Field
     Keywords to indicate properties for this data.  Valid values
     are  visible  and	invisible.   These provide guidance to an
     application such as a file	 manager  about	 whether  a  file
     should be visibly displayed to the	user.

     If	this field is NULL or is not included in the data  attri-
     bute record, the visible property should be assumed.

  ACTIONS Field
     A comma-separated list of actions that can	be  performed  on
     this  data.   This	 list refers to	names in the action table
     for actions that can be performed on  this	 data.	 If  this
     field  is	NULL  or  is  not  included in the data	attribute
     record, no	action is available.

  NAME_TEMPLATE	Field
     A string used to create a new file	for data  of  this  type.
     The  string  is intended to be passed to sprintf(3) with the
     file name as the single  argument.	  For  example:	  %s.mif.
     The  default  is  empty.  (This field is contrasted with the
     NAME_PATTERN field	of the data criteria table  in	that  the
     template  is  used	 to create a specific file, such as %s.c,
     whereas the pattern is used to find files,	such as	*.c).

  IS_EXECUTABLE	Field
     A string-Boolean value that tells users of	 this  data  type
     that it can be executed as	an application.	 If IS_EXECUTABLE
     is	a true value (as determined by	the  DtDtsIsTrue()  func-
     tion), the	data is	executable; if this field is NULL, is not
     included in the data attribute record or is not  true,  then
     the data is considered not	executable.

Unix System LaboratoLast change: 1 August 1995		       10

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

  MOVE_TO_ACTION Field
     The name of an action to be invoked when an object	is  moved
     to	the current object using a drag	and drop operation.

     The MOVE_TO_ACTION, COPY_TO_ACTION	and LINK_TO_ACTION fields
     cause  an	action	to be invoked with the drop target as the
     first of the DtActionArg arguments	to  the	 DtActionInvoke()
     function,	and the	drag sources as	the remaining DtActionArg
     arguments.	 However, if the drop target is	an action itself,
     it	is omitted from	the DtActionArg	list.  For example, using
     the syntax	of the dtaction	utility, if objects A and  B  are
     dropped onto non-action object C:

	  dtaction action-name C A B

     If	C is an	action:

	  dtaction action-name A B

  COPY_TO_ACTION Field
     The name of an action to be invoked when an object	is copied
     to	the current object using a drag	and drop operation.

  LINK_TO_ACTION Field
     The name of an action to be invoked when an object	is linked
     to	the current object using a drag	and drop operation.

  IS_TEXT Field
     A string-Boolean value that tells users of	 this  data  type
     that it is	suitable for manipulation (viewing or editing) in
     a text editor or text widget.  The	IS_TEXT	field  should  be
     set  to  a	 true  value  (as determined by	the DtDtsIsTrue()
     function) if the data is textual in nature	and if it  should
     be	presented to the user in textual form.	Criteria for mak-
     ing this determination include whether the	data:

	o  consists of human language, or

	o  is generated	and maintained manually, or

	o  is usefully viewable	and editable in	a text editor, or

	o  contains no (or only	minimal) structuring and  format-
	   ting	information.

     If	the IS_TEXT field is a true value,  this  indicates  that
     the data is eligible to be	displayed directly by an applica-
     tion.  That is, the application can load the  data	 directly
     into  a text editing widget (for example, XmText) instead of
     invoking an action	on the data.  An example of  this  occurs
     in	 the TED mail services:	 if the	first part of a	multipart
     message has IS_TEXT true, then it is displayed in	the  text

Unix System LaboratoLast change: 1 August 1995		       11

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

     area  of  the message view	window.	 Otherwise, the	text area
     will contain only message headers and the first part of  the
     message will be displayed as an icon in the attachment pane.
     It	is immaterial whether the data	can  be	 loaded	 into  an
     XmText  widgeteven	 binary	data can bebut rather whether the
     data should be loaded into	an XmText widget.

     Note that the IS_TEXT field differs from the text	attribute
     of	 the  MIME_TYPE	field, which is	the MIME content-type, as
     described in RFC 1341.   The  MIME	 content-type  determines
     whether  the  data	 consists  of  textual characters or byte
     values.  If the data consists of textual characters  and  is
     labelled  as text/*, the IS_TEXT field determines whether it
     is	appropriate for	the data to be presented to users in tex-
     tual form.

     Examples of common	data types include recommendations of the
     appropriate value of IS_TEXT:

Human language encoded in ASCII:

	  MIME_TYPE   text/plain
	  IS_TEXT true

     Note, however, that not everything	that is	ASCII  should  be
     presented directly	to the user.

Human language encoded in EUC, JIS,  Unicode,  or  an  ISO  Latin
charset:

	  MIME_TYPE   text/plain; charset=XXX
	  IS_TEXT true

CalendarAppointmentAttrs:

	  MIME_TYPE   text/plain
	  IS_TEXT false

     Calendar appointments should be treated  as  opaque  objects
     (editable	only  by the appointment editor) and not shown to
     the user as text.

HTML (HyperText	Markup Language):

	  MIME_TYPE   text/html
	  IS_TEXT true

Unix System LaboratoLast change: 1 August 1995		       12

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

PostScript:

	  MIME_TYPE   application/postscript
	  IS_TEXT false

C program source (C_SRC):

	  MIME_TYPE   text/plain
	  IS_TEXT true

Bitmaps	and pixmaps (XBM and XPM):

	  MIME_TYPE   text/plain
	  IS_TEXT false

Project	or module files	for the	 TED  application  building  ser-
vices:

	  MIME_TYPE   text/plain
	  IS_TEXT false

Shell scripts:

	  MIME_TYPE   text/plain
	  IS_TEXT false

Encoded	text produced by

     uuencode(1):

	  MIME_TYPE   text/plain
	  IS_TEXT false

Manual pages:

	  MIME_TYPE   text/plain
	  IS_TEXT false

  MEDIA	Field
     The names in the MEDIA name space describe	the form  of  the
     data  itself.   MEDIA names are used as ICCCM selection tar-
     gets; they	are  named  in	the  MEDIA  field  of  data  type
     records; and they are used	in the type parameter of ToolTalk
     Media Exchange messages.

Unix System LaboratoLast change: 1 August 1995		       13

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

     The MEDIA name space is a subset of the name space	of selec-
     tion  target  atoms  as defined by	the ICCCM.  All	selection
     targets that specify a data format	are  valid  MEDIA  names,
     and  all valid MEDIA names	can be used directly as	selection
     targets.  Some selection targets specify an attribute of the
     selection	(for  example,	LIST_LENGTH)  or a side	effect to
     occur (for	example, DELETE),  rather  than	 a  data  format.
     These  attribute selection	targets	are not	part of	the MEDIA
     name space.

  MIME_TYPE Field
     MEDIA is the TED internal,	unique name for	data types.  How-
     ever,  other  external  naming  authorities  have also esta-
     blished name spaces.  MIME	 (Multipurpose	Internet  Message
     Extensions),  as  described  in the referenced MIME RFCs, is
     one of those external registries, and is the  standard  type
     name space	for the	TED mail system.

  X400_TYPE Field
     X.400 types are similar in	structure to the MEDIA type,  but
     are  formatted using different rules and have different nam-
     ing authorities.

  DATA_HOST Attribute
     The DATA_HOST attribute is	not a field that can be	added  to
     the  data	attributes table when it is in a file, but it may
     be	returned to an application reading  attributes	from  the
     table.  The data typing service adds this attribute automat-
     ically to indicate	the host system	from which the data  type
     was loaded.  If this field	is NULL	or is not included in the
     data attribute record, the	data type  was	loaded	from  the
     local system.

  Modifiers
     The following modifiers can be used in  the  values  of  the
     data attributes to	modify the runtime values:

	%file%	  The full pathname of the file.

	%dir%	  The directory	component of the  pathname.   For
		  example,    for   /usr/src/file.c,   %dir%   is
		  /usr/src.

	%name%	  The filename of the  file.   For  example,  for
		  /usr/src/file.c, %name% is file.c.

	%suffix%  The suffix  of  the  file.   For  example,  for
		  /usr/src/file.c, %suffix% is c.

	%base%	  The basename of the  file.   For  example,  for
		  /usr/src/file.c, %base% is file.

Unix System LaboratoLast change: 1 August 1995		       14

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

     Strings enclosed in backquotes (`)	are  processed	with  the
     popen()  function and the output replaces the backquotes and
     string.

  Data Attributes Format
     The following pseudo-BNF describes	the data attributes vari-
     able definition:

DataAttributesDefn   ::= `DATA_ATTRIBUTES' blanks record_name
{
			 data_attributes_defn
}

data_attributes_defn ::= (
			 `DESCRIPTION' blanks string newline
		      |	 `ICON'	blanks string newline
		      |	 `INSTANCE_ICON' blanks	string newline
		      |	 `PROPERTIES' blanks string {`,' string} newline
		      |	 `ACTIONS' blanks name {`,' name} newline
		      |	 `NAME_TEMPLATE' blanks	string newline
		      |	 `IS_EXECUTABLE' blanks	string newline
		      |	 `MOVE_TO_ACTION' blanks string	newline
		      |	 `COPY_TO_ACTION' blanks string	newline
		      |	 `LINK_TO_ACTION' blanks string	newline
		      |	 `IS_TEXT' blanks string newline
		      |	 `MEDIA' blanks	string newline
		      |	 `MIME_TYPE' blanks string newline
		      |	 `X400_TYPE' blanks string newline
		      |	 unique_string blanks string newline
		      |	 `#' string newline
			 )

string		     ::= a character string, not including <newline>
newline		     ::= `\n'
unique_string	     ::= a uniquely named string for implementation
			 extensions
blanks		     ::= one or	more <blank>s (spaces and/or tabs)
________________________________________________________________________

  EXAMPLES
     The following are examples	of data	attribute and  data  cri-
     teria entries in the data typing database:

	  DATA_ATTRIBUTES C_SRC
	  {
		  ACTIONS	  Open,Make,Print
		  ICON		  DtdotC
		  IS_TEXT	  true
		  NAME_TEMPLATE	  %s.c
		  DESCRIPTION	  A C_SRC file is a source file	in the C \
				  programming language.
	  }

Unix System LaboratoLast change: 1 August 1995		       15

dtdtsfile(4)	 DEVICES AND NETWORK INTERFACES	     dtdtsfile(4)

	  DATA_CRITERIA	C_SRC1
	  {
		  DATA_ATTRIBUTES_NAME C_SRC
		  MODE		  f
		  NAME_PATTERN	  *.c
	  }

	  DATA_ATTRIBUTES POSTSCRIPT
	  {
		  ACTIONS	  Open,Print
		  ICON		  Dtps
		  NAME_TEMPLATE	  %s.ps
		  MEDIA		  POSTSCRIPT
		  MIME_TYPE	  application/postscript
	  }

	  DATA_CRITERIA	POSTSCRIPT1
	  {
		  DATA_ATTRIBUTES_NAME POSTSCRIPT
		  MODE		  fr
		  NAME_PATTERN	  *.ps
	  }

ERRORS
     Errors encountered	when loading database files  are  written
     to	 the  TED  errorlog  file.  Records containing errors are
     rejected.

SEE ALSO
     dttypes(1), DtDtsIsTrue(3), dtdtfile(4), dtactionfile(4).

Unix System LaboratoLast change: 1 August 1995		       16

See also dtdtsfile(4)

Man(1) output converted with man2html