KR100910061B1 - 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그방법 - Google Patents

디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그방법 Download PDF

Info

Publication number
KR100910061B1
KR100910061B1 KR1020070096053A KR20070096053A KR100910061B1 KR 100910061 B1 KR100910061 B1 KR 100910061B1 KR 1020070096053 A KR1020070096053 A KR 1020070096053A KR 20070096053 A KR20070096053 A KR 20070096053A KR 100910061 B1 KR100910061 B1 KR 100910061B1
Authority
KR
South Korea
Prior art keywords
schema
document
finite state
schema document
metadata
Prior art date
Application number
KR1020070096053A
Other languages
English (en)
Other versions
KR20080028293A (ko
Inventor
홍진우
박민식
이한규
김민제
김혁만
염지현
양승준
Original Assignee
한국전자통신연구원
국민대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원, 국민대학교산학협력단 filed Critical 한국전자통신연구원
Publication of KR20080028293A publication Critical patent/KR20080028293A/ko
Application granted granted Critical
Publication of KR100910061B1 publication Critical patent/KR100910061B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]

Abstract

본 발명은 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그 방법에 관한 것으로, 디지털 방송환경에서 XML 스키마 기반의 메타데이터를 방송 프로그램과 동기화시켜 전송시에 이진 형식을 이용하여 XML 인스턴스 문서를 효율적으로 압축 및 복원하기 위한, 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그 방법을 제공하고자 한다.
이를 위하여, 본 발명은 메타데이터 부호화 장치에 있어서, 제1 스키마 문서를 컴파일하여 제2 스키마 문서를 생성하고, 상기 제2 스키마 문서를 이용하여 상기 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하기 위한 스키마 관리 수단; 및 상기 제1 스키마 문서에 존재하는 함수들과 변수들을 이용하여 작성된 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용해 이진화 청크 객체로 변환하여, 이진 파일로 출력하기 위한 인스턴스 관리수단을 포함한다.
메타데이터, 부호화, 복호화, XML 스키마 문서, XML 인스턴스 문서

Description

