1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
#------------------------------------------------------------------------------
# $File: scientific,v 1.14 2023/04/29 17:28:09 christos Exp $
# scientific: file(1) magic for scientific formats
#
# From: Joe Krahn <krahn@niehs.nih.gov>
########################################################
# CCP4 data and plot files:
0 string MTZ\040 MTZ reflection file
92 string PLOT%%84 Plot84 plotting file
>52 byte 1 , Little-endian
>55 byte 1 , Big-endian
########################################################
# Electron density MAP/MASK formats
0 string EZD_MAP NEWEZD Electron Density Map
109 string MAP\040( Old EZD Electron Density Map
0 string/c :-)\040Origin BRIX Electron Density Map
>170 string >0 , Sigma:%.12s
#>4 string >0 %.178s
#>4 addr x %.178s
7 string 18\040!NTITLE XPLOR ASCII Electron Density Map
9 string \040!NTITLE\012\040REMARK CNS ASCII electron density map
208 string MAP\040 CCP4 Electron Density Map
# Assumes same stamp for float and double (normal case)
>212 byte 17 \b, Big-endian
>212 byte 34 \b, VAX format
>212 byte 68 \b, Little-endian
>212 byte 85 \b, Convex native
############################################################
# X-Ray Area Detector images
0 string R-AXIS4\ \ \ R-Axis Area Detector Image:
>796 lelong <20 Little-endian, IP #%d,
>>768 lelong >0 Size=%dx
>>772 lelong >0 \b%d
>796 belong <20 Big-endian, IP #%d,
>>768 belong >0 Size=%dx
>>772 belong >0 \b%d
0 string RAXIS\ \ \ \ \ R-Axis Area Detector Image, Win32:
>796 lelong <20 Little-endian, IP #%d,
>>768 lelong >0 Size=%dx
>>772 lelong >0 \b%d
>796 belong <20 Big-endian, IP #%d,
>>768 belong >0 Size=%dx
>>772 belong >0 \b%d
1028 string MMX\000\000\000\000\000\000\000\000\000\000\000\000\000 MAR Area Detector Image,
>1072 ulong >1 Compressed(%d),
>1100 ulong >1 %d headers,
>1104 ulong >0 %d x
>1108 ulong >0 %d,
>1120 ulong >0 %d bits/pixel
# Type: GEDCOM genealogical (family history) data
# From: Giuseppe Bilotta
# Update: Joerg Jenderek
# URL: http://fileformats.archiveteam.org/wiki/GEDCOM
# https://en.wikipedia.org/wiki/GEDCOM
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/g/
# ged.trid.xml ged-utf8.trid.xml ged-utf16.trid.xml
# Note: called "GEDCOM Family History" by TrID and "Genealogical Data Communication (GEDCOM) Format" by DROID via PUID fmt/851
0 search/1/c 0\ HEAD GEDCOM genealogy text
#!:mime text/plain
#!:mime application/x-gedcom
# https://www.iana.org/assignments/media-types/text/vnd.familysearch.gedcom
!:mime text/vnd.familysearch.gedcom
!:ext ged
# no gedcom sample found and ged suffix also used for other formats
#!:ext ged/gedcom
>&0 search 1\ GEDC
>>&0 search 2\ VERS version
# 4 5.0 5.3 5.4 5.5 5.5.1 5.5.5 5.6 7.0 or no version
>>>&1 string >\0 %s
# From: Phil Endecott <phil05@chezphil.org>
# 0\040HEAD as UTF-16 big endian without BOM
0 string \000\060\000\040\000\110\000\105\000\101\000\104 GEDCOM genealogy text
!:mime text/vnd.familysearch.gedcom
!:ext ged
# look for VERS tag encoded as UTF-16 big endian
>12 search/0x65 V\0E\0R\0S version
# version like: 5.5.1
>>&2 bestring16 x %s
>>0 string x \b, UTF-16 (without BOM) big-endian text
# 0\040HEAD as UTF-16 little endian without BOM
0 string \060\000\040\000\110\000\105\000\101\000\104\000 GEDCOM genealogy text
!:mime text/vnd.familysearch.gedcom
!:ext ged
# look for VERS tag encoded as UTF-16 lttle endian
>12 search/0x65 V\0E\0R\0S version
# version like: 5.5.1
>>&3 lestring16 x %s
>>2 string x \b, UTF-16 (without BOM) little-endian text
# Note: UTF-16 with BOM variants already described above by first test as "GEDCOM genealogy text"
# 0\040HEAD as UTF-16 big endian with BOM
#0 string \376\377\000\060\000\040\000\110\000\105\000\101\000\104 GEDCOM data
# 0\040HEAD as UTF-16 little endian with BOM
#0 string \377\376\060\000\040\000\110\000\105\000\101\000\104\000 GEDCOM data
# PDB: Protein Data Bank files
# Adam Buchbinder <adam.buchbinder@gmail.com>
#
# https://www.wwpdb.org/documentation/format32/sect2.html
# https://www.ch.ic.ac.uk/chemime/
#
# The PDB file format is fixed-field, 80 columns. From the spec:
#
# COLS DATA
# 1 - 6 "HEADER"
# 11 - 50 String(40)
# 51 - 59 Date
# 63 - 66 IDcode
#
# Thus, positions 7-10, 60-62 and 67-80 are spaces. The Date must be in the
# format DD-MMM-YY, e.g., 01-JAN-70, and the IDcode consists of numbers and
# uppercase letters. However, examples have been seen without the date string,
# e.g., the example on the chemime site.
0 string HEADER\ \ \ \040
>&0 regex/1l \^.{40}
>>&0 regex/1l [0-9]{2}-[A-Z]{3}-[0-9]{2}\ {3}
>>>&0 regex/1ls [A-Z0-9]{4}.{14}$
>>>>&0 regex/1l [A-Z0-9]{4} Protein Data Bank data, ID Code %s
!:mime chemical/x-pdb
>>>>0 regex/1l [0-9]{2}-[A-Z]{3}-[0-9]{2} \b, %s
# Type: GDSII Stream file
0 belong 0x00060002 GDSII Stream file
>4 byte 0x00
>>5 byte x version %d.0
>4 byte >0x00 version %d
>>5 byte x \b.%d
# Type: LXT (interLaced eXtensible Trace)
# chrysn <chrysn@fsfe.org>
0 beshort 0x0138 interLaced eXtensible Trace (LXT) file
>2 beshort >0 (Version %u)
|