Ładowanie Ładowanie

Post: > OpenXML - fakty i mity

wydrukuj: print publikuj: wykop dodaj do flakera Dodaj jako nius na OSnews.pl! delicious

OpenXML - fakty i mity

TAGI: microsoft , odf , openxml
2007-11-24 23:27:59 |
OpenXML - fakty i mity

Długo się zastanawiałem nad wpisem dotyczącym OpenXML jako standardu ISO. Do napisania go skłoniła mnie dyskusja na naszym forum http://forum.webhosting.pl/index.php?showtopic=261. Stwierdziłem, że przeprowadzę małą analizę tego, co się dzieje wokół OpenXML. Być może część z tego, co napisałem, pozwoli rozwiać niejasności.

W grudniu 2005 roku Microsoft rozpoczął rozmowy z międzynarodowym stowarzyszeniem standaryzacyjnym Ecma International w celu stworzenia standardu dla formatu OpenXML. W grudniu 2006 Ecma ratyfikowała OpenXML jako międzynarodowy standard (http://www.ecma-international.org/memento/TC45.htm) Ecma 376. Od tego momentu OpenXML przestał być standardem plików Microsoftu, a stał się standardem międzynarodowym, którego właścicielem jest Ecma (to już pierwszy mit, który pojawia się wśród przeciwników standardu). Zacznijmy od historii.

Historia

Historia procesu zaczyna się mniej więcej w momencie, gdy pojawia się Microsoft Office 2003. Wersja ta zawiera WordprocessingML oraz SpreadsheetML, które pozwalają na tworzenie dokumentów za pomocą XML-a i są na tyle popularne, że Microsoft podejmuje decyzja o tym, aby stały się standardem formatu plików dla następnej wersji pakietu Office (nazwa kodowa produktu Office „12”). We wrześniu 2003 roku Microsoft wraz z przedstawicielami duńskiego rządu ogłasza możliwość darmowego korzystania z formatu Office 2003 XML (royalty-free licensing) i publicznie informuje o dostępności jego schematów. W maju 2004 roku Unia Europejska prosi Microsoft o zgłoszenie formatu XML do standaryzacji. W grudniu 2004 roku komitet OASIS zgadza się na standaryzację formatu Open Office XML. Prace nad przyjęciem do standaryzacji formatu Open Office XML odbyły się za pomocą poczty elektronicznej podczas jednej z cotygodniowych oficjalnych konferencji telefonicznych przedstawicieli komitetu standaryzacyjnego. W styczniu 2005 roku nazwa “OASIS Open Office XML Format TC” zostaje zmieniona na “OASIS Open Document Format for Office Applications TC”. W maju tego roku ODF zostaje zaaprobowany przez OASIS jako standard. W tym samym miesiącu Microsoft ogłasza nowy standardowy format plików dla aplikacji Word, Excel i PowerPoint.

W październiku OpenOffice ukazuje się w wersji 2.0 i jest pierwszym produktem, który całkowicie obsługuje format pliku OpenDocument (ODF). W listopadzie za sprawą rekomendacji Unii Europejskiej (z maja 2004 roku) OpenXML jest zgłoszony do międzynarodowej organizacji standaryzacji ECMA. W tym samym miesiącu Microsoft ogłasza, że aby korzystać z nowego formatu pliku, nie jest potrzebna żadna licencja dla użytkownika, i całkowicie uwalnia ten format plików do publicznego użycia.

Kolejny rok, kolejne coraz bardziej zaawansowane prace nad formatem. W styczniu 2006 roku Corel ogłasza, że będzie obsługiwał format OpenXML w następnej wersji swojego pakietu WordPerfect Office, i jednocześnie, że nie planuje się obsługi dla ODF ze względu na brak żądań klientów. W kwietniu Ecma TC45 spotyka się z British Library w Londynie. Na spotkaniach TC zgadza się na publikację pierwszej wersji specyfikacji OpenXML oraz na dostarczenie mechanizmu do przyjmowania publicznych komentarzy. W grudniu ECMA oficjalnie zatwierdza OpenXML jako Ecma Standard 376. Głosowało 20 osób za przyjęciem oraz jeden głos, z firmy IBM, przeciwko.

Mity

Wiemy, jak wygląda historia – teraz chciałbym obalić kilka najbardziej popularnych mitów dotyczących OpenXML. Oczywiście są to moje prywatne spostrzeżenia bazujące na własnych doświadczeniach i analizach.

Mit nr 1: Po co nam kolejny standard plików

Świat jest pełen przykładów konkurencyjnych dla siebie standardów, mimo że cześć z nich wykonuje dokładnie te same czynności. Popatrzmy na takie dokumenty, jak: Open Document Format, PDF/A, UOF, HTML czy Ecma Office Open XML. Wszystkie możemy użyć do przetwarzania i generowania dokumentów, a mimo wszystko są one standardami ISO (poza Ecma OpenXML). Inne przykłady z innych „podwórek” – pliki obrazów: JPEG (który ma trzy różne wersje: JPEG, LPEG-LS oraz JPEG 2000), PNG oraz CGM – wszystkie one są standardami ISO. Podobnie jak z językami schematów: RELAX NG (ISO/IEC 19757-2:2003) oraz SGML (ISO/IEC 8879:1986). Kolejny przykład – poczta elektroniczna: mamy X.400, SMTP, POP3, IMAP.

Jeden format plików nie jest w stanie zapewnić wszystkich oczekiwań odbiorców. Czego innego oczekuje użytkownik domowy, czego innego urzędy publiczne, a jeszcze czego innego firmy i duże przedsiębiorstwa. W wielu przypadkach alternatywne standardy pozwalają na wybór, konkurencję oraz innowacyjność poprzez coraz lepsze rozwijanie danego standardu. Tak jak w przypadku obróbki obrazów cyfrowych – możemy je w zależności od potrzeb przechowywać jako JPEG, TIFF oraz PNG.

Mit nr 2: Specyfikacja formatu ma defekty, ponieważ powstaje w izolacji od Microsoftu

To kolejny przykład, gdy bez zastanowienia powtarzamy to, co inni. Po pierwsze, tak jak napisałem na samym początku, właścicielem specyfikacji jest nie Microsoft, ale ECMA, i to w jej gestii jest rozwijanie i dbanie o standard i jego dokumentację. ECMA jest organizacją, w skład której wchodzą różne firmy i organizacje. To samo dotyczy OpenXML. W procesie tworzenia standardu brało udział wiele firm, takich jak: Apple, Intel, Novell, Microsoft, NextPage, Toshiba, The British Library, U.S. Library of Congress, BP, Statoil, Barclays Capital czy też Essilor.

Mit nr 3: Problemy OpenXML z IPR (prawa intelektualne)

Jako standard ECMA żaden ze standardów nie może być chroniony prawami. Specyfikacje są otwarte z możliwością użycia przez dowolną osobę. Zresztą reguluje to również informacje zawarte na stronach http://office.microsoft.com/en-us/products/HA102134631033.aspx oraz http://www.microsoft.com/interop/osp/default.mspx.

Mit nr 4: OpenXML wykorzystuje zachowanie aplikacji – przykład: dyrektywa autoSpaceLikeWord95

Ustawienia, o których mowa, są bardzo często używane w rzeczywistych dokumentach. Umieszczenie takiego ustawienia powoduje, że aplikacja używa specyficznego sposobu zapisu dla konkretnej aplikacji. Specyfikacja OpenXML dokładnie opisuje wszystkie te opcje (i jest ich całkiem sporo). Oczywiście jest kilka ustawień, między innymi autoSpaceLikeWord95, które nie są tak dokładnie opisane jak pozostałe parametry, ale komitet techniczny ECMA TC45 postanowiła pozostawić je ze względu na kompatybilność wstecz z poprzednimi wersjami dokumentów. Jeśli się wczytać w dokumentację, to wynika z niej jasno, że są to opcje dodatkowe i nie powinny być używane bez specjalnej potrzeby.

Cytat ze specyfikacji – część 4, Sekcja 2.15.3, Compatibility Settings states: “It is important to note that all compatibility settings are optional in nature – applications may freely ignore all behaviors described within this section and these settings should not be added unless compatibility is specifically needed in one or more cases. The compatibility settings are provided for backward compatibility with documents created in legacy applications. As such, a number of the settings reference specific applications and specific versions of those applications. This is solely for backward compatibility reasons, and any of those settings are ignorable”.

Podobne przykłady można znaleźć również w ODF, który zawiera między innymi następujące ustawienia: ChartAutoUpdate, AddParaTableSpacing, SaveGlobalDocumentLinks, IsLabelDocument etc.

Mit nr 5: OpenXML pozwala na rozszerzenia, co przeszkadza w interoperacyjności

Jest to mit z samego założenia. Dlaczego? Ponieważ tutaj również możemy posłużyć się przykładem SGML (ISO 8879), który jest de facto rozszerzeniem HTML. Podobnie jest z ODF – przyjrzyjmy się dokumentacji i architekturze http://a.dict.it/definition/lexikon/oda_open%20document%20architecture%20.html oraz dokumentowi http://www.idealliance.org/proceedings/xtech05/slides/brauer/xtech2005-opendocument.pdf.

Można zważyć, ze rozszerzalność dokumentu jest konieczna – patrz: strona 14 (slajd 14) z powyższego dokumentu.

Mit nr 6: OpenXML może być implementowany tylko przez Microsoft

Publiczny dostęp do specyfikacji zapewnia ECMA – spójrzmy na listę dostępnego oprogramowania obsługującego OpenXML, a łatwo zauważymy, że stwierdzenie nie jest prawdziwe.

Co więcej, aplikacje te powstały na różne systemy operacyjne – nie tylko Windows:

– Windows: Altsoft XML2PDF Server 2007, AltViewer Documents Preview, Altova XML Spy, Corel Office, Create Word 2007 Documents Without Word Installed, doxc to RTF, Madcap Flare, Microsoft Office 2000, Office XP and Office 2003, Microsoft Office 2007, Nuance OmniPage 16, Mindjet's MindManager, Monarch V.9.0 from Datawatch, ODF-Converter, OOX-UOF Converter, Open ERP Software, Open XML Translator, Open XML Translator for OpenOffice, Open XML Writer, PythonOffice (Python API to Read and Write Excel XML Documents from within Python Programming Language), Sourceforge Project to Allow .NET (C#) Developer to Have Component to Interact with Open XML File, Special Templates for Master Thesis, Word 2007 Map Editor for Mindjet MindManager, Xpertdoc Studio 2007 Reporting Solution,

– Mac OS: Apple iWork ’08 (Text Editor, Spreadsheet, Presentation), docx Convertor for the Mac, docx to HTML Konverter, docx to RTF Konverter, MacLinkPlus Deluxe version 16 (DataViz), Microsoft Office 2008, Neo Office 2.1, Sun Open XML Import Filter for Spreadsheets, Word Counter 2.2.1, docx and xlsx Readers for Apple iPhone,

– Linux: Gnumeric (Open Source Spreadsheet), Open Office (Novell), Linspire, Xandros, TurboLinux, Open XML Translator for OpenOffice,

– Inne systemy operacyjne lub niezależne implementacje: Docx2Doc Web Service, DOCX Convertor on Palm Handheld Devices, OpenXML4J (Open XML Framework for Java), OpenXMLDeveloper.org, PHPExcel (PHP Web Development), WebService with Mailing of Document, docx to HTML, Word 2007 file Construction Using Java.

Mit nr 7: Szyfrowanie danych

OpenXML nie używa funkcji skrótu (hash function) do tworzenia zabezpieczeń. Zamiast tego, w celu ochrony haseł, używany jest mechanizm zaciemniania. Dzięki temu nie jest możliwe wykorzystanie danej funkcji skrótu oraz inżynierii odwrotnej do odtworzenia hasła. Metoda ta w żaden sposób nie jest sprzeczna z ISO/IEC 10118-3:2005. Niemniej jednak algorytmy szyfrujące są obsługiwane (część 4, sekcja 2.15.1.28). Ponadto funkcja skrótu została użyta w celu uniknięcia przechowywania haseł w postaci czystego tekstu. W ISO 26300 (ODF) funkcja skrótu nie została wyspecyfikowana. W przypadku OpenXML funkcjonalność ta została całkowicie zdefiniowana w standardzie, co oznacza, że cel, jakim jest interoperacyjność, został osiągnięty. Standard ECMA 376 (Open XML) ma w swojej specyfikacji precyzyjnie opisaną implementację podpisu elektronicznego, co pozwala na zapewnienie interoperacyjności i pełnej zgodności implementacji w systemach wymagających przesyłania dokumentów opatrzonych podpisem elektronicznym. Cechy tej – krytycznej w systemach e-administracji – nie mają inne formaty dokumentów, na przykład oparte na ISO 26300 (ODF). Opis realizacji funkcji podpisu cyfrowego zawarty jest w rozdziale 12, zatytułowanym Digital Signature, na stronach 42–62, Office Open XML, ECMA TC45, Final Draft, Part 2: Open Packaging Conventions.

Podsumowanie

Długo się zastanawiałem nad tym tekstem. Chciałem, aby informacje tu zawarte były jak najbardziej dokładne. Mam nadzieję, że się udało. Jedno, o co bym prosił następnym razem: zastanówmy się dokładnie nad danym zagadnieniem, czy aby na 100% mamy rację, a nie powtarzajmy ogólnych "popularnych" haseł.

Najnowsze wiadomości
wydrukuj: print publikuj: wykop dodaj do flakera Dodaj jako nius na OSnews.pl! delicious

Czytaj webhosting.pl:

Dyskusja

dodaj komentarz
comnt Ten artykuł nie został jeszcze skomentowany. Bądź pierwszy!

Komentarze

  • Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka (słowa muszą być rozdzielone spacją).
  • Jeśli masz problemy z odczytaniem słów, zmień zdjęcie.
  • Używamy tego zabezpieczenia, ponieważ dzięki niemu rozwija się projekt reCAPTCHA. Sugerujemy jednak, by zarejestrować się w serwisie i w ten sposób ominąć konieczność ciągłego odczytywania wyrazów.
  • W treści komentarza można używać języka formatowania BBcode.