XML paper specification file (.xps)
.xps file signature | application/octet-stream
Magic Bytes
Offset: 0
50 4B 03 04
XML paper specification file
Sources: Gary Kessler
Validation Code
How to validate .xps files in Python
def is_xps(file_path: str) -> bool:
"""Check if file is a valid XPS by magic bytes."""
signature = bytes([0x50, 0x4B, 0x03, 0x04])
with open(file_path, "rb") as f:
return f.read(4) == signature
How to validate .xps files in Node.js
function isXPS(buffer: Buffer): boolean {
const signature = Buffer.from([0x50, 0x4B, 0x03, 0x04]);
return buffer.subarray(0, 4).equals(signature);
}
How to validate .xps files in Go
func IsXPS(data []byte) bool {
signature := []byte{0x50, 0x4B, 0x03, 0x04}
if len(data) < 4 {
return false
}
return bytes.Equal(data[:4], signature)
}
API Endpoint
/api/v1/xps
curl https://filesignature.org/api/v1/xps
See the full API documentation for all endpoints and parameters.
Frequently Asked Questions
What is a .xps file?
A .xps file is a XML paper specification file file. XML paper specification file
What are the magic bytes for .xps files?
The magic bytes for XML paper specification file files are 50 4B 03 04 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.
How do I validate a .xps file?
To validate a .xps file, read the first bytes of the file and compare them against the known magic bytes (50 4B 03 04) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.
What is the MIME type for .xps files?
There is no officially registered MIME type for .xps files. Systems typically use application/octet-stream as a generic fallback when handling this format.
Is it safe to open .xps files?
XML paper specification file (.xps) files are generally safe to open. They are classified as low risk because they primarily contain data rather than executable code. However, always ensure files come from a trusted source.