doc: File name extension to MIME type map
[libisds.git] / doc / message
blob09b4581833d564d37c067d854fc1b6748f5f596a
1 Message specification
2 =====================
4 Source: Provozní řád ISDS, version 2009-10-30, Page 13
5 Source: Webové služby ISDS pro manipulaci s datovými zprávami, version 2.6
6     (2010-01-18) [DataMessage_ws.pdf]
8 Message ::= Envelope, Content
10 Message format is defined in Appendinx 1, file dmBaseTypes.xsd.
12 Content ::= (Document)+
14 Content involves one or more attachments (= Documents). Allowed Document
15 formats are defined in Appendix 3 of Vyhláška o stanovení podrobností užívání
16 a provozování ISDS.
18 Currently (2009-11-18) allowed formats are (quotation follows):
20     – pdf (Portable Document Format)
21     – PDF/A (Portable Document Format for the Long-term Archiving)
22     – xml (Extensible Markup Language Document); must be valid against
23     free available XML Schema published by recipient
24     – fo/zfo (602XML Filler dokument)
25     – html/htm (Hypertext Markup Language Document)
26     – odt (Open Document Text)
27     – ods (Open Document Spreadsheet)
28     – odp (Open Document Presentation)
29     – txt (plain text)
30     – rtf (Rich Text Format)
31     – doc (MS Word Document)
32     – xls (MS Excel Spreadsheet)
33     – ppt (MS PowerPoint Presentation)
34     – jpg/jpeg/jfif (Joint Photographic Experts Group File Interchange Format)
35     – png (Portable Network Graphics)
36     – tiff (Tagged Image File Format)
37     – gif (Graphics Interchange Format)
38     – mpeg1/mpeg2 (Moving Picture Experts Group Phase 1 / Phase 2)
39     – wav (Waveform Audio Format)
40     – mp2/mp3 (MPEG-1 Audio Layer 2 / Layer 3)
41     – isdoc/isdocx (Information System Document) version 5.2 or higher
43 Document format declaration inside Document and conformace checks change
44 during time. XML Schemas provide attribute for Document MIME type and Document
45 annotation.
47 Attribute dmMimeType must present, but may be empty, may contain file name
48 extension, or may contain official MIME type. If MIME type is declared, ISDS
49 checks Document content for conformance to the MIME type.
51 There is MIME type blacklist: application/x-zip-compressed,
52 application/x-msdownload.
54 Attribute dmFileDescr (so called annotation) must present and must contain
55 file name of the Document. Even if dmMimeType exists, ISDS uses THIS attribute
56 to detect Document format (according file name extension) and checks content
57 for format conformance.
59 There is list of allowed file name extensions: pdf, xml, fo, zfo, html, htm,
60 odt, ods, odp, txt, rtf, doc, xls, ppt, jpg, jpeg, jfif, png, tiff, gif, mpeg1
61 mpeg2, wav, mp2, mp3, isdoc, isdocx, cer, crt, der, pk7, p7b, p7c, p7f, p7m,
62 p7s, tst (time stamp).
64 Non-normative: File name extenstion to MIME type map:
66 Extensions  MIME type           Description
67 -------------------------------------------------------------------------------
68 pdf         application/pdf     Portable Document Format
69 xml         application/xml     Extensible MarkUp Language
70 fo          application/fo+xml  (XSL) Format object
71 zfo                             602XML form (zipped XML form with XSL-FO styles)
72 html, htm   text/html           Hyper Text MarkUp Language
73 odt         application/vnd.oasis.opendocument.text
74                                 Open Document Format Text
75 ods         application/vnd.oasis.opendocument.spreadsheet
76                                 Open Document Format Spreadsheet
77 odp         application/vnd.oasis.opendocument.presentation
78                                 Open Document Format Presentation
79 txt         text/plain          Plain text (no charset nor encoding signalled)
80 rtf         application/rtf     Rich Text Format
81 doc         application/msword  Microsoft Word Document
82 xls         application/vnd.ms-excel
83                                 Microsoft Excel Document
84 ppt         application/vnd.ms-powerpoint
85                                 Microsoft PowerPoint Document
86 jpg, jpeg, jfif
87             image/jpeg          JFIF/JPEG image
88 png         image/png           Portable Network Graphics
89 tiff        image/tiff          Tag Image File Format
90 gif         image/gif           
91 mpeg1       video/mpeg          Motion Joint Picture Expert Group Version 1
92 mpeg2       vidoe/mpeg2         Motion Joint Picture Expert Group Version 2
93 wav         audio/x-wav         RIFF WAVE PCM Audio
94 mp2         audio/mpeg          MPEG Audio Layer 2
95 mp3         audio/mpeg          MPEG Audio Layer 3
96 isdoc, isdocx
97                                 Digital Payment Invoice Format
98 cer, crt, der
99                                 X.509 Certificate (different serialization)
100 pk7, p7b, p7c, p7f, p7m, p7s
101                                 Crypto Message Syntax (different serialization)
102 tst                             Time Stamp
105 Document ::= Binary_Document | XML_Document
107 Document is Base64 encoded binary format or XML.
109 There exist special Document type, ESS format, that can exist in Content only
110 once.
112 Note: ESS format is special XML language designed as interface between
113 Electronic Document Systems (ESS). It's defined in Appendix 4 of Provozní řád
114 ISDS.
116 Message with `malicious code' will be refused by ISDS.
118 Maximal total size of Documents in a Message is 10 MB. Binary document size is
119 size before encoding into Base64, XML document size is size in bytes as is
120 serialized inside SOAP request.
122 A Message can be addressed to 50 recipients at maximum.
124 Life time of Message:
126     – 90 days for delivered message
127     – unlimited for delivered through fiction messages, however they can be
128     moved to off-line storage after 90 days. User can request to move the
129     Message back into his box (off-line only currently).
131 Deleted messages are stored off-line as Envelope only without Content.
133 Note: Delivery through fiction is currently defined as new unread for more
134 than 10 days after delivery.
137 Digital Signatures
138 ==================
140 Emeded digital signatures are PKCS#7 to avoid expensive XML canonicalization.
143 System messages
144 ===============
146 There exists special message type iniciated by ISDS (i.e. from system, not from
147 other box). Such message has reserved from-box `aaaaaaa' (7 × `a') value and
148 sender type `0' and it contains always document of type HTML. There are
149 following cases defined:
151 1   Outgoing message contained malicious code
152 2   You, administrator, deleted other user
153 3   Outgoing message could not been delivered because recipeient box had been
154     made unaccessible
155 4   Outgoing commercial message has not been accepted by recipient
156 5   User has been added to the box
157 6   User permissions has been changed
160 Commercial messages
161 ===================
163 Users can allow commercial message receiving explicitelly. Commercial message
164 are not considered as accepted by recipient automatically (in opposite to
165 standard messages), recipient must call ConfirmDelivery to move message from
166 state Delivered (4) to state Received (6).
168 User can request to assign permission to send commercial messages. Permission
169 can be assigned by Czech Post. Commecial recipient can not be searched. Sender
170 must know exact box ID.
172 Commercial message can be recognised by @dmType="K" in message envelope. If
173 @dmType is "V" or attribute is missing, message is so called public (i.e.
174 standard noncommercial with acceptence time outs etc.).
177 Message states
178 ==============
180 Value   Meaning
181 1       Message has been put into ISDS
182 2       Message stamped by TSA
183 3       Message included virues, infected document has been removed
184 4       Message delivered (dmDeliveryTime stored)
185 5       Message delivered through fiction (dmAcceptanceTime stored)
186 6       Message delivered by user login or user explicit request (in case of
187         commercial message) (dmAcceptanceTime stored)
188 7       Message has been read by user
189 8       Message could not been delivered (e.g. recipent box has been made
190         unaccessible meantime)
191 9       Message content deleted (thus can not be obtained on-line)
192 10      Message stored into data safe (this is optional commercial service)