기존 네이버/구글/아마존 등 폐쇄적 태도이었으나 아마존의 시작으로 본인들의 정보를 외부로 공개하면서 생태계를 만들고 마케팅 사업이 가능해짐
정부에서 만들경우 다양한 유저의 니즈를 충족시키기 어려움, 정부도 다양한 아이디어를 가진 앱개발자들이 사용할 수 있도록 정보를 외부로 공개 --> WEB2.0
정부는 하나의 서버 : 공공 Data 포털 data.go.kr
민간, 협회 등은 각각의 서버에서 제공
정보는 하나가 아님, 문자열로 제공해야 하는데 데이터의 구분이 어려움 (ex. 약국이름, 주소, 전화번호 등)
Open API 제공 기관에서 데이터를 줄때 각 값들을 구분하기 위한 3가지 데이터 표기형식 (Representation of Resource)
--> ex. 파일형식 "SAM20SEOUL"
(.txt)
CSV (Comma Seperate Value) : 콤마로 데이터값 구분, 데이터의 양이 적음 "SAM,20,SEOUL"
(.csv)
BUT, 모든 정보가 "이름,나이,주소"
의 유형이 아님 --> 정보의 유형은 모두 다름!
XML (eXtensiable Markup Language): 태그문 이용 <name>SAM</NAME>
<age>20</age>
<address>SEOUL</address>
(.xml)
정보의 구분과 더불어 태그 안의 정보가 어떤 정보인지 알 수 있음
개발자는 xml데이터를 분석(parse)해서 유저에게 제공 (xml parsing)
BUT, 양쪽으로 태그가 붙으면서 불필요한 정보가 많음
JSON (Java Script Object Notation) : 자바 스크립트의 표기법을 따온 방법 {"name":SAM, "age":20, "address":SEOUL}
(.json)
기본 URL(http://***) + path (***/***/***) + 요청변수 : ?시작 &구분 (?lineno=1&statname=왕십리&...)
(0) START_DOCUMENT : 문서의 시작
(1) END_DOCUMENT : 문서의 끝
(2) START_TAG : 태그의 시작 <***>
(3) END_TAG : 태그의 끝 </***>
(4) TEXT : 태그사이의 글자