7월, 2017의 게시물 표시

5. 임무 정리

빠밤 나의 임무는 OOXML의 스펙을 정리하여 저장 하는 것. 구체적으로 OOXML에서 제시한 XSD 포맷의 element와 attribute를 DB에 저장하는 것이다. XSD 포맷은 OfficeOpenXML-XMLSchema-Strict의 폴더안에 있다. 따라서 XSD 파일을 파싱하여 XSD 파일의 정보를 저장하면된다. 방법 1. 직접 XSD포맷을 text로 받아서 파싱 - 가능한 방법이나 최후의 보루로 생각 2. XSD 파서 라이브러리 이용 - 빠르고 쉽다 따라서 XSD 파서를 찾던 중 Eclipse의 라이브러리중에 있어서 그걸 이용하려 했으나 라이브러리 다운이 이상하게 안되서 실패. 그래서 박성준님 팀장님께서 저번에 해보셨다 하셔서 여쭤봄 현재상황은 박성준 팀장님께서 C++로 된 Code synthesis의 라이브러리를 보여주셔서 그걸로 할듯.

4. XSD란 무엇일까

드디어 돌고돌아 XSD로 왔다. XSD 정의 XML Schema Definition의미  문서구조 및 해당 문서가 포함할 수 있는 적법한 요소와 속성을 명시(DTD랑 동일한듯) 이유 DTD 단점 네임스페이스 지원 x XML 문법이 아님 제한된 타입만 지원 재사용과 확장성 XSD 특징 네임스페이스 XML문법 정수, 문자열 다양한 데이터 타입 문법 <? xml  version = "1.0"  encoding = "UTF-8"  ?> < xs : schema  xmlns:xs= "http://www.w3.org/2001/XMLSchema" -> XML 스키마 네임스페이스(버전??)      targetNamespace = "http://codingsam.com" -> 이게 진짜 XML 스키마 네임스페이스      xmlns = "http://codingsam.com" ??      elementFormDefault = "qualified" > ?? ... </ xs : schema > XSD 예제는 링크로 대체한다. 자료형  http://tcpschool.com/xml/xml_xsd_primitiveDatatype 타입(=데이터)  http://tcpschool.com/xml/xml_xsd_simpleType 속성 http://tcpschool.com/xml/xml_xsd_attribute 제한  http://tcpschool.com/xml/xml_xsd_facet 복합 타입 element 자식 element를 갖거나 텍스트, 빈요소를 갖는 애 예제 < xs : element   name = "physical" >     ...

3. DTD란 무엇일까

