Open XML, ISO, bináris formátumok még egyszer
A bináris Office-fájlformátumokkal kapcsolatos hír újra felmelegítette az Open XML kontra ODF kérdéskört; gondoltam, érdemes megosztanom az álláspontomat.
Az ODF már ISO-szabvány, miért kell az Open XML?
A szabványok egy része a hiány kiküszöbölésének szándékából keletkezik. Az érintett iparág képviselői viszonylag pontosan tudják, mit szeretnének, ezt kötelező és opcionális előírások formájában megfogalmazzák, a szállítók pedig gyártani kezdik a fentieknek megfelelő termékeket. Ez a "tiszta lap" megközelítés, ami elvben garantálja az optimális eredményt. Persze mindig vannak az ilyen szabványoknak előképei, meglévő elemei, de nincs mindenki által elfogadott implementáció.
A szabványok egy másik része egy vagy több már meglévő implementációt tesz -- több-kevesebb átdolgozás, kiegészítés, összevonás, áramvonalasítás után -- kitüntetetté. Ez a megközelítés akkor működhet, ha a kiválasztott implementáció már egyébként is "ipari szabványnak" számít, azaz régóta jelen van a piacon, széles körben ismerik és használják.
Az irodai dokumentumok formátumának szabványosítására a második minta illik: itt már adott legalább két implementáció.
- Időben az első az önálló alkalmazások formájában és csomagként is elérhető Microsoft Office (Word: 1981-től, Excel: 1985-től, PowerPoint: 1987-től, csomag: 1992-től), pontosabban annak formátumai.
- A második: a Sun StarOffice (csomag: 1994-től), illetve az abból származó OpenOffice (csomag: 2000-től) formátumai.
Nem tudok olyan felmérésről, amelyből kiderülne, hány Microsoft Office-, illetve Star/OpenOffice-dokumentum található a világon, illetve hány új készül naponta, de valószínűnek tartom, hogy az első kategória több nagyságrenddel meghaladja a másodikat. Magyarán csak olyan szabvány jöhet szóba, amely képes az első kategóriába tartozó dokumentumok kezelésére is.
Az lett volna az ésszerű, ha -- a piac egyes szereplőinek javaslata szerint -- a Microsoft és az OpenOffice.org (vagy az ECMA és az OASIS) együttműködnek, és egyesített szabvány létrehozására törekednek. Ezzel szemben a dolog politikai síkra terelődött, és a következő történt:
- A szabványosításra beadott ODF formátum az OpenOffice meglévő, illetve előrevetített funkcionalitását vette alapul, és (az alapszintű szolgáltatásokon túlmenően) nem foglalkozott a Microsoft Office-kompatibilitás megteremtésével. Ez szerintem érthető és elfogadható.
- A szabványosításra beadott Open XML formátum a Microsoft Office meglévő, illetve előrevetített funkcionalitását vette alapul, és segíteni fog abban, hogy a Microsoft Office korábbi verziói elérhetőek legyenek az új szabványon keresztül (lásd Brian Jones hivatkozott bejegyzésében; a technológia egyébként nagyrészt létezik az OPMP-ben). Nem foglalkozott ugyanakkor az OpenOffice-kompatibilitás megteremtésével. Szerintem ez is érthető és elfogadható.
Azaz itt állunk két részmegoldással (az első OASIS- és ISO-szabvány, a második jelenleg ECMA-szabvány, és most zajlik az ISO-ban a szabványosítása), amelyek együtt képesek lesznek lefedni a piaci igényeket.
A bináris formátumokat már visszafejtették, minek közzétenni őket?
Többen nekifutottak, hogy szép magyar szóval "reverse engineering"-et hajtsanak végre a Microsoft Office bináris fájlformátumain, azaz visszafejtsék azokat, és saját szoftvereiket képessé tegyék az ilyen állományok olvasására és írására. Nem jártak teljes sikerrel, amint azt a névtelen megjegyzésíró egy kapcsolódó kérdése is sugallja.
Nem érinteném most azt a témát, hogy a reverse engineering mikor legális és mikor nem. Pontosan azért kell a hivatalos formátumokat nyilvánosságra hozni, hogy jogi és technológiai szempontból is vállalható alkalmazások szülessenek ezután. Személyes véleményem, hogy a Microsoft ezt hamarabb is megléphette volna.
Mennyire lesz szabadon felhasználható a közzétett specifikáció? Belefér-e a GPL-be?
A .doc, .xls és .ppt specifikációja a Microsoft Open Specification Promise program része lesz. Az OSP weblapján az első mondat így kezdődik:
"Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation to the extent it conforms to a Covered Specification".
Nem vagyok ügyvéd (és egy ilyet mindenképpen meg kell kérdezni, ha külső elemekre is épülő terméket készítünk!), de nekem úgy tűnik, a közzétett specifikációkra épülő saját megoldások minden további nélkül továbbadhatóak.
Hogy ez mennyire fér össze a szabadszoftveres elvekkel? A weblap alján található idézetek közül idemásolnék egyet (kiemelés narancssárgával tőlem):
"Red Hat believes that the text of the OSP gives sufficient flexibility to implement the listed specifications in software licensed under free and open source licenses. We commend Microsoft’s efforts to reach out to representatives from the open source community and solicit their feedback on this text, and Microsoft's willingness to make modifications in response to our comments.
Mark Webbink, Deputy General Counsel, Red Hat, Inc."
Fontos ez?
Igen. Minden olyan megoldás, ami a meglévő N milliárdnyi Office-dokumentumot figyelmen kívül hagyja, ezek felhasználóit is semmibe veszi. Nem így képzelem a "szabvány" szó jelentését.