Vitalnix : User Management Suite
  manual

Name

sdf - Specifications of the SDF file format

Description

An SDF file is a text file, where each object occupies one line. Empty lines are ignored. The structure of a User Object is similar to a CSV file; in SDF, the values are separated by a semicolon. Below the schematic description is a real-world example.

[enum;]nname;vname;xuid;sgroup
(* one-line comment *)
# new-style comment

1;Engelhardt;Jan;12.3.45;11

The different fields are:

  • enumeration number -- this value is generally ignored since unused. It is usually an enumeration number within the class / subgroup. Some SDF export programs do not provide this field at all.
  • nname -- surname (prenom)
  • vname -- first name. This and surname is used to build up a login name in Spark UI.
  • xuid -- a unique identification number, to distinguish users with the same name. The XUID can be any string you seem fit, as long as it is unique for this user. The birth date is often used.
  • sgroup -- Class (school, colleges), or just a transparent sub-group. The subgroup is mostly ignored, all the users in the input data will belong to one system group. It is only used for password printing in user interfaces.

Comments

Comments are similar to shell or C, and as shown in the syntax above, they either begin with a hash mark in the first column, or start with (* and end with *). Both comment types only last for the particular line. The hash-mark style comment may be unsupported within Kolleg.

The following will have an impact in the SDF reader (it will not work) (supply/sdf2xml) as of yet:

Surname;Name;Birthdate;Class (* comment *)
Surname;Name;Birthdate;Class # comment

Portability issues

The only application that exports SDF files is "Kolleg" (a secretary program for German colleges). It is a DOS/16 program and thus exports in ASCII/CRLF mode. Anyone wishing to use Spark should use the sdf2xml utility. Under circumstances, you probably will need to modify it to suit your SDF specs.

If the newline termination sequence is only \x0A, the ANSI set is assumed, which is used throughout Linux. Also see sdf2xml's -a option.

Bugs

The newline termination sequence scanner can not truly run automated, as having CRLF is NO indication of using ASCII. The -a option may help, though.


December 21 2003 http://vitalnix.sf.net/