Path name format

The APIs that work with objects supported across file systems use a common path name format to identify the objects.

The format of the path name is as follows. For a detailed description of each field, see Field descriptions.

Offset Use Type Field
Dec Hex
0 0 INPUT BINARY(4) CCSID
4 4 INPUT CHAR(2) Country or region ID
6 6 INPUT CHAR(3) Language ID
9 9 INPUT CHAR(3) Reserved
12 C INPUT BINARY(4) Path type indicator
16 10 INPUT BINARY(4) Length of path name
20 14 INPUT CHAR(2) Path name delimiter character
22 16 INPUT CHAR(10) Reserved
32 20 INPUT CHAR(*) Path name

Field descriptions

This section describes the path name format fields in further detail. Field descriptions are in alphabetical order.

CCSID. The CCSID (coded character set ID) the path name is in. The possible values follow.

Value Description
0 Use the current job default CCSID.
1-65533 A valid CCSID in this range.

Country or region ID. The country or region ID for the path name. The possible values follow.

Value Description
X'0000' Use the current job country or region ID.
Country or region ID A valid country or region ID.

Language ID. The language ID for the path name. The possible values follow.

Value Description
X'000000' Use the current job language ID.
Language ID A valid language ID.

Length of path name. The length of the path name in bytes.

Path name. Depending on the path type indicator field, this field contains either a pointer to a character string that contains the path name, or a character string that contains the path name.

The path name must be an absolute path name or a relative path name. An absolute path name is a path name that starts with the path name delimiter, usually the slash (/) character. A relative path name is a path name that does not start with the path name delimiter. When a relative name is specified, the API assumes that this path name starts at the current directory of the process that the API is running in.

The dot and dot dot (. ..) directories are valid in the path name. The home directory, generally represented by using the tilde character in the first character position of the path name, is not supported.

A null character value is not allowed as one of the characters in the path name unless a null character is specified as a path name delimiter.

To avoid confusion with IBM® i special values, path names cannot start with a single asterisk (*) character.

Path name delimiter character. The delimiter character used between the element names in the path name. This is in the same CCSID as the path name. The most common delimiter is the slash (/) character. If the delimiter is 1 character, the first character of the 2-character field is used.

Path type indicator. Whether the path name contains a pointer or is a character string and whether the path name delimiter character is 1 or 2 characters long. The possible values follow.

Value Description
0 The path name is a character string, and the path name delimiter character is 1 character long.
1 The path name is a pointer, and the path name delimiter character is 1 character long.
2 The path name is a character string, and the path name delimiter character is 2 characters long.
3 The path name is a pointer, and the path name delimiter character is 2 characters long.

Reserved. A reserved field that must be set to hexadecimal zeros.