2.5.98.101 VirtualPath
VirtualPath is an XLUnicodeString structure (section 2.5.98.102) that specifies a path, workbook, and optionally a sheet. This value MUST be a XLUnicodeString in the following grammar
virt-path = volume / unc-volume / rel-volume / transfer-protocol / startup / alt-startup / library
startup = %x0001 %x0006 file-path
-
-
-
-
-
This code specifies that the relative-path is relative to the startup directory.
-
-
-
-
alt-startup = %x0001 %x0007 file-path
-
-
-
-
-
This code specifies that the relative-path is relative to the alternate startup directory.
-
-
-
-
library = %x0001 %x0008 file-path
-
-
-
-
-
This code specifies that the relative-path is relative to the library directory.
-
-
-
-
transfer-protocol = %x0001 %x0005 count transfer-path
-
-
-
-
-
This code specifies that the path is a transfer protocol path. The value of count MUST be equal to the number of characters following count in transfer-path.
-
-
-
-
transfer-path = transfer-base-path / "[" transfer-base-path "]" sheet-name
transfer-base-path = transfer-type "://" file-path
transfer-type = "ftp" / "http" / "https"
volume = %x0001 %x0001 volume-character file-path
-
-
-
-
-
This code specifies that the path is relative to a specific drive volume. The drive volume is specified in volume-character.
-
-
-
-
rel-volume = %x0001 %x0002 file-path
-
-
-
-
-
This code specifies that the path is relative to the drive volume of the workbook that contains the path.
-
-
-
-
unc-volume = %x0001 %x0001 %x0040 unc-path
-
-
-
-
-
This code specifies that the path is relative to a UNC volume. The computer name is specified in computer-name and the shared folder is specified in shared-folder.
-
-
-
-
unc-path = unc-base-path / "[" unc-base-path "]" sheet-name
unc-base-path = computer-name %x0003 shared-folder %x0003 relative-path
volume-character = %x0041-%x005A / %0061-%x007A
-
-
-
-
-
This code specifies the volume title. The volume specified is a drive volume and volume-character is the character of that drive.
-
-
-
-
file-path = relative-path / "[" relative-path "]" sheet-name
sheet-name = sheet-start-end-character *sheet-character sheet-start-end-character / sheet-start-end-character
sheet-start-end-character = %x0001-%xFFFF
-
-
-
-
-
This code specifies the sheet-start-end-character MUST also not include any character that matches invalid-sheet-start-end-character.
-
-
-
-
invalid-sheet-start-end-character = %x0003 / "*" / "?" / "'" / "[" / "]" / "\" / ":" / "/"
sheet-character = %x0001-%xFFFF
-
-
-
-
-
This code specifies a sheet character. A sheet character MUST also not include any
character that matches invalid-sheet-character.
-
-
-
-
invalid-sheet-character = %x0003 / "*" / "?" / "[" / "]" / "\" / ":" / "/"
relative-path = directory *(%x0003 directory)
directory = path-string
computer-name = path-string
shared-folder = path-string
path-string = 1*path-character
path-character = %x0020-%x0021 / %x0023-%x0029 / %x002B-%x002E / %x0030-%x0039 / %x003B / %x003D / %x0040-%x005B / %x005D-%x007B / %x007D-%xFFFF
-
-
-
-
-
This code specifies a path character.
-
-
-
-
count = %x00-%xFF
Certain grammar rules have specific meanings, as specified in the following table.
Rule |
Meaning |
---|---|
volume |
Specifies that the path is relative to a specific drive volume. Volume-character specifies the drive volume. |
unc-volume |
Specifies that the path is relative to a UNC volume. Computer-name specifies the computer. Shared-folder specifies the shared folder. |
transfer-protocol |
Specifies that the path is a transfer protocol path. The count MUST equal the number of characters following count in the XLUnicodeString. |
startup |
Specifies that the relative-path is relative to the startup directory. |
alt-startup |
Specifies that the relative-path is relative to the alternate startup directory. |
library |
Specifies that the relative-path is relative to the library directory. |
relative-path |
Specifies a sequence of subdirectories that comprise the path from the volume or directory. |
sheet-name |
The name of the sheet in the workbook. |