디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그 방법{Metadata encoding apparatus and method for digital broadcasting and metadata decoding apparatus and method}
본 발명은 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 디지털 방송환경에서 XML 스키마 기반의 메타데이터를 방송 프로그램과 동기화시켜 전송시에 이진 형식을 이용하여 XML 인스턴스 문서를 효율적으로 압축 및 복원하기 위한, 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그 방법에 관한 것이다.
본 발명은 정보통신부 및 정보통신연구진흥원의 IT신성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2005-S-403-02, 과제명: 지능형 통합정보 방송(SmaR TV) 기술개발].
최근 들어, 확장 생성 언어(eXtensible Markup Language: XML, 이하 "XML"이라 함)는 인터넷뿐만 아니라 방송 환경에서도 데이터 전송 및 기술(description)의 표준으로 부각되고 있다.
XML 인스턴스 문서(XML instance document)는 텍스트 형식으로서, 데이터를 구별하여 표현하기 위해 태그가 사용된다. 특히, XML 인스턴스 문서는 일반적인 텍스트 형식의 파일에 비해 데이터 용량이 매우 크기 때문에, 디지털 방송환경하에서 그대로 전송되는 것이 비효율적이다. 이는 XML 인스턴스 문서가 비정규적인 구조와 장황함을 지니고, 디지털 방송환경이 제한적인 대역폭을 가지기 때문이다.
이로 인해, XML 인스턴스 문서는 텍스트 형식을 이진(binary) 형식으로 부호화하는 방식 및 이를 복호화하는 방식이 필요하다.
종래의 텍스트 파일 압축방식으로는 "zlib를 이용한 gzip 압축 방식"이 사용되고 있다. 텍스트 파일 압축방식은 XML 인스턴스 문서에 포함된 태그들도 일반 텍스트로 처리하기 때문에, XML 인스턴스 문서의 압축률을 높이기 위한 별도의 방식이 필요하다. 이에 따라, XML 인스턴스 문서의 압축 방식에 관한 여러 연구가 진행되어 왔다.
종래의 XML 인스턴스 문서의 압축 방식은 스키마(schema) 문서를 이용하지 않는 방식과 스키마 문서를 이용하는 방식으로 구분된다.
스키마 문서를 이용하지 않는 방식에서는 "XMill 방식"이 대표적인데, XMill 방식에서는 데이터 값을 태그로부터 구분하여, 의미상 관련 있는 데이터 값을 컨테이너별로 분류한 후, 각 컨테이너에 최적화된 메타데이타(metadata) 압축 방식을 적용한다. 이때, 태그는 사전(dictionary) 방식을 통해 압축한다. 마지막으로, 압축한 태그와 분류한 데이터 값은 zlib로 압축된다. 또한, XMill 방식은 평균적으로 80% 이상의 압축율을 보이는데, "zlib를 이용한 gzip 압축 방식"보다 XML 인스턴스 문서의 압축에 효율적으로 알려져 있다.
반면, 스키마 문서를 이용하는 방식은 XML 인스턴스 문서를 통해 시맨틱(semantic) 구조를 정확하게 알 수 있기 때문에, 더 효율적인 압축이 가능하다. 또한, 스키마 문서를 이용하는 방식은 스키마 문서의 구조를 이용하여 XML 인스턴스 문서를 부분적으로 압축하거나, 압축된 XML 인스턴스 문서에 대한 질의 혹은 부분적 수정이 가능할 수 있다.
여기서, 스키마 문서는 문서 타입 정의(Document Type Definition: DTD, 이하, "DTD"라 함) 또는 XML 스키마로 기술하므로, 스키마 문서를 어떤 언어로 기술하느냐에 따라 다른 방식이 존재한다.
먼저, DTD로 기술된 스키마 문서에 따라 작성된 인스턴스 문서를 압축하는 방식은 "XGrind 방식"이 대표적인데, XGrind 방식은 DTD로 기술된 스키마를 통해 데이터 값을 허프만(Huffman) 방식이나 사전(dictionary) 방식으로 압축하며, 태그는 사전(dictionary) 방식으로 압축한다.
또한, XML 스키마로 기술된 스키마 문서에 따라 작성된 인스턴스 문서를 압축하는 방식은 "BiM(Binary format for MPEG-7) 방식"이 대표적인데, BiM 방식은 MPEG 그룹에서 MPEG-7 국제 표준의 일부로 표준화한 압축 방식이다. 또한, BiM 방식은 원래 XML 스키마로 기술된 MPEG-7 스키마 문서에 따라 작성된 XML 인스턴스 문서를 압축하기 위한 것이었으나, 표준화 제정과정에서 MPEG-7 스키마 문서를 포함한 범용 압축 방식으로 확장되었다. 또한, BiM 방식에서는 태그들을 스키마 문서 를 이용하여 미리 구성한 오토마타(automata)를 이용해 압축하며, 데이터는 zlib로 압축한다.
XML 스키마는 DTD보다 정교하게 스키마 문서의 구조를 기술할 수 있기 때문에, 최근 들어 많은 기업이나 국제 기구에서 그 사용이 확산되고 있다. 특히, 멀티미디어 메타데이타 표준인 MPEG-7/21/101과 개인형 데이터방송 표준인 TV-Anytime의 스키마 문서가 XML 스키마로 기술될 뿐만 아니라, 이들의 메타데이타 압축 방식으로 BiM 방식이 표준으로 채택되면서 그 중요성이 더욱 커지고 있다.
따라서, 최근 들어 부각되고 있는 BiM 방식을 이용하여 XML 인스턴스 문서를 부호화 및 복호화하는 방식은 구체적으로 구현될 필요가 있다.
본 발명은 상기와 같은 문제점을 해결하고 상기와 같은 요구에 부응하기 위하여 제안된 것으로, 디지털 방송환경에서 XML 스키마 기반의 메타데이터를 방송 프로그램과 동기화시켜 전송시에 이진 형식을 이용하여 XML 인스턴스 문서를 효율적으로 압축 및 복원하기 위한, 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그 방법을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 더욱 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명은, 메타데이터 부호화 장치에 있어서, 제1 스키마 문서를 컴파일하여 제2 스키마 문서를 생성하고, 상기 제2 스키마 문서를 이용하여 상기 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하기 위한 스키마 관리 수단; 및 상기 제1 스키마 문서에 존재하는 함수들과 변수들을 이용하여 작성된 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용해 이진화 청크 객체로 변환하여, 이진 파일로 출력하기 위한 인스턴스 관리수단을 포함한다.
또한, 본 발명은 메타데이터 복호화 장치에 있어서, 제1 스키마 문서를 컴파일하여 생성된 제2 스키마 문서를 이용하여, 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하기 위한 스키마 관리 수단; 및 상기 유한 상태 오토마타(FSA)를 이용해 부호화 장치로부터 전달된 이진 파일을 복호화하여 인스턴스 문서로 출력하기 위한 이진 관리 수단을 포함한다.
또한, 본 발명은 메타데이터 부호화 방법에 있어서, 제1 스키마 문서를 컴파일하여 제2 스키마 문서를 생성하고, 상기 제2 스키마 문서를 이용하여 상기 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하는 유한 상태 오토마타 생성·관리 단계; 및 상기 제1 스키마 문서에 존재하는 함수들과 변수들을 이용하여 작성된 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용해 이진 청 크 객체로 변환하는 변환하고, 상기 이진 청크 객체를 이진 파일로 출력하는 출력 단계를 포함한다.
또한, 본 발명은 메타데이터 복호화 방법에 있어서, 제1 스키마 문서를 컴파일하여 생성된 제2 스키마 문서를 이용하여, 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하는 유한 상태 오토마타 생성·관리 단계; 및 상기 유한 상태 오토마타(FSA)를 이용해 부호화 장치로부터 전달된 이진 파일을 복호화하여 인스턴스 문서로 출력하는 출력 단계를 포함한다.
상기한 바와 같은 본 발명은, 시청자에게 일방적으로 정보를 전달하는 기존 방송 서비스에서 벗어나 메타데이터를 이용하여 시청자 개개인의 기호에 맞는 다양한 부가 서비스 및 양방향 서비스를 제공할 수 있는 효과가 있다.
또한, 본 발명은 대역폭이 좁은 방송환경에서 방송프로그램과 동기화시켜 송출하는 디지털 방송을 위한 메타데이터를 효율적으로 압축 및 복원할 수 있는 효과가 있다.
또한, 본 발명은 개인형 데이터방송 송출 시스템 및 수신 단말 시스템 구축에 활용할 수 있는 효과가 있다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
본 발명을 설명하기에 앞서, 본 발명의 XML 인스턴스 문서는 XML 스키마로 기술된 문서 즉, XML 스키마 문서에 따라 작성된다.
도 1은 본 발명에 따른 디지털 방송을 위한 메타데이터 부호화 장치에 대한 일실시예 구성도이다.
도 1에 도시된 바와 같이, 본 발명에 따른 디지털 방송을 위한 메타데이터 부호화 장치(이하 "부호화 장치"라 함, 100)는, 스키마 유효성 검사부(110), 스키마 관리부(120), 인스턴스 관리부(130)를 포함한다. 부호화 장치(100)는 대역폭이 좁은 방송환경에서 방송프로그램과 동기화시켜 송출하는 '디지털 방송을 위한 메타데이터'를 효율적으로 압축한다.
스키마 유효성 검사부(110)는 외부로부터 입력된 'XML 스키마 문서' 및 'XML 인스턴스 문서'의 유효성(validity)을 검사하여 부호화할지를 결정한다. 여기서, 스키마 유효성 검사부(110)는 통상의 파서(parser)를 이용하여 유효성을 검사할 수 있다. 이때, 스키마 유효성 검사부(110)는 부호화를 결정하면, XML 스키마 문서를 스키마 관리부(120)로 입력하고 XML 인스턴스 문서를 인스턴스 관리부(130)로 입력한다.
스키마 관리부(120)는 스키마 유효성 검사부(110)로부터 입력된 XML 스키마 문서를 스키마 컴파일러부(121) 및 유한 상태 오토마타 생성부(122)를 통해 처리한다.
구체적으로, 스키마 컴파일러부(121)는 스키마 유효성 검사부(110)로부터 입력된 XML 스키마 문서를 'raw 파일'로 컴파일하여 유한 상태 오토마타 생성부(122)로 입력한다. 즉, 스키마 컴파일러부(121)는 스키마 유효성 검사부(110)로부터 입력된 XML 스키마 문서를 SAX(Simple API for XML) 파서를 이용하여 파싱한다. 이때, 스키마 컴파일러부(121)는 XML 스키마 문서의 정의내용을 내부 자료 구조로 재정의하고, 상기 XML 스키마 문서의 각 컴포넌트를 기호화하여 간소화시킨 XML 스키마 문서 즉, 'raw 파일'을 생성하여 유한 상태 오토마타 생성부(122)로 입력한다.
유한 상태 오토마타 생성부(122)는 스키마 컴파일러부(121)에 의해 컴파일된 'raw 파일'을 MPEG-7 표준에 따라 구조화된 유한 상태 오토마타(Finite State Automata: FSA)로 생성한다.
한편, 인스턴스 관리부(130)는 스키마 유효성 검사부(110)로부터 입력된 XML 인스턴스 문서를 인스턴스 컴파일러부(131) 및 청크 기록부(132)를 통해 처리한다.
구체적으로, 인스턴스 컴파일러(131)는 유한 상태 오토마타 생성부(122)에 의해 생성된 유한 상태 오토마타를 이용하여, 스키마 유효성 검사부(110)로부터 입 력된 XML 인스턴스 문서를 BiM(binary format MPEG-7) 형식으로 부호화된 이진화 청크(binary chunk) 객체로 변환한다.
청크 기록부(132)는 인스턴스 컴파일러(131)에 의해 변환된 이진화 청크를 모아 이진 파일로 출력한다.
바람직하게, 부호화 장치(100)는 상기와 같이 스키마 관리부(120) 및 인스턴스 관리부(130)에 의해 수행되는 모든 프로세스 및 중간단계의 데이터를 저장한다.
이하, 도 1을 참조하여 부호화 장치(100)에서 이루어지는 메타데이터의 부호화 방법에 대하여 간략히 설명한다.
먼저, 부호화 장치(100)는 외부로부터 입력된 XML 스키마 문서 및 XML 인스턴스 문서에 대한 유효성을 검사한다.
이후, 부호화 장치(100)는 XML 스키마 문서의 기호화 및 간소화를 통해 'raw 파일'을 생성한다. 이때, 부호화 장치(100)는 'raw 파일'을 이용하여 유한 상태 오토마타를 생성한다.
그런 후, 부호화 장치(100)는 유한 상태 오토마타를 이용하여 XML 인스턴스 문서를 이진 청크 객체 형태로 변환한다. 이를 통해, 부호화 장치(100)는 이진 청크 객체들을 이진 파일 형태로 출력한다.
도 2는 본 발명에 따른 디지털 방송을 위한 메타데이터 복호화 장치에 대한 일실시예 구성도이다.
도 2에 도시된 바와 같이, 본 발명에 따른 디지털 방송을 위한 메타데이터 복호화 장치(이하 "복호화 장치"라 함, 200)는, 스키마 관리부(210), 이진 관리부(220)를 포함한다. 복호화 장치(200)는 방송프로그램과 동기화되어 수신된 '디지털 방송을 위한 메타데이터'를 효율적으로 복원한다.
스키마 관리부(210)는 도 2에서 전술한 스키마 관리부(120)와 동일한 구성인 스키마 컴파일러부(211) 및 유한 상태 오토마타 생성부(212)를 포함한다.
구체적으로, 스키마 컴파일러부(211)는 부호화 장치(100)의 스키마 컴파일러부(121)와 마찬가지로, 외부로부터 입력된 XML 스키마 문서를 'raw 파일'로 컴파일하여 유한 상태 오토마타 생성부(212)로 입력한다.
여기서, 복호화 장치(200)는 중간단계 생성물인 컴파일된 XML 스키마 문서 즉, 'raw 파일'이 부호화 장치(100)로부터 전달되는 경우에(230), 외부로부터 입력된 XML 스키마 문서를 'raw 파일'로 변환하는 컴파일 과정을 생략하고, 부호화 장치(100)로부터 전달된 'raw 파일'을 유한 상태 오토마타 생성부(212)로 입력한다.
유한 상태 오토마타 생성부(212)는 스키마 컴파일러부(211)에 의해 컴파일된 'raw 파일' 또는 부호화 장치(100)로부터 전달된 'raw 파일'을 유한 상태 오토마타로 생성한다.
한편, 이진 관리부(220)는 이진 컴파일러부(221) 및 인스턴스 기록부(222)를 포함한다.
구체적으로, 이진 컴파일러부(221)는 유한 상태 오토마타 생성부(212)에 의해 생성된 유한 상태 오토마타를 이용하여, 부호화 장치(100)로부터 전달된 이진 파일을 복호화된 DOM(Document Object Model) 트리 구조로 재구성(컴파일)하여 인 스턴스 기록부(222)로 입력한다.
인스턴스 기록부(211)는 이진 컴파일러부(221)로부터 전달된 DOM 트리 구조를 XML 인스턴스 문서로 출력하여 종료한다.
바람직하게, 상기 복호화 장치(200)는 스키마 관리부(210) 및 이진 관리부(220)에 의해 수행되는 모든 프로세스 및 중간단계의 데이터를 저장한다.
이하, 도 2를 참조하여 복호화 장치(200)에서 이루어지는 메타데이터의 복호화 방법에 대하여 간략히 설명한다.
먼저, 복호화 장치(200)는 부호화 장치(100)로부터 전달된 'raw 파일'이 있는지를 확인한다. 이때, 상기 'raw 파일'이 없으면, 복호화 장치(200)는 XML 스키마 문서의 기호화 및 간소화를 통해 'raw 파일' 생성한다. 반면, 상기 'raw 파일'이 있으면, 복호화 장치(200)는 부호화 장치(100)로부터 전달된 'raw 파일'을 그대로 이용한다.
이후, 복호화 장치(200)는 'raw 파일'을 이용하여 유한 상태 오토마타를 생성한다.
그리고, 복호화 장치(200)는 유한 상태 오토마타를 이용하여 이진 파일을 복호화하고, 그에 따라 DOM 트리로 재구성한다. 이때, 복호화 장치(200)는 DOM 트리 구조를 복호화된 XML 인스턴스 문서로 출력한다.
도 3은 본 발명에 따른 스키마 컴파일러부(121, 211)에 의해 이용되는 클래스 계층에 대한 일실시예 구조도이다. 전술한 바와 같이, 스키마 컴파일러부(121, 211)는 XML 스키마 문서를 내부 자료 구조로 재정의하고 'raw 파일'을 생성한다.
도 3에 도시된 바와 같이, 스키마 컴파일러부(121, 211)가 XML 스키마 문서를 내부 자료 구조로 표현하기 위해 설계한 클래스 계층은, XML 스키마의 특징에 따라 최상위 클래스로 TypeDefinition(301)를 정의한다.
즉, TypeDefinition(301)는 하위 클래스로 ComplexTypeDefinition(302) 및 SimpleTypeDefinition(303)를 분류하여 정의한다.
특히, ComplexTypeDefinition(302)은 ComplexContent 타입정의 방식을 이용하여 확장하는 ComplexContentTypeDefinition(304)과, SimpleContent 타입정의 방식을 이용하여 확장하는 SimpleContentTypeDefinition(305)을 구분하여 정의한다. 이외에, XML 스키마의 요소인 "sequence", "choice", "all"과 같은 컴포지터와 "group" 요소인 지명 모델 그룹을 위한 클래스(306)도 정의한다.
여기서, ComplexTypeDefinition(302)는 "generateFSA()" 메소드를 호출하여, "부호화 FSA(CompressionFiniteStateAutomata)"(302A) 또는 "복호화 FSA(DecompressionFiniteStateAutomata)"(302B)를 생성한다.
예를 들어, 도 3의 클래스들 중 하나인 TypeDefinition(301) 클래스는 하기 [표 1]과 같이 정의되고, 상기 TypeDefinition(301) 클래스의 하위 클래스인 ComplexTypeDefinition(302) 클래스는 하기 [표 2]와 같이 정의된다.
class TypeDefinition { const XMLCh *name; /* attribute declaration */ bool isAnonymous; set<TypeDefinition *> subtypes; TypeDefinition *supertype; const XMLCh* getName(); /* method declaration */ short getDerivationMethod(); void setAnonymous(bool); void getAnonymous(); bool hasSupertype(); /* methods for processing supretype */ void setSupertype(const XMLCh *, short); TypeDefinition *getSupertype(); bool hasSubtypes(bool); /* methods for processing subtypes */ void addDirectSubtype(TypeDefinition *); int getNumberOfSubtypes(bool); int getSubtypeIndex(const XMLCh *, bool); SubtypesIterator* getSubtypesIterator(bool); TypeDefinition* getSubtype(int, bool); void realizeInheritance(TypeDefinitions *); /* method for type realization */ ... }
상기 [표 1]에서 TypeDefinition(301) 클래스가 기본적으로 전역(global)으로 정의된 타입인 경우에는, 타입 이름을 설정하고 "isAnonymous" 변수를 "false"로 설정한다. 이외에, 상기 [표 1]에서 TypeDefinition(301) 클래스가 엘리먼트(element)에 바인딩되어 익명으로 정의된 타입인 경우에는, "isAnonymous" 변수만 "true"로 설정한다.
한편, 상기 [표 1]에서 TypeDefinition(301) 클래스가 SimpleContent 또는 ComplexContent 요소를 이용하여 상속받은 복합타입(complexType)이거나 "restriction", "list", "union" 요소를 사용하여 상속받은 단순타입(simpleType)일 경우에는, "realizeInheritance()" 메소드(method)를 이용하여 현재 타입을 기준으로 상위 타입과 하위 타입들 간의 계층 구조를 정의한다. 즉, 상기 [표 1]에서 상위 타입의 이름으로 타입정의를 추출하여 "supertype" 변수에 설정하고, "addDirectSubtype()" 메소드를 사용하여 "supertype" 변수의 하위 타입에 현재 타입을 추가한다.
class ComplexTypeDefinition : public TypeDefinition { bool isAbstract; /* attribute declaration */ bool isMixed; OccurrenceNode *attributes; OccurrenceNode *content; CompressionFSA *compressionAttributesFSA; DecompressionFSA *decompressionAttributesFSA; CompressionFSA *compressionContentFSA; DecompressionFSA *decompressionAttributesFSA; bool hasAttributes(); /* method declaration */ void setAbstract(bool); bool getAbstract(); void generateFSA(); void setMixed(bool); void getMixed(); void generateFSA(); FiniteStateAutomata* generateAttributesFSA(); FiniteStateAutomata* generateContentModelFSA(); void realize(TypeDefinitions *); ... }
전술한 바와 같이, 상기 [표 2]의 ComplexTypeDefinition(302) 클래스는 복합 타입의 정의를 나타낸다.
특히, 복합 타입이 추상 타입으로 정의되어 있을 경우(즉, "abstract" 속성이 "true"일 경우)에는, XML 인스턴스 문서에서 엘리먼트의 바인딩 타입으로 쓰일 수 없고, "xsiType" 속성을 이용하여 하위 타입으로 대체한다. 이때, 상기 ComplexTypeDefinition(302) 클래스에서는 "isAbstract" 변수를 "true"로 설정한다. 또한, "mixed" 속성을 이용할 경우에는 "mixed" 변수 값을 "true"로 설정한다.
이후에, 후술할 유한 상태 오토마타 생성부(122, 212)는 "generateFSA()" 메소드를 이용하여, 현재 타입에서 정의한 어트리뷰트(attribute)와 내용 모델의 유한 상태 오토마타를 구성한다. 이를 위해, 상기 유한 상태 오토마타 생성부(122, 212)는 "generateAttributeFSA()" 메소드 및 "generateContentFSA()" 메소드를 호출한다.
이와 같이, 본 발명에서는 스키마 컴파일러부(121, 211)가 내부적으로 사용하는 자료 구조를 갖게 함으로서, 이후에 부호화 및 복호화 과정에서 스키마 문서의 정의 내용을 얻기 위해 다시 파싱(parsing)하지 않고 효율적으로 스키마 문서의 구조에 접근할 수 있도록 한다.
한편, 스키마 컴파일러부(121, 211)는 도 3에서 정의한 계층구조를 이용하여, 외부로부터 입력된 XML 스키마 문서를 단순화시킨 'raw 파일'을 생성한다. 예를 들어, 스키마 컴파일러부(121, 211)는 하기 [표 3]과 같은 XML 스키마 문서를 단순화시킨 하기 [표 4]와 같은 'raw 파일'을 생성한다.
<?xml version="1.0" encoding="UTF-8"?> <schema targetNamespace="urn:mpeg:mpeg7:schema:2001" xmlns=http://www.w3.org/2001/XMLSchema xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001" elementFormDefault="qualified" attributeFormDefault="unqualified"> <complexType name="Mpeg7Type" abstract="true"> <sequence> <element name="DescriptionMetadata" type="mpeg7:DescriptionMetadataType" minOccurs="0"/> </sequence> <attributeGroup ref="mpeg7:timePropertyGrp"/> <attributeGroup ref="mpeg7:mediaTimePropertyGrp"/> </complexType> … </schema>
(NAMESPACES "http://www.w3.org/2001/XMLSchema" "urn:mpeg:mpeg7:schema:2001") (PROPERTIES 2 QE UQA) {2"Mpeg7Type} (ABSTRACT) (ATTR 0"timeUnit[0,1]{2"durationType} 0"mediaTimeUnit[0,1]{2"mediaDurationType} 0"mediaTimeBase[0,1]{2"xPathRefType} 0"timeBase[0,1]{2"xPathRefType}) (SEQ[1,1] (SEQ[1,1] 2"DescriptionMetadata[0,1]{2"DescriptionMetadataType} ))| …
상기 [표 3]의 XML 스키마 문서는 "schema" 요소에서 2개의 네임스페이스(namespace)가 기술된다. 여기서, XML 인스턴스 문서에 나타나는 엘리먼트는 네임스페이스로 한정하고(qualified), 어트리뷰트는 한정하지 않도록(unqualified) 규정한다.
이와 같이, 상기 [표 3]에서 "schema" 요소의 네임스페이스에 대한 정의는 상기 [표 4]의 'raw 파일'에서 "(NAMESPACES"http://www.w3.org/2001/XMLSchema" "urn:mpeg:mpeg7:schema:2001")"와 같이 변환된다. 즉, 네임스페이스는 "NAMESPACES" 키워드를 나타내고 알파벳 순서대로 네임스페이스 URI(Uniform Resource Identifier)를 출력한다.
또한, 상기 [표 3]에서 "schema" 요소의 속성(property)에 대한 정의는 상기 [표 4]의 'raw 파일'에서 "(PROPERTIES 2 QE UQA)"와 같이 변환된다. 즉, 속성은 "PROPERTIES" 키워드를 나타내고 속성의 개수 및 해당 값을 표시한다. 여기서, "QE"는 "elementFormDefault"가 한정된 것(qualified)을 의미하고, "UQA"는 "attributeFormDefault"가 한정되지 않은 것(unqualified)을 의미한다.
한편, 스키마 컴파일러부(121, 211)는 상기 [표 3]의 XML 스키마 문서의 "schema" 요소 내부에 정의된 XML 스키마 컴포넌트들을 하기와 같은 간단한 규칙에 따라 상기 [표 4]와 같이 'raw 파일'로 출력한다.
즉, 엘리먼트는 "#namespace"nameOfElement" 형식으로 표현하고, 복합타입은 "{#namespace"nameOfComplexType}" 형식으로 표현하고, 단순타입은 "<#namespace"nameOfSimpleType>" 형식으로 표현한다.
예를 들어, 상기 [표 3]의 XML 스키마 문서에서 "MPEG7Type"은 복합타입으로 두 번째 네임스페이스인 "urn:mpeg:mpeg7:schema:2001"에서 정의된다. 이에, 상기 복합 타입 "MPEG7Type"을 'raw 파일'의 "{2"MPEG7Type}"으로 나타낸다.
또한, XML 스키마 문서에서 복합타입의 속성인 "abstract" 및 "mixed"는 'raw 파일'에서 "ABSTRACT" 및 "MIXED"와 같은 키워드를 이용하여 각각 나타낸다.
또한, XML 스키마 문서에서 컴포지터인 "sequence", "choice", "all"는 'raw 파일'에서 "SEQ", "CHO", "ALL"와 같은 키워드를 이용하여 각각 나타낸다.
또한, XML 스키마 문서에서 반복횟수인 "minOccurs" 및 "maxOccurs"는 'raw 파일'에서"[minOccurs, maxOccurs]" 형식으로 나타낸다.
이와 같이, 스키마 컴파일러부(121, 211)는 복잡한 XML 스키마 문서를 단순한 형태인 'raw 파일'로 변환함으로써, 메모리를 많이 이용하는 XML 스키마 문서의 파싱 과정을 'raw 파일'을 읽는 과정으로 대체한다. 이를 통해, 스키마 컴파일러부(121, 211)는 메모리 관리 측면에서 이득을 얻을 수 있다.
도 4는 본 발명에 따른 유한 상태 오토마타 생성부에 의해 이용되는 클래스 계층에 대한 일실시예 구조도이다. 전술한 바와 같이, 유한 상태 오토마타 생성부(122, 212)는 'raw 파일'을 이용하여 유한 상태 오토마타를 생성한다.
유한 상태 오토마타 생성부(122, 212)는 MPEG-7 규격에 따른 유한 상태 오토마타의 구성 동작을 도 4와 같은 클래스 계층구조로 구현한다.
유한 상태 오토마타는 도 4의 FiniteStateAutomata(403) 클래스에 대응된다. 유한 상태 오토마타는 기능에 따라 "부호화 FSA" 및 "복호화 FSA"로 구분되는데, 각각 CompressionFSA(401) 클래스 및 DecompressionFSA(402) 클래스에 대응된다.
또한, 유한 상태 오토마타의 구성요소인 상태(state)와 전이(transition)는 각각 State(404) 클래스 및 Transition(405) 클래스로 구현되며, 상태와 전이에 관련된 데이터들(406)은 각각 연결 리스트(linked list) 구조로 표현된다.
예를 들어, FiniteStateAutomata(403) 클래스에 대한 정의는 하기 [표 5]와 같다.
class FiniteStateAutomata { StateLinkedList *states; /* attribute declaration */ void addState(State *); /* method declaration */ void merge(FiniteStateAutomata *); void merge(State *, State *); State* getFirstStartState(); State* getFirstFinalState(); StateLinkedList* getStartState(); StateLinkedList* getFinalState(); ... }
FiniteStateAutomata(403) 객체는 도 3의 ComplexTypeDefinition(302) 객체에 의해 "generateFSA()" 메소드가 호출됨에 따라 생성된다(전술한 도 3의 302A, 302B).
FiniteStateAutomata(403) 클래스는 상태 객체를 생성하여 "StateNodeLinkedList(407)"에 추가한다. 이때, FiniteStateAutomata(403) 클래스는 상태와 상태를 전이로 연결하거나, 다른 임의의 유한 상태 오토마타의 상태들과 현재 상태들을 병합한다(408).
이와 같이, FiniteStateAutomata(403) 클래스는 상태 및 전이를 생성 및 병합하여, XML 스키마 문서에 정의된 스키마 요소들을 'raw 파일'에 표현된 순서에 따라 반복적으로 수행하면서 유한 상태 오토마타를 구성한다.
도 4와 같은 유한 상태 오토마타 클래스 계층구조를 이용하여, 부호화시에는 XML 인스턴스 문서에 명시된 엘리먼트의 바인딩 타입의 타입 상태를 이동하면서 이동 경로 상에 있는 전이의 값을 이진 스트링으로 변환한다. 반면, 복호화시에는 이진 스트링의 값으로 상태를 이동하고 해당 타입 상태의 정의를 도출하여 DOM 트리를 재구성한다.
도 5는 본 발명에 따른 인스턴스 관리부(130) 및 이진 관리부(220)에 의해 이용되는 클래스 계층에 대한 일실시예 구조도이다.
도 5에 도시된 바와 같이, 본 발명이 적용되는 인스턴스 관리부(130) 및 이진 관리부(220)에 의해 이용되는 클래스 계층구조는, TypeEncoder(501) 클래스를 기반으로 타입 특성에 따라 SimpleTypeInstance(502) 및 ComplexTypeInstance(503) 클래스로 구분된다.
특히, ComplexTypeInstance(503) 클래스는 정의 방식에 따라 SimpleContentTypeInstance(504) 및 ComplexContentTypeInstance(505) 클래스로 세분화되어 정의된다.
예를 들어, 도 5의 클래스 중 TypeInstance(506) 클래스 및 ComplexTypeInstance(503) 클래스에 대한 정의는 하기 [표 6]과 같이 나타낸다.
class TypeInstance : public TypeEncoder { void encodeTypeInfo(); /* method declaration */ void decodeTypeInfo(); ... } class ComplexTypeInstance : public TypeInstance { void startEncoding(); /* methods for encoding */ TypeEncoder* encodeContent(const XMLCh *); TypeEncoder* encodeAttribute(const XMLCh *); void endEncoding(); void endContentEncoding(); void endAttributeEncoding(); void startDecoding(BitToBitDataInputStream *); /* methods for decoding */ TypeEncoder* decode(BitToBitDataInputStream *); void endDecoding(); ... }
먼저, 부호화 장치(100)에 포함된 인스턴스 관리부(130)에 대하여 설명한다.
인스턴스 관리부(130)는 XML 스키마 문서의 'raw 파일'로부터 생성된 유한 상태 오토마타를 이용하여 부호화한다.
구체적으로 설명하면, 인스턴스 관리부(130)는 TypeInstance(506) 클래스의 하위 클래스의 객체가 "startEncoding()" 메소드를 호출하여 부호화 과정을 시작한다. 이때, 인스턴스 관리부(130)는 복합타입의 경우에, 내용 모델과 어트리뷰트를 부호화하기 위해, 각각 "encodeContent()" 메소드 및 "encodeAttribute()" 메소드를 호출한다.
여기서, 인스턴스 관리부(130)는 "encodeContent()" 메소드 및 "encodeAttribute()" 메소드 각각이 유한 상태 오토마타의 시작 상태부터 종료 상태로 이동하면서 타입 정의에 따라 TypeInstance(506) 클래스의 "encodeTypeInfo()" 메소드를 수행토록 하며, 부호화된 이진 스트링을 "청크(chunk) 객체(508)"로 저장한다.
이와 같은 과정을 반복 수행한 후에, 인스턴스 관리부(130)는 유한 상태 오토마타의 종료 상태에 도달하면, "endEncoding()" 메소드를 호출한다.
이때, 인스턴스 관리부(130)에 속하는 청크 기록부(132)는 상기와 같이 생성된 "청크 객체(508)"들을 전달받아 이진 파일 형태(*.bin)로 출력한다.
다음으로, 복호화 장치(200)에 포함된 이진 관리부(220)에 대하여 설명한다.
이진 관리부(220)는 유한 상태 오토마타를 이용하여 이진 스트링을 XML 인스턴스 문서로 복호화한다.
구체적으로 설명하면, 이진 관리부(220)는 이진 파일을 읽어 BitToBitDataInputStream(507) 객체를 생성하고, TypeInstance(506) 클래스의 하위 클래스 객체를 통하여 "startDecoding()" 메소드를 호출하여 복호화를 시작한다. 이때, 이진 관리부(220)는 복합타입의 경우에, 내용 모델과 어트리뷰트를 유한 상태 오토마타를 이용하여 복호화하기 위해, "decode()" 메소드를 호출한다.
여기서, 이진 관리부(220)는 BitToBitDataInputStream(507) 객체의 이진 스트링 값에 따라 유한 상태 오토마타의 시작 상태부터 종료 상태로 이동하면서, "TypeInstance(506)" 클래스의 "decodeTypeInfo()" 메소드를 실행하여 타입의 정의를 DOM 트리 형태로 재구성한다.
이와 같은 과정을 반복 수행한 후에, 이진 관리부(220)는 유한 상태 오토마타의 종료 상태에 도달하면, "endDecoding()" 메소드를 호출한다. 이때, 인스턴스 기록부(222)는 구조화된 DOM 트리 형태를 복호화한 XML 인스턴스 문서(*.xml)로 출력한다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
도 1은 본 발명에 따른 디지털 방송을 위한 메타데이터 부호화 장치에 대한 일실시예 구성도,
도 2는 본 발명에 따른 디지털 방송을 위한 메타데이터 복호화 장치에 대한 일실시예 구성도,
도 3은 본 발명에 따른 스키마 컴파일러부에 의해 이용되는 클래스 계층에 대한 일실시예 구조도,
도 4는 본 발명에 따른 유한 상태 오토마타 생성부에 의해 이용되는 클래스 계층에 대한 일실시예 구조도,
도 5는 본 발명에 따른 인스턴스 관리부 및 이진 관리부에 의해 이용되는 클래스 계층에 대한 일실시예 구조도.
* 도면의 주요 부분에 대한 부호의 설명
110: 스키마 유효성 검사부
120, 210: 스키마 관리부
130: 인스턴스 관리부
220: 이진 관리부

Claims (24)

  1. 메타데이터 부호화 장치에 있어서,
    제1 스키마 문서를 컴파일하여 제2 스키마 문서를 생성하고, 상기 제2 스키마 문서를 이용하여 상기 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하기 위한 스키마 관리 수단; 및
    상기 제1 스키마 문서에 존재하는 함수들과 변수들을 이용하여 작성된 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용해 이진화 청크 객체로 변환하여, 이진 파일로 출력하기 위한 인스턴스 관리수단
    을 포함하는 디지털 방송을 위한 메타데이터 부호화 장치.
  2. 제 1 항에 있어서,
    상기 스키마 관리 수단은,
    스키마 문서 표현을 위한 클래스 계층 구조를 바탕으로, 상기 제1 스키마 문서를 파싱하여 스키마 정의 내용을 내부 자료 구조로 재정의하고 상기 제1 스키마 문서의 각 컴포넌트를 기호화하여, 간소화된 스키마 문서인 상기 제2 스키마 문서를 생성하기 위한 스키마 컴파일러 수단; 및
    오토마타 구성을 위한 클래스 계층 구조를 바탕으로, 상기 제2 스키마 문서를 해석하여 상기 제1 스키마 문서를 상기 유한 상태 오토마타(FSA)로 생성·관리 하기 위한 유한 상태 오토마타 생성 수단
    을 포함하는 디지털 방송을 위한 메타데이터 부호화 장치.
  3. 제 1 항에 있어서,
    상기 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용하여 상기 이진화 청크 객체로 변환하기 위한 인스턴스 컴파일러 수단; 및
    상기 이진화 청크 객체를 모아 이진화 파일로 출력하기 위한 청크 기록 수단
    을 포함하는 디지털 방송을 위한 메타데이터 부호화 장치.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 제1 스키마 문서 및 상기 인스턴스 문서의 유효성을 검사하여 부호화할지를 결정하여, 상기 제1 스키마 문서를 상기 스키마 관리 수단으로 입력하고 상기 인스턴스 문서를 상기 인스턴스 관리 수단으로 입력하기 위한 스키마 유효성 검사 수단
    을 더 포함하는 디지털 방송을 위한 메타데이터 부호화 장치.
  5. 제 4 항에 있어서,
    상기 스키마 관리 수단 및 상기 인스턴스 관리 수단은,
    모든 프로세스 및 중간단계의 데이터를 저장하는 것을 특징으로 디지털 방송을 위한 메타데이터 부호화 장치.
  6. 제 5 항에 있어서,
    상기 유한 상태 오토마타(FSA)는,
    XML 스키마 문서를 MPEG-7 표준에서 정의된 바대로 구조화한 것을 특징으로 하는 디지털 방송을 위한 메타데이터 부호화 장치.
  7. 메타데이터 복호화 장치에 있어서,
    제1 스키마 문서를 컴파일하여 생성된 제2 스키마 문서를 이용하여, 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하기 위한 스키마 관리 수단; 및
    상기 유한 상태 오토마타(FSA)를 이용해 부호화 장치로부터 전달된 이진 파일을 복호화하여 인스턴스 문서로 출력하기 위한 이진 관리 수단
    을 포함하는 디지털 방송을 위한 메타데이터 복호화 장치.
  8. 제 7 항에 있어서,
    상기 스키마 관리 수단은,
    상기 스키마 문서 표현을 위한 클래스 계층 구조를 바탕으로, 상기 제1 스키마 문서를 파싱하여 스키마 정의 내용을 내부 자료 구조로 재정의하고 상기 제1 스키마 문서의 각 컴포넌트를 기호화하여, 간소화된 스키마 문서인 상기 제2 스키마 문서를 생성하기 위한 스키마 컴파일러 수단; 및
    오토마타 구성을 위한 클래스 계층 구조를 바탕으로, 상기 제2 스키마 문서를 해석하여 상기 제1 스키마 문서를 상기 유한 상태 오토마타(FSA)로 생성·관리하기 위한 유한 상태 오토마타 생성 수단
    을 포함하는 디지털 방송을 위한 메타데이터 복호화 장치.
  9. 제 7 항에 있어서,
    상기 제2 스키마 문서는,
    상기 부호화 장치의 중간 단계 결과물로 생성된 '상기 제1 스키마 문서의 컴파일링 파일'로서, 상기 부호화 장치로부터 직접 입력받는 것을 특징으로 하는디지털 방송을 위한 메타데이터 복호화 장치.
  10. 제 9 항에 있어서,
    상기 스키마 관리 수단은,
    오토마타 구성을 위한 클래스 계층 구조를 바탕으로, 상기 제2 스키마 문서를 해석하여 상기 제1 스키마 문서를 상기 유한 상태 오토마타(FSA)로 생성·관리하기 위한 유한 상태 오토마타 생성 수단을 포함하되, XML 문서 컴파일러 수단을 구비하지 않는 것을 특징으로 하는 디지털 방송을 위한 메타데이터 복호화 장치.
  11. 제 7 항 내지 제 10 항 중 어느 한 항에 있어서,
    상기 이진 관리 수단은,
    상기 유한 상태 오토마타를 이용하여 상기 부호화 장치로부터 전달된 이진 파일을 소정의 클래스 계층을 이용하여 복호화된 DOM(Document Object Model) 트리 구조로 재구성하기 위한 이진 컴파일러 수단; 및
    상기 DOM 트리 구조를 상기 인스턴스 문서로 출력하기 위한 인스턴스 기록 수단
    을 포함하는 디지털 방송을 위한 메타데이터 복호화 장치.
  12. 제11 항에 있어서,
    상기 스키마 관리 수단 및 상기 이진 관리 수단은,
    모든 프로세스 및 중간단계의 데이터를 저장하는 것을 특징으로 디지털 방송 을 위한 메타데이터 복호화 장치.
  13. 제12 항에 있어서,
    상기 유한 상태 오토마타(FSA)는,
    XML 스키마 문서를 MPEG-7 표준에서 정의된 바대로 구조화한 것을 특징으로 하는 디지털 방송을 위한 메타데이터 복호화 장치.
  14. 메타데이터 부호화 방법에 있어서,
    제1 스키마 문서를 컴파일하여 제2 스키마 문서를 생성하고, 상기 제2 스키마 문서를 이용하여 상기 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하는 유한 상태 오토마타 생성·관리 단계; 및
    상기 제1 스키마 문서에 존재하는 함수들과 변수들을 이용하여 작성된 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용해 이진 청크 객체로 변환하는 변환하고, 상기 이진 청크 객체를 이진 파일로 출력하는 출력 단계
    를 포함하는 디지털 방송을 위한 메타데이터 부호화 방법.
  15. 제 14 항에 있어서,
    상기 유한 상태 오토마타 생성·관리 단계는,
    스키마 문서 표현을 위한 클래스 계층 구조를 바탕으로, 상기 제1 스키마 문서를 파싱하여 스키마 정의 내용을 내부 자료 구조로 재정의하고 상기 제1 스키마 문서의 각 컴포넌트를 기호화하여, 간소화된 스키마 문서인 상기 제2 스키마 문서를 생성하는 단계; 및
    오토마타 구성을 위한 클래스 계층 구조를 바탕으로, 상기 제2 스키마 문서를 해석하여 상기 제1 스키마 문서를 상기 유한 상태 오토마타(FSA)로 생성·관리하는 단계
    를 포함하는 디지털 방송을 위한 메타데이터 부호화 방법.
  16. 제 14 항에 있어서,
    상기 출력 단계는,
    상기 인스턴스 문서를 상기 유한 상태 오토마타(FSA)를 이용하여 상기 이진화 청크 객체로 변환하는 단계; 및
    상기 이진화 청크 객체를 모아 이진화 파일로 출력하는 단계;
    를 포함하는 디지털 방송을 위한 메타데이터 부호화 방법.
  17. 제 14 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 제1 스키마 문서 및 상기 인스턴스 문서는,
    유효성 검사를 통해 검증되는 것을 특징으로 하는 디지털 방송을 위한 메타데이터 부호화 방법.
  18. 제 17 항에 있어서,
    상기 유한 상태 오토마타(FSA)는,
    XML 스키마 문서를 MPEG-7 표준에서 정의된 바대로 구조화한 것을 특징으로 하는 디지털 방송을 위한 메타데이터 부호화 방법.
  19. 메타데이터 복호화 방법에 있어서,
    제1 스키마 문서를 컴파일하여 생성된 제2 스키마 문서를 이용하여, 제1 스키마 문서를 구조화된 유한 상태 오토마타(FSA)로 생성·관리하는 유한 상태 오토마타 생성·관리 단계; 및
    상기 유한 상태 오토마타(FSA)를 이용해 부호화 장치로부터 전달된 이진 파일을 복호화하여 인스턴스 문서로 출력하는 출력 단계
    를 포함하는 디지털 방송을 위한 메타데이터 복호화 방법.
  20. 제 19 항에 있어서,
    상기 유한 상태 오토마타 생성·관리 단계는,
    상기 스키마 문서 표현을 위한 클래스 계층 구조를 바탕으로, 상기 제1 스키마 문서를 파싱하여 스키마 정의 내용을 내부 자료 구조로 재정의하고 상기 제1 스키마 문서의 각 컴포넌트를 기호화하여, 간소화된 스키마 문서인 상기 제2 스키마 문서를 생성하는 단계; 및
    오토마타 구성을 위한 클래스 계층 구조를 바탕으로, 상기 제2 스키마 문서를 해석하여 상기 제1 스키마 문서를 상기 유한 상태 오토마타(FSA)로 생성·관리하는 단계
    를 포함하는 디지털 방송을 위한 메타데이터 복호화 방법.
  21. 제 19 항에 있어서,
    상기 제2 스키마 문서는,
    상기 부호화 장치의 중간 단계 결과물로 생성된 '상기 제1 스키마 문서의 컴파일링 파일'로서, 상기 부호화 장치로부터 직접 입력받는 것을 특징으로 하는 디지털 방송을 위한 메타데이터 복호화 방법.
  22. 제 21 항에 있어서,
    상기 유한 상태 오토마타 생성·관리 단계는,
    오토마타 구성을 위한 클래스 계층 구조를 바탕으로, 상기 제2 스키마 문서를 해석하여 상기 제1 스키마 문서를 상기 유한 상태 오토마타(FSA)로 생성·관리하되, XML 문서 컴파일링을 수행하지 않는 것을 특징으로 하는 디지털 방송을 위한 메타데이터 복호화 방법.
  23. 제 19 항 내지 제 22 항 중 어느 한 항에 있어서,
    상기 출력 단계는,
    상기 유한 상태 오토마타를 이용하여 상기 부호화 장치로부터 전달된 이진 파일을 소정의 클래스 계층을 이용하여 복호화된 DOM(Document Object Model) 트리 구조로 재구성하는 단계; 및
    상기 DOM 트리 구조를 상기 인스턴스 문서로 출력하는 단계
    를 포함하는 디지털 방송을 위한 메타데이터 복호화 방법.
  24. 제 23 항에 있어서,
    상기 유한 상태 오토마타(FSA)는,
    XML 스키마 문서를 MPEG-7 표준에서 정의된 바대로 구조화한 것을 특징으로 하는 디지털 방송을 위한 메타데이터 복호화 방법.
KR1020070096053A 2006-09-26 2007-09-20 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그방법 KR100910061B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060093740 2006-09-26
KR20060093740 2006-09-26

Publications (2)

Publication Number Publication Date
KR20080028293A KR20080028293A (ko) 2008-03-31
KR100910061B1 true KR100910061B1 (ko) 2009-07-30

Family

ID=39414850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070096053A KR100910061B1 (ko) 2006-09-26 2007-09-20 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그방법

Country Status (1)

Country Link
KR (1) KR100910061B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002063775A2 (en) 2001-02-05 2002-08-15 Expway Method and system for compressing structured documents
JP2003150586A (ja) 2001-11-12 2003-05-23 Ntt Docomo Inc 文書変換システム、文書変換方法及び文書変換プログラムを記録したコンピュータ読み取り可能な記録媒体

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002063775A2 (en) 2001-02-05 2002-08-15 Expway Method and system for compressing structured documents
JP2003150586A (ja) 2001-11-12 2003-05-23 Ntt Docomo Inc 文書変換システム、文書変換方法及び文書変換プログラムを記録したコンピュータ読み取り可能な記録媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TV-Anytime 메타데이터의 부호화기 및 복호화기의 구현; 김명훈, 김혁만, 양승준 김재곤; 한국방송공학회논문지, v.10, no.1, pp.57-67, 2005년 3월
스키마를 이용한 XML 문서의 압축과 복원; 염지현, 김혁만; 한국정보과학회:학술대회논문집, 한국정보과학회 2006년도 가을 학술발표논문집 Vol.33 No.2 (D), pp.157-160, 2006년 10월

Also Published As

Publication number Publication date
KR20080028293A (ko) 2008-03-31

Similar Documents

Publication Publication Date Title
Avaro et al. MPEG-7 Systems: overview
US20070143664A1 (en) A compressed schema representation object and method for metadata processing
WO2002005089A1 (en) Delivering multimedia descriptions
US20130069806A1 (en) Method and apparatus for encoding and decoding structured data
Niedermeier et al. An MPEG-7 tool for compression and streaming of XML data
WO2005008993A1 (en) Description document for a service offered by a server in a communication network and method of validating a multimedia document
US20020120652A1 (en) Two-stage mapping for application specific markup and binary encoding
US20040064481A1 (en) Structured data receiving apparatus, receiving method, reviving program, transmitting apparatus, and transmitting method
AU2009310547A1 (en) Conditional processing method and apparatus
KR100910061B1 (ko) 디지털 방송을 위한 메타데이터 부호화/복호화 장치 및 그방법
KR20050006565A (ko) 멀티미디어 데이터의 관리 및 편집을 위한 시스템 및 방법
US20060259167A1 (en) Method for compressing and decompressing structured documents
Raulet et al. Validation of bitstream syntax and synthesis of parsers in the MPEG Reconfigurable Video Coding framework
Kofler et al. Efficient MPEG-21-based adaptation decision-taking for scalable multimedia content
US20020120780A1 (en) Two-staged mapping for application specific markup and binary encoding
Van Assche et al. Multi-channel publishing of interactive multimedia presentations
Timmerer et al. Digital item adaptation–coding format independence
Ha et al. Effective encoding of TV-Anytime metadata using EXI
Hong et al. XFlavor: providing XML features in media representation
Carvalho et al. A unified data model and system support for the context-aware access to multimedia content.
KR100590028B1 (ko) 포터블 미디어 플레이어를 위한 컨텐츠 리스트의 생성 및관리 방법
Timmerer et al. Efficient processing of MPEG-21 metadata in the binary domain
Devillers An extension of BSDL for multimedia bitstream syntax description
KR20050023411A (ko) 구조화된 문서들, 특히 xml 문서들을인코딩/디코딩하기 위한 방법 및 장치
Timmerer Resource Adaptation using XML within the MPEG-21 Multimedia Framework

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130624

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140630

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee