- From: Jon Ferraiolo <jferrai@us.ibm.com>
- Date: Mon, 8 Oct 2007 06:26:35 -0700
- To: "Marcos Caceres" <marcosscaceres@gmail.com>
- Cc: "public-appformats@w3.org" <public-appformats@w3.org>
- Message-ID: <OFB2574F81.3851275E-ON8825736E.0048790A-8825736E.0049D896@us.ibm.com>
Marcos, Looks good, but why is it necessary or desirable to refer to the OOXML-OPC specification? It's been a long time since I looked at that, but my impression was that the only real "value-add" of the OOXML-OPC write-up on ZIP was a bunch of detail that describes requirements on user agents about various platform-specific round-tripping provisions in the ZIP specification, and I don't think it is either necessary or desirable to put that burden on software developers who want to support the Widgets spec. I would also be hesitant about normatively referencing the OOXML-OPC specification because of possibilities that other features from OOXML leak indirectly into the ZIP description. In general, it is dangerous to refer to a single chapter or appendix out of a much larger specification (and they don't get much larger than the OOXML spec). As I mentioned before, there are also IP issues to consider. The OOXML specification was not your usual open standards process where a group of companies work together to develop a specification. The OOXML specification was a special deal between ECMA and Microsoft where the charter for the ECMA committee was to define the first version of OOXML as whatever was generated by MSOffice (i.e., the spec is required to match the software), whereas the usual standards process is that the software has to match the spec. The whole OOXML standards process has been unusual, so I would be especially careful regarding IP issues because they might also be unusual. As far as I know, Microsoft has not submitted OOXML-OPC to the W3C as a formal submission and therefore IP grants aren't guaranteed to W3C, even if something has been done with ECMA. (See http://www.w3.org/Consortium/Process-20010208/submission.html - notice the mention of IPR claims in the second sentence.) Whatever, if the WAF committee wants to refer to OOXML-OPC, it is incumbent to involve W3C legal in the process to make sure it's OK to make such a reference. Jon "Marcos Caceres" <marcosscaceres@g mail.com> To "public-appformats@w3.org" 10/07/2007 01:46 <public-appformats@w3.org> AM cc Jon Ferraiolo/Menlo Park/IBM@IBMUS Subject [WIDGETS] Using Zip based on OOXML-OPC, was [WIDGETS] Zip Support (request for comments) Ok, in response to Jon's comments, and in the interest of exploring the OOXML-OPC path, here is some new text for discussion: =Zip file= For the purposes of this specification, A valid Zip file is a byte stream or file that conforms to the production of a .Zip file as defined by the the Zip File Format Specification [ZIP], but in conformance with Section 9.2 (excluding section 9.2.6) and Annex C of the [OOXML-OPC] Specification, and with the exclusion or support for the following features. A Zip file that does not conform with the aforementioned sections of [OOXML-OPC] or is in non-conforming with any of the items listed below, is considered to be an invalid Zip file. In the event that a widget user agent encounters an invalid Zip file during the Procedures for Processing a Widget Resource (defined elsewhere), the widget user agent must abort any processing and should inform the end-user with an appropriate localized error dialog: A Zip file must not be split into multiple files or span multiple volumes as defined in [ZIP]. Zip files that are split into multiple files or span multiple volumes are non-conforming. A widget user agent must treat a Zip file that has been split into multiple files or span multiple volumes as being an invalid Zip file. A Zip file must be created using the Deflate compression method as defined in [ZIP]. A Zip file compressed with any other compression method is non-conforming. A widget user agent must treat a Zip file created using other compression methods as being an invalid Zip file. A widget user agent must support the Deflate decompression method defined in [ZIP] to claim conformance to this specification. A Zip file may be created using the Zip64 extensions as defined in [Zip], but preferably only when a widget resource exceeds 4,294,967,296 bytes. A widget user agent must support Zip64 extensions to claim conformance to this specification. A Zip file must not be encrypted using any encryption method defined in [ZIP]. Widget user agents must treat encrypted Zip files as being an invalid Zip file. Widget user agents are not required to support any decryption methods defined in [ZIP] to be conformant with this specification. A Zip file must not be digitally signed using any of the methods defined in [Zip] (instead, a Zip file may be digitally signed using the procedure for signing a widget resource defined in this specification). Widget user agents must treat Zip files digitally signed with methods other than the one defined in the Digital Signature Section of the this specification as being an invalid Zip file. The names of files and directories within a Zip file must only be encoded in US-ASCII (IBM Code Page 437) or UTF-8, but only if general purpose bit 11 is set in accordance with Appendix D of the [ZIP] specification (ie. set if UTF-8 or unset of US-ASCII). A widget user agent must treat a Zip file that has files or directory names outside the valid range of characters for file and directory names (defined elsewhere) as being an invalid Zip file. A widget user agent must treat Zip files with file or directory names in any encoding other than US-ASCII or UTF-8 as as being an invalid Zip file. Note: Please refer to Appendix D - Language Encoding (EFS) in the Zip specification for the technical details of how to indicate that a zip file contains UTF-8 file and directory names. Appendix D also describes how to identify the use encodings other than UTF-8 via the 0x0008 Extra Field. ==Extensibility== A widget resource can be created using proprietary extensions to the [Zip] specification so long as the resulting widget resource can be interoperably processed across widget user agents, and are still a valid Zip file (as defined in the section above). Zip files that cannot be processes by other widget user agents are non-conforming and must be treated as an invalid Zip file. Kind regards, Marcos -- Marcos Caceres http://datadriven.com.au
Attachments
- image/gif attachment: graycol.gif
- image/gif attachment: pic21134.gif
- image/gif attachment: ecblank.gif
Received on Monday, 8 October 2007 13:28:16 UTC