所以我剛剛要嘗試說,兩個問題是不是要分一下,範疇是否也要定調一下?
如果要談這個,那麼就變成整個軟體文件、軟體工程for Open Data如何產生,也就是國發會是不是要想這一個問題如何定義?
但是這邊在談的OAS 3會有辦法去cover這一塊嗎?沒有辦法吧!cover不了吧!我覺得這兩個東西不對等,我是說在寫文件的過程中,如果對使用資料、處理資料的範疇,是不是採用OAS 3的描述方式比較精確,說不定對寫文件的品質是有幫助,但是不代表整份文件要怎麼寫,要怎麼寫,我覺得並不是今天討論(的範圍內)。
這個文件要怎麼寫,這個是一件事,也就是今天要給人家一份系統spec要哪一些,一定有其定義,定義是為了軟體工程如何表達,還有設計的方法論是什麼及如何表達。
我一直嘗試理解現在講什麼問題,我剛剛是要問什麼叫文件,以我所知,如果今天開發一套系統,也就是要產出一套系統規格書及操作的手冊,這是必然的,這個是軟體工程要求的。
你的手冊是指?
Open API是不是有不同層次,也就是不要一個Common API就是一層,是不是要訂層次?
我剛剛講的是Anarchy的做法,由上而下push一定會失敗,而是要變成majority是王。當majority多的時候,大家就會follow,至於majority是不是好的?都不一定,但是至少大家認定……
往往產業界的規格都是誰有用、誰的使用量大,他的聲音就大,聲音大的時候,這會蓋過,這就是大家參考的規定。
這是很好用的,而我也需要,我就會follow你,我就會把這一個精神帶到產業界的spec。
政府不要管Geo訂了什麼東西,因為那不屬於政府管的東西,而是政府要做的,而是變成co-work的角度,今天政府是contributor的角度,也就是政府定義交通資訊的部分,contribute到Geo的東西,要來用就是給你參考的東西。
如果這個可行,那麼就延伸,要用到這樣的資料,他一定要來介接,比如交通部的圖資、交通部資訊的資料,如果是follow OAS 3的東西,有一些什麼東西出來要用到,產業要用到,當然就follow接取來用。
所以我剛剛為什麼會建議Government Data在Open Data領域來定義自己的API for政府用,也就是定義為政府資料的交換,也就是政府功能的交換或Schema交換,自己定義好,就可以用政府自己。
我們已經談到Open Data要有interface,實際上是因為應用需求,所以需要interface,follow一個規格叫做API,而這個也可以用service,也不要follow 是用OAS 3來做,我覺得那個是權利,因為有他的考量,系統要達到什麼功能。
我後來看OAS 3這一件事的時候,我想的是一個組織要有這麼大的雄心壯志,把很多不同層次的東西拉在一起,的確是要有長久的運作,因此我想到回到一個本質是,在產業界訂這個東西的時候,原型就會分層次的,好比Internet也會分,從早期的OSI layer七層來分,router在第三層、第四層的這一層,但拉到這麼高的時候,就跑到第七層去了,API某種程度大家定義的東西都是在第六層、第七層談這一個論點。
因此十年前、二十年前也是一直在改,現在不行、哪裡不行就一直改,改到如果有現況可以用,就是一個版本出去就用了。
技術的規格當然可以談,但是在使用上,雖然這一個level的角度上看起來好用,可是為什麼會與實際運用gap這麼深,我想這是這幾年大家都在觀察的東西,並沒有一個規格提出來的時候,都認定一定行、一定不行,大家都是一面走都在調。
拉到OAS 3,其實溯及到一件事,在資料的部分,因為OAS在框架交換的部分定義這一個問題,早期前幾年因為在不同的W3C也定義相關的規格,也是拉高到這一層來談。
從應用端退回來就會有要它的tool,也會Reference spec,這是我初步想到的,先丟出來,不見得很有組織,或者是很深思熟慮,一個草稿的想法先丟出來,謝謝。
如果產業是用de-facto來談這一件事,事實上剛剛維志在談類似data qwerty的概念,也就是如果以data qwerty的sociability來看,也就是對它的要求是什麼,以及現在對spec的要求是什麼。
所以沒有一個top down東西可以運作,本來就是anarchy society,anarchy society也就是希望有很多東西放出來以後,讓大家去產生一個凝聚共識。
我相信像Swagger或者Open Knowledge組織都是因應這樣的推廣而起來,如果台灣的組織是鄉民,那要如何定義?
我剛剛講說為什麼從產業來看,Open Data可以帶出產業界的應用跟價值的話,而不是在所謂社會效益跟政府效益來看,那是Open Data的另外一個角度,如果Open Data轉到產業使用角度去看,從這裡來看的話,產業的運作本來就會為他任何要的spec有其組織運作,也就是可能會有一些workshop的討論空間。
第二,定義這個東西挑戰很大東西時,我們從產業的角度看,產業每一個東西都可以為了它定義所謂的technical spec,所謂要的東西,也就是Reference spec,所有的東西都會有它的運作機制,而運作機制就是來定義所謂Reference test,讓大家參考以後,大家會有很多的想法,會有intumentation。
因為PTX有他的想法,另外也有一套想法,如果沒有一套API可以容納所有的東西,現在OAS 3訂了一個框架的概念,但是一定會說有可能是Reference。
所以我傾向個人的立場,要從Common API配合Open Data,是不是在角色上稍微定義一下,也就是從Government Data來用,不要把範圍加大到任何產業的Data,只要符合Open的角度丟出來,而每個都符合的話,這樣以後的爭議是不是會更大?
因為API是資料交換及資料流通的依據,一定要有人使用,後續要有人去用,這才是存在的東西,否則這個是束之高閣,訂了也是白訂,不會有人用,以後就丟在那邊而已。
如果這個定義範圍這麼大,要變成有一個所謂的Open Data,也就是把Common API加Open Data變成是Open API,我覺得這個挑戰非常大。
因為Open Data本身的定義就是很擴的定義,可以定義成Open Government Data為或者是Open Data for什麼東西。
Common API在以往不同的產業只要開發軟體,本來就有一堆存在,所以有它的運作機制,因此for Open API是不是變成剛剛所談的OAS 3變成是Open API給Open Data,這一件事我覺得會有很多爭議。
呼應剛剛談的事情,討論Common API到Open API,我比較傾向Common API是本來就存在的東西,所謂的Web Data Schema的東西。
我是工研院的楊文新,雖然來自於法人,但是我的身分是用產業來看這一件事,前面談了一些,大概少了這一個部分。