Sustainability of Digital Formats: Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

SAS Version 8 Transport File Format (XPORT)

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name SAS Transport File Format (XPORT) Version 8
Description

The SAS Transport File Format is an openly documented specification maintained by SAS, a commercial company with a variety of software products for statistics and business analytics, including the application now known as SAS/STAT, which originated in the late 1960s as SAS (an acronym for Statistical Analysis System) at North Carolina State University. The transport format was originally developed in the late 1980s when the corporate entity was known as SAS Institute, Inc. and the software as SAS, to support data transfers between statistical software systems, especially between SAS applications running on different operating systems. SAS considers it non-proprietary. This format is referred to in several ways, including XPORT. This description is for the second version, termed Version 8 (corresponding to the first version of SAS that supported this version of the transport format). Version 8, named "SAS_xport_8" here, was introduced in October 2012. See Usage Note 46944: New SAS transport format and tools available. References on the Web to the SAS transport format without qualification as to version should probably be assumed to refer to Version 5.

See SAS_xport_family for a summary of the structure that is common to both versions of the format. For SAS_xport_8, all header labels include the string "V8".

Several restrictions in Version 5 [SAS_xport_5] were lifted for this version:

  • The constraint on the number of variables of 4 decimal digits in the NAMESTR header was raised to 6 decimal digits.
  • Variable names can be up to 32 characters and are stored in their original case (upper or lower). Variable names can contain any characters other than null (Hex 0x00). Version 5 only allows alphanumeric and underscore as characters in names.
  • The 40-characters limit on variable labels was lifted to 256 characters
  • The contents of a variable may be numeric or string:
    • No change was made to the representation of numeric variables, which may be integer or floating point. Floating point variables may not have absolute values smaller than 5.398e–79 or greater than 9.046e+74. The range and precision are controlled by the IBM Double Precision (8-byte) numeric format. For more on how numeric formats are stored, see Numeric Precision in SAS Software
    • The 200-byte limit on character variables was raised to 32,767 bytes.
    • When data is missing, a missing data value is stored in the first byte of the data location for the variable. The variable value is padded with Hex 0x00 bytes to the declared length for the variable.
  • Value labels are not written in the XPORT dataset. Suppose that you have a variable sex in the data with values 0 and 1, and the values are labeled for gender (0=male, and 1=female). When the dataset is written in SAS XPORT Transport format, you can record that the variable label gender is associated with the sex variable, but you cannot record the association with the value labels male and female. Value-label definitions may be stored in a second XPORT dataset or in a text file containing SAS commands.
Production phase See SAS_xport_family.
Relationship to other formats
    Subtype of SAS_xport_family, SAS Transport File Format Family (XPORT)
    Has earlier version SAS_xport_5, SAS Version 5 Transport File Format (XPORT)

Local use Explanation of format description terms

LC experience or existing holdings See SAS_xport_family.
LC preference See SAS_xport_family.

Sustainability factors Explanation of format description terms

Disclosure Publicly documented format developed by SAS Institute, Inc. SAS considers it non-proprietary but controls the specification.
    Documentation Version 8 is documented in Record Layout for a SAS Version 8 or 9 Data Set in SAS Transport Format.
Adoption The compilers of this resource have not found evidence of use of Version 8 of the SAS Transport Format. Comments welcome.
    Licensing and patents See SAS_xport_family.
Transparency See SAS_xport_family.
Self-documentation See SAS_xport_family.
External dependencies See SAS_xport_family.
Technical protection considerations See SAS_xport_family.

Quality and functionality factors Explanation of format description terms

Dataset
Normal functionality See SAS_xport_family.

File type signifiers and format identifiers Explanation of format description terms

Tag Value Note
Filename extension See note.  SAS advises use of a file extension other than .xpt for Version 8 transport files, suggesting .v8xpt, .xpt8, or .2xpt; see Moving and Accessing SAS 9.4 Files, Third Edition. The compilers of this resource have not found evidence of use of these file extensions. Comments welcome.
Magic numbers ASCII: HEADER RECORD*******LIBV8 HEADER RECORD!!!!!!!
Hex: 48 45 41 44 45 52 20 52 45 43 4F 52 44 2A 2A 2A 2A 2A 2A 2A 4C 49 42 56 38 20 48 45 41 44 45 52 20 52 45 43 4F 52 44 21 21 21 21 21 21 21
From specification.

Notes Explanation of format description terms

General See SAS_xport_family.
History See SAS_xport_family.

Format specifications Explanation of format description terms


Useful references

URLs


Last Updated: 05/23/2017