XSD를 알기 위해 XML에 대해서 공부했다. 이번엔 좀 더 세부적인 DTD를 봐보자. DTD 스키마(Schema) 마크업 언어를 만드는데 사용되는 다목적 마크업 언어?? 다른 언어를 정의하기 위해서는 언어의 필요한 요소와 속성을 파악(예를 들어서 문법같은 제약을 말하는 건가) 방법 DTD, XSD 문서 타입 정의(Documentation Type Definition) XML 문서의 구조 및 해당 문서의 요소와 속성을 정의 쓰이는 이유: 문서구조를 정의하여 새로운 문서 타입을 만들어. DTD 문법 문법 <! DOCTYPE   루트요소  DTD식별자 [ 선언1 선언2 ... ]> DTD 예제 <? xml  version = "1.0"  encoding = "UTF-8"  standalone = "yes"  ?> <! DOCTYPE   food  [ <! ELEMENT   food  (name,type,cost)> <! ELEMENT   name  (#PCDATA)> <! ELEMENT   type  (#PCDATA)> <! ELEMENT   cost  (#PCDATA)> ]> < food >     < name >상추</ name >     < type >야채</ type >     < cost >2000</ cost > </ food > 여기서 DOCTYPE food의 형태를 미리 정의해준다. name, type, cost 세개의 element가 있고 각각의 data는 정의 되지 않았다. 문법 넘어감 ...

2. XML에 대한 공부

이미지
리컬시브하게 난 위키로 계속 파고 들어갈 생각이다. 제길 XML 스키마라 검색하니 XSD문서가 나온다. 그럼 잘 정리된 블로그를 통해 알아보자. < element name = "xxx" >    < complexType >      < all >        < element name = "yyy" >        < element name = "zzz" >      </ sequence >    </ complexType > </ element > - XSD 예제( 출처: http://unipro.tistory.com/115 ) 일단 예제를 보면 기존에 Android layout에 쓰인 XML파일과 비슷하게 생겼다. 친근감이들고 내가 아는 것과 얼마나 다른지 확인해야겠다. 많은 정보들의 공통점은 1.  XML에 대한 설명 을 포함하고 있고 2. DTD 를 같이 언급한다. 따라서 이것에 대해서 하나씩 알아보자. 처음엔 XML! 본 문서는 TCPSCHOOL의  http://tcpschool.com/xml/intro  링크의 내용을 요약한 것이다. 1. XML 이름 EXtensible Markup Language의 약자 목적 데이터 저장 전달할 목적 데이터의 구조를 기술 특징 HTML과 비슷한 마크업 언어 HTML과 다르게 데이터를 저장하고 전달할 목적 XML태그는 사용자 지정 정의 XML 트리 HTML과 마찬가지로 트리형태의 계층구조 문서 첫줄엔 <xml> 태그를 이용하여 XML문서 명시 그 다...

1. XSD란 무엇인가- 서론

일단 공부의 시작은 위키피디아로 시작하자. 위키피디아 https://ko.wikipedia.org/wiki/XML_%EC%8A%A4%ED%82%A4%EB%A7%88_(W3C) 정의를 보면 XML Schema Definintion의 약자이고 W3C 표준으로 발표된 XML 스키마 언어라는 것이다.  1. 빠밤 XML 스키마란 무엇일까. XML을 단순한 데이터 포맷으로만 알고 있는데 스키마는 무엇일까 일단 넘어가기로 하고 다음 문서에서 찾아보도록하자. XSD는 WXS W3C XML Schema라고도 한다고 한다. 1.1 버전에서 XSD를 더 선호하는 이름으로 정했다고하니 간단하게 넘어가자. 또다른 설명으로는 다른 모든 XML 스키마 언어처럼, XSD는 XML 문서가 그 스키마에 대하여 '유효' 한 것으로 여겨지기 위해 반드시 지켜야하는 규칙들의 집합을 표현하는데 쓰인다고 한다. 솔직히 무슨 말인지 모르겠어서 위키를 보면서 작석했다. 2 .   여기서 중요한 것은 XML 문서가 스키마에 대하여 유효성을 검사한다는 의미이다 . 약간 XML의 문법을 정하는 것인가 그런 느낌도 나고 컴파일러 같은 역할을 하는 것인지 모르겠다. 나중에 알아보도록하자. 마지막 설명으로 다른 스키마 언어와 다른점을 제시해준다. XSD는 문서의 유효성 검증을 통해 특정 자료형들에 종속적인 정보들의 묶음을 만들어 내자는 의도로 설계되었다고한다. 레알 이런 문장은 기술을 위한 아는사람을 위한 문장인 것 같다. 3. 일단 중요한 것은 종속적인 정보를 이용하자는 것인데 어떤 느낌의 종속적인 것인지 모르겠다. 나중에 알아보자. 그뒤로 구체적인 내용이 나오지만 개요에서 나온 질문들을 모른 상태로 아래내용도 이해할 수 없을 것이다. 일단 첫 질문인 XML 스키마에 대해서 다음 문서에서 알아보도록 하자.

블로그를 시작한 계기

티맥스 입사후 첫 업무인 OS 설치와 Office 개발환경을 마무리 하였다. 이제 혼자 알아서 해야할 업무가 생겼다. XSD와 OOXML에 대해서 공부하라는 것이다. 같이 공부할 사람이 없어서 블로그를 만든다. 앞으로 공부할 내용이 생기면 여기에 올려서 같이 공부하는 느낌으로 하고싶다. 이것이 얼마나 오래 유지되고 계속 업데이트가 될 지 모르겠지만 이것은 나의 커리어의 시작이고 나의 진지함의 시작이다. 화이팅.