Generally a path name in all of the file systems supported comprises a file system prefix (if present) and no name part, or a sequence of one or more name parts which may be separated by separator characters. Each name part in a path name, except the last one, designates a directory. The last name part can designate either a directory or a file. The empty path name has no prefix and an empty sequence of name parts. Whether an empty path name is permitted and what the semantics of the path name is depends on the file system
The file system prefix or prefixes are defined on a file-system-specific basis. It is guaranteed that all root directories returned by listRoots() are permissible file system prefixes. In the DMS file system each catalog ID is interpreted as a file system prefix in this sense, regardless of whether this catalog ID exists in the file system, and in the UFS file system the root “/” is the only file system prefix.
If multi-part names are permitted in a file system, a separator is generally (but not always) defined with which the name parts are separated (for example “/” in UFS). However, the file system involved ultimately defines whether and how many name parts are permitted and how they are separated.
There is no defined separator for path names in the DMS file system. In addition to the file system prefix (the catalog ID with colons ':' at the beginning and end), the path name can also contain up to two name parts: a user ID (with dollar '$' at the beginning and period '.' at the end) and/or a file name. Even if both parts are contained in the path name, there is no additional separator between them.
The same naming rules are used for path names in the UFS file system as for java.io.File.