KR100590029B1 - Method of providing table field elements by get_data operation in tv-anytime metadata service - Google Patents

Method of providing table field elements by get_data operation in tv-anytime metadata service Download PDF

Info

Publication number
KR100590029B1
KR100590029B1 KR1020040074548A KR20040074548A KR100590029B1 KR 100590029 B1 KR100590029 B1 KR 100590029B1 KR 1020040074548 A KR1020040074548 A KR 1020040074548A KR 20040074548 A KR20040074548 A KR 20040074548A KR 100590029 B1 KR100590029 B1 KR 100590029B1
Authority
KR
South Korea
Prior art keywords
metadata
type
field
query result
tva
Prior art date
Application number
KR1020040074548A
Other languages
Korean (ko)
Other versions
KR20060025748A (en
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 전자부품연구원
Priority to KR1020040074548A priority Critical patent/KR100590029B1/en
Priority to EP05106940A priority patent/EP1638336A1/en
Priority to US11/192,057 priority patent/US7917529B2/en
Priority to JP2005259706A priority patent/JP4280737B2/en
Priority to CNB2005101034330A priority patent/CN100444635C/en
Publication of KR20060025748A publication Critical patent/KR20060025748A/en
Application granted granted Critical
Publication of KR100590029B1 publication Critical patent/KR100590029B1/en
Priority to US13/014,098 priority patent/US8060526B2/en
Priority to US13/014,203 priority patent/US8055676B2/en

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
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/68Systems specially adapted for using specific information, e.g. geographical or meteorological information
    • H04H60/73Systems specially adapted for using specific information, e.g. geographical or meteorological information using meta-information
    • H04H60/74Systems specially adapted for using specific information, e.g. geographical or meteorological information using meta-information using programme related information, e.g. title, composer or interpreter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/0273Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using web services for network management, e.g. simple object access protocol [SOAP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 TV-Anytime 메타데이터 서비스에서 get_Data 오퍼레이션을 이용하여 테이블 필드 엘리먼트를 제공하는 방법에 관한 것으로서, (a) get_Data 오퍼레이션에서, 질의 결과값 유형에 메타데이터 테이블의 필드를 지정할 수 있는 요청필드유형(RequestedFieldsType)을 추가하는 단계와, (b) get_Data 오퍼레이션의 요청 메시지를 수신하는 단계와, (c) 상기 요청 메시지가 질의 결과값을 지정하는 요청필드유형을 포함하는 경우에, 상기 요청메시지의 요청필드유형 엘리먼트에서 지정된 테이블 필드에 해당하는 질의 결과값를 추출하고, 그 질의 결과값을 get_Data 오퍼레이션의 응답 메시지에 의해 전송하는 단계를 포함한다.The present invention relates to a method for providing a table field element using a get_Data operation in a TV-Anytime metadata service. (A) In a get_Data operation, a request field type for specifying a field of a metadata table in a query result value type. Adding (RequestedFieldsType), (b) receiving a request message of a get_Data operation, and (c) if the request message includes a request field type specifying a query result value, requesting the request message. Extracting a query result value corresponding to a specified table field in a field type element, and transmitting the query result value by a response message of a get_Data operation.

메타데이터, 애니타임, TV-Anytime, metadata, SOAP, XML, get_Data, FileID, Xpath Metadata, Anytime, TV-Anytime, metadata, SOAP, XML, get_Data, FileID, Xpath

Description

TV-Anytime 메타데이터 서비스에서 get_Data 오퍼레이션을 이용한 테이블 필드 엘리먼트 제공 방법{METHOD OF PROVIDING TABLE FIELD ELEMENTS BY GET_DATA OPERATION IN TV-ANYTIME METADATA SERVICE}METHOD OF PROVIDING TABLE FIELD ELEMENTS BY GET_DATA OPERATION IN TV-ANYTIME METADATA SERVICE} How to Provide Table Field Elements with Metadata Services

도 1은 TV-Anytime 메타데이터의 구성도.1 is a block diagram of TV-Anytime metadata.

도 2는 get_Date 오퍼레이션의 동작 개념도.2 is an operation conceptual diagram of a get_Date operation.

본 발명은 TV-Anytime 서비스에 관한 것으로서, 특히 TV-Anytime 메타데이터 서비스에서 get_Data 오퍼레이션을 이용하여 테이블 필드 엘리먼트를 제공하는 방법에 관한 것이다.The present invention relates to a TV-Anytime service, and more particularly, to a method of providing a table field element using a get_Data operation in a TV-Anytime metadata service.

최근 디지털 방송 서비스의 본격화됨에 따라 다채널 다매체 환경에서 맞춤형 방송 서비스를 제공하기 위한 기술에 관한 연구가 활발히 진행되고 있다. 일례로서, 민간 국제 표준인 티비-애니타임(TV-Anytime, 이하 "TV-Anytime"이라 함)은 컨텐츠의 기술(description) 정보를 표현하는 메타데이터를 바탕으로 사용자가 자신의 취향(preference) 정보와 전술한 메타데이터를 매칭시킴으로써 원하는 컨텐츠를 저장하여 자유로운 시간에 시청할 수 있도록 하는 애니타임(Anytime) 서비스를 제 공하기 위한 표준 규격이다.Recently, as the digital broadcasting service becomes full-fledged, research on a technology for providing a customized broadcasting service in a multi-channel multimedia environment has been actively conducted. As an example, the private international standard TV-Anytime (hereinafter referred to as "TV-Anytime") is a user's preference information based on metadata representing the description information of the content. And the above-described metadata to match the above-mentioned metadata to provide an Anytime (Anytime) service to store the desired content for free viewing.

메타데이터는 전술한 바와 같이 컨텐츠에 대한 기술 정보로서, TV-Anytime에서는 MPEG-7에서 정의된 내용기반(content-based)의 기술과 EPG(전자 프로그램 가이드) 정보를 포함하며, 사용자가 원하는 콘텐츠를 용이하게 탐색 및 선택할 수 있도록 한다. 메타데이터 표준은 2개의 파트로 구성이 되며, 파트 A는 메타데이터를 기술하기 위한 포맷, 즉 스키마(schema)를 정의한 것으로, XML(eXtensible Markup Language) 기반의 MPEG-7 DDL(Description Definition Language)(ISO/IEC 15938-2)을 활용한다. 파트 B는 메타데이터 전송에 관한 것으로서, 이진포맷[MPEG-7 BiM(Binary Format for MPEG-7)](ISO/IEC 15938-1), 단편화(fragmentation) 모델, 캡슐화(encapsulation) 및 색인(indexing) 기법을 포함하고 있다. As described above, the metadata is descriptive information about the content. In TV-Anytime, the metadata includes content-based description and EPG (electronic program guide) information defined in MPEG-7. Make it easy to navigate and select. The metadata standard consists of two parts. Part A defines a format for describing metadata, that is, a schema. The metadata standard is MPEG-7 Description Definition Language (DDL) based on XML (eXtensible Markup Language). ISO / IEC 15938-2). Part B relates to metadata transfer, which is binary format [MPEG-7 BiM (Binary Format for MPEG-7) (ISO / IEC 15938-1), fragmentation model, encapsulation and indexing. It includes techniques.

도 1은 TV-Anytime 메타데이터의 구성을 도시한 것으로서, 프로그램 기술 메타데이터(Program Description MetaData)와 사용자 기술 메타데이터(User Description Metadata)를 포함하며, 프로그램 기술 메타데이터는 콘텐츠 기술 메타데이터와 인스턴스(instance) 기술 메타데이터로 구성되어 있다. 하나의 프로그램에 대한 메타데이터는 CRID(Content Reference Identifier, 이하 "CRID"라 함)라고 불리는 콘텐츠 식별자로 상호 연관된다. FIG. 1 illustrates a configuration of TV-Anytime metadata, and includes program description metadata and user description metadata. The program description metadata may include content description metadata and an instance ( instance) consists of descriptive metadata. The metadata for one program is correlated with a content identifier called a CRID (Content Reference Identifier).

컨텐츠 기술 메타데이터는 컨텐츠 생성자(Content Creator)에 의해서 생성되며, 프로그램 타이틀, 장르, 요약, 비평가 리뷰 등을 포함한다. 인스턴스 기술 메타데이터는 컨텐츠 제공자(Content Provider)에 의해 생성되며, 로케이션(location)(방송 시간, 채널, URL 등), 사용 규칙(usage rule), 전송 파라미터 (delivery parameter) 등을 포함한다. 마지막으로, 사용자 기술 메타데이터는 사용자 기호(user preference), 사용 이력(usage history), 개인 북마크(personal bookmark) 등을 포함하며, 사용자에 의해 생성된다.Content description metadata is generated by a content creator and includes program titles, genres, summaries, critic reviews, and the like. The instance description metadata is generated by a content provider and includes a location (broadcast time, channel, URL, etc.), a usage rule, a delivery parameter, and the like. Finally, user description metadata includes user preferences, usage history, personal bookmarks, and the like, and is generated by the user.

TV-Anytime 표준은 리턴 패스를 통한 양방향 메타데이터 서비스를 위해 두가지 유형의 메타데이터 웹 서비스를 정의하고 있으며, 이는 well-defined behavior와 입출력 셋에 대한 원격 프로시져(remote procedure)이다. XML(eXtensible Markup Languge; 확장성 생성 언어) 기반의 WSDL(Web Service Description Language; 웹 서비스 기술 언어) 표준에서, 전술한 원격 프로시져(remote procedure)는 단순객체접근 프로토콜(SOAP; Simple Object Access Protocol, 이하 "SOAP"라 함) 오퍼레이션의 형태로 정의되어 있으며, 메타데이터 검색을 위한 "get_Data()" 오퍼레이션과, 사용자 기술 제출(user description submission)을 위한 "submit_Data" 오퍼레이션이 있다. 참고로, 전술한 SOAP 프로토콜은 분산환경에서 객체(Object)에 접근할 수 있도록 하는 XML 통신 프로토콜이다. The TV-Anytime standard defines two types of metadata web services for bi-directional metadata services via return paths, which are well-defined behaviors and remote procedures for input and output sets. In the Web Service Description Language (WSDL) standard based on the XML (eXtensible Markup Languge), the above-described remote procedure is a simple object access protocol (SOAP). It is defined in the form of "SOAP" operation, and there is a "get_Data ()" operation for metadata retrieval and a "submit_Data" operation for user description submission. For reference, the aforementioned SOAP protocol is an XML communication protocol that allows access to an object in a distributed environment.

TV-Anytime 메타데이터 서비스에서 사용되는 요청(Request)/응답(Response) 유형은 "urn:tva:transport:2002"의 네임 스페이스에 정의되며, 상기 네임 스페이스는 다양한 메시지에 대한 검증을 위한 툴로서 제공된다. 메타데이터 스펙과 컨텐츠 참조(Content referencing) 표준에 정의된 유형(타입)들은 전송(transport) 네임스페이스에서 참조된다. 스키마 단편(Schema fragment, 이하 "Schema fragment"라 함)들은 전술한 네임 스페이스에 정의되고, 네임 스페이스 제공자는 Schma fragment에서 "tns:"로 정의된다. 완전한 XML 스키마 파일은 tva_transport_types_v10.xsd 이다. The request / response type used in the TV-Anytime metadata service is defined in the namespace of "urn: tva: transport: 2002", which is provided as a tool for validating various messages. do. The types defined in the metadata specification and the content referencing standard are referenced in the transport namespace. Schema fragments (hereinafter referred to as "Schema fragments") are defined in the aforementioned namespaces, and namespace providers are defined as "tns:" in the Schma fragment. The complete XML schema file is tva_transport_types_v10.xsd.

1. get_Data() 오퍼레이션1. get_Data () operation

get_Data() 오퍼레이션은 클라이언트가 프로그램 또는 프로그램 그룹에 대하여 TV-Anytime 데이터를 서버로부터 검색하는 기능을 제공한다. TV-Anytime 메타데이터 제공자가 get_Data() 오퍼레이션을 사용하여 제공할 수 있는 기능을 예시하면 다음과 같다.The get_Data () operation provides the client with the ability to retrieve TV-Anytime data from the server for a program or program group. An example of a function that a TV-Anytime metadata provider can provide using the get_Data () operation is as follows.

- CRID 리스트를 이용하여 CRID에 대한 컨텐츠 참조 데이타를 반환함Return the content reference data for the CRID using the CRID list

- CRID 리스트를 이용하여 CRID에 대한 TV-Anytime 메타데이터를 반환함-Return TV-Anytime metadata for CRID using CRID list

- 특정한 메타데이터 속성(Attribute)(예컨대, 장르, 배우 등)에 대한 질의를 수신하고, 이에 해당되는 프로그램을 반환함Receive a query for a specific metadata attribute (eg genre, actor, etc.) and return the corresponding program

- 특정 시간 또는 특정 채널에 대한 질의에 응답하여, 해당 프로그램을 반환함In response to a query for a specific time or channel, the program is returned.

get_Data() 오퍼레이션의 동작과 관련하여 도 2를 참조하면, TV-Anytime 서비스에서, 클라이언트(Client)는 인터넷망(IP Network) 등을 통해 get_Data() 오퍼레이션에 의한 SOAP 요청 메시지[get_Data() Request]를 메타데이터 서비스 서버(Metadata Service)에 전송한다. 이 때, get_Data() 오퍼레이션은 원칙적으로 모든 질의 유형을 지원하며, 메타데이터 제한조건에 대하여 광범한 질의를 제공한다. 이어서, 메타데이터 서비스 서버(Metadata Service)는 SOAP 응답 메시지[get_Data() Request]에 의해 상기 SOAP 요청 메시지에 대한 질의 결과값을 반환한다.Referring to FIG. 2 with respect to the operation of the get_Data () operation, in the TV-Anytime service, the client (Client) is a SOAP request message by the get_Data () operation via the IP network [get_Data () Request] To the metadata service server. In this case, the get_Data () operation supports all query types in principle, and provides a wide range of queries for metadata constraints. Subsequently, the metadata service server returns a query result value for the SOAP request message by a SOAP response message [get_Data () Request].

가. 요청 포맷(Request Format)end. Request Format

표 1에 도시된 바와 같이, get_Data() 오퍼레이션에 있어서, 요청 포맷은 클라이언트에게 세가지 유형의 파라미터를 지정하며, 질의(검색) 결과값으로 반환되는 엘리먼트 유형을 RequestedTables 유형에 지정한다. As shown in Table 1, in the get_Data () operation, the request format specifies three types of parameters to the client, and the element type returned as a query (search) result value to the RequestedTables type.

<element name="get_Data" type="tns:get_Data"/> <complexType name="get_Data"> <sequence> <element name="QueryConstraints"> <complexType> <choice> <element name="PredicateBag" type="tns:PredicateBagType"/> <element name="BinaryPredicate" type="tns:BinaryPredicateType"/> <element name="UnaryPredicate" type="tns:UnaryPredicateType"/> </choice> </complexType> </element> <element name="RequestedTables" type="tns:RequestedTablesType"/> </sequence> <attribute name="maxPrograms" type="unsignedInt"/> </complexType><element name = "get_Data" type = "tns: get_Data" /> <complexType name = "get_Data"> <sequence> <element name = "QueryConstraints"> <complexType> <choice> <element name = "PredicateBag" type = "tns: PredicateBagType" /> <element name = "BinaryPredicate" type = "tns: BinaryPredicateType" /> <element name = "UnaryPredicate" type = "tns: UnaryPredicateType" /> </ choice> </ complexType> </ element > <element name = "RequestedTables" type = "tns: RequestedTablesType" /> </ sequence> <attribute name = "maxPrograms" type = "unsignedInt" /> </ complexType>

표 2는 질의 결과 반환되는 RequestedTables 유형을 ClassificationSchemeTable, ProgramInformationTable, GroupInformationTable, CreditsInformationTable, ProgramLocationTable, ServiceInformationTable, ProgramReviewTable, SegmentInformationTable 등으로 지정한 예이다.Table 2 shows an example of specifying the RequestedTables returned as a query result as ClassificationSchemeTable, ProgramInformationTable, GroupInformationTable, CreditsInformationTable, ProgramLocationTable, ServiceInformationTable, ProgramReviewTable, SegmentInformationTable, and so on.

<element name="get_Data" type="tns:get_Data"/> <complexType name="get_Data"> <sequence> <element name="QueryConstraints"> <complexType> <choice> <element name="PredicateBag" type="tns:PredicateBagType"/> <element name="BinaryPredicate" type="tns:BinaryPredicateType"/> <element name="UnaryPredicate" type="tns:UnaryPredicateType"/> </choice> </complexType> </element> <element name="RequestedTables" type="tns:RequestedTablesType"/> </sequence> <attribute name="maxPrograms" type="unsignedInt"/> </complexType> <complexType name="RequestedTablesType"> <sequence> <element name="Table" maxOccurs="unbounded"> <complexType> <sequence> <element name="SortCriteria" type="tns:SortCriteriaType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="type" use="required"> <simpleType> <restriction base="string"> <enumeration value="ContentReferencingTable"/> <enumeration value="ClassificationSchemeTable"/> <enumeration value="ProgramInformationTable"/> <enumeration value="GroupInformationTable"/> <enumeration value="CreditsInformationTable"/> <enumeration value="ProgramLocationTable"/> <enumeration value="ServiceInformationTable"/> <enumeration value="ProgramReviewTable"/> <enumeration value="SegmentInformationTable"/> </restriction> </simpleType> </attribute> </complexType> </element> </sequence> </complexType><element name = "get_Data" type = "tns: get_Data" /> <complexType name = "get_Data"> <sequence> <element name = "QueryConstraints"> <complexType> <choice> <element name = "PredicateBag" type = "tns: PredicateBagType" /> <element name = "BinaryPredicate" type = "tns: BinaryPredicateType" /> <element name = "UnaryPredicate" type = "tns: UnaryPredicateType" /> </ choice> </ complexType> </ element > <element name = "RequestedTables" type = "tns: RequestedTablesType" /> </ sequence> <attribute name = "maxPrograms" type = "unsignedInt" /> </ complexType>                                                        <complexType name = "RequestedTablesType"> <sequence> <element name = "Table" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "SortCriteria" type = "tns: SortCriteriaType" minOccurs = "0" maxOccurs = "unbounded" /> </ sequence> <attribute name = "type" use = "required"> <simpleType> <restriction base = "string"> <enumeration value = "ContentReferencingTable" /> <enumeration value = "ClassificationSchemeTable" /> <enumeration value = "ProgramInformationTable" /> <enumeration value = "GroupInformationTable" /> <enumeration value = "CreditsInformationTable" /> <enumeration value = "ProgramLocationTable" /> <enumeration value = "ServiceInformationTable" /> <enumeration value = "ProgramReviewTable" /> <enumeration value = "SegmentInformationTable" /> </ restriction> </ simpleType> </ attribute> </ complexType> </ element> </ sequence> </ complexType>

나. 응답 포맷(Response Format)I. Response Format

get_Data() 오퍼레이션의 응답 포맷은 표 3에 도시된 바와 같이, 엘리먼트 (TVAMain, ContentReferencingTable, InvalidFragments)에 대하여 0 또는 하나 이상의 XML 인스턴스 도큐먼트를 포함하며, 요청 포맷에서 요청한 RequtstedTables 유형에 따라 질의 결과값을 반환한다.The response format of the get_Data () operation contains zero or one or more XML instance documents for the elements (TVAMain, ContentReferencingTable, InvalidFragments), as shown in Table 3, and returns the query result according to the requested RequtstedTables type in the request format. do.

<element name="get_Data_Result" type="tns:get_Data_ResultType"/> <complexType name="get_Data_ResultType"> <sequence> <element name="TableSortingInformation" type="tns:RequestedTablesType" minOccurs="0"/> <element ref="tva:TVAMain" minOccurs="0"/> <element ref="cr:ContentReferencingTable" minOccurs="0"/> <element name="InvalidFragments" type="tns:InvalidFragmentsType" minOccurs="0"/> </sequence> <attribute name="serviceVersion" type="unsignedInt" use="required"/> <attribute name="truncated" type="boolean"/><element name = "get_Data_Result" type = "tns: get_Data_ResultType" /> <complexType name = "get_Data_ResultType"> <sequence> <element name = "TableSortingInformation" type = "tns: RequestedTablesType" minOccurs = "0" /> <element ref = "tva: TVAMain" minOccurs = "0" /> <element ref = "cr: ContentReferencingTable" minOccurs = "0" /> <element name = "InvalidFragments" type = "tns: InvalidFragmentsType" minOccurs = "0" / > </ sequence> <attribute name = "serviceVersion" type = "unsignedInt" use = "required" /> <attribute name = "truncated" type = "boolean" />

전술한 바와 같이, 현재 TV-Anytime SP006에서 정의하고 있는 get_Data()오퍼레이션은 검색을 통해 원하는 테이블 또는 TVAMain 등의 결과를 반환한다. 즉, get_Data() 오퍼레이션의 검색 결과는 "TVAMain" 또는 "ProgramInformationTable", "GroupInformationTable", "programLocationTable", "ServiceInformationTable", "CreditsInformationTable", "ProgramReviwTable", "SegmentInformatinTable" 등과 같은 테이블 단위로 전송된다. As described above, the get_Data () operation currently defined in TV-Anytime SP006 returns a desired table or TVAMain through a search. That is, the search result of the get_Data () operation is transmitted in a table unit such as "TVAMain" or "ProgramInformationTable", "GroupInformationTable", "programLocationTable", "ServiceInformationTable", "CreditsInformationTable", "ProgramReviwTable", "SegmentInformatinTable", and the like.

한편, 셋톱 박스(SetTop Box)는 양방향 환경에서 get_Data() 오퍼레이션을 통해 컨텐츠를 검색하고 해당 메타데이터를 제공받을 수 있다. 그러나, 셋톱박스가 홈서버로 발달함에 따라 셋톱박스가 가정안에서 메타데이터 서비스 에이전트 기능을 수행할 수 있으며, 포터블 미디어 플레이어(Portable Media Player)와 같이 제 한된 자원을 사용하는 단말에서는 기존의 테이블 단위의 메타데이타를 제공받는 것이 상당한 자원 낭비를 초래할 수 있다. Meanwhile, the settop box may retrieve content and receive corresponding metadata through a get_Data () operation in an interactive environment. However, as the set-top box is developed as a home server, the set-top box can perform a metadata service agent function in the home, and in a terminal using limited resources such as a portable media player, the existing table unit Being provided with metadata can cause significant resource waste.

예컨대, 포터블 미디어 플레이어에서 사용자 환경으로 제공하는 메타데이터가 타이틀, 장르, 로케이션 정보, 리뷰 정보라고 가정할 때, 기존의 get_Data()오퍼레이션을 통해 질의 할 경우에는 RequestedTables의 값으로 ProgramInformationTable, ProgramLocationTable, ProgramReviewTable을 요청하고 해당 엘리머트의 값 또는 애트리뷰트의 값을 파싱하여 사용자 인터페이스(UI)에 디스플레이한다. 따라서, 각 테이블의 불필요한 메타데이터로 인하여, 이를 전송하는 네트워크 자원의 낭비와 포터블 미디어 플레이어의 파싱 작업으로 인한 자원의 낭비가 유발된다. For example, assuming that the metadata provided by the portable media player to the user environment is title, genre, location information, and review information, when querying through the existing get_Data () operation, programInformationTable, ProgramLocationTable, and ProgramReviewTable are used as the values of RequestedTables. Request and parse the value of the element or attribute and display it in the user interface (UI). Therefore, the unnecessary metadata of each table causes a waste of network resources for transmitting them and a waste of resources due to parsing of the portable media player.

따라서, 종래의 get_Data() 오퍼레이션의 테이블 단위 검색은 클라이언트가 테이블 전체의 메타데이터를 필요로 하지 않는 경우에, 불필요한 메타데이터의 전송 및 클라이언트의 재파싱으로 인하여 자원 낭비가 발생하는 문제점이 있다.Therefore, the conventional table-by-table retrieval of the get_Data () operation has a problem that resource waste occurs due to unnecessary metadata transmission and reparsing of the client when the client does not need the metadata of the entire table.

전술한 문제점을 해결하고자, 본 발명은 get_Data() 오퍼레이션에 있어서 Field 단위의 반환 결과값을 요청할 수 있도록 하여 클라이언트가 원하는 메타데이터를 선별적으로 반환할 수 있도록 하는 데 그 목적이 있다.In order to solve the above-described problem, an object of the present invention is to enable a client to selectively return desired metadata by requesting a return result value in units of fields in a get_Data () operation.

본 발명의 일 측면에 따르면, SOAP 질의 오퍼레이션을 이용한 TV-Anytime 메타데이터 서비스 방법이 제공되며, (a) 상기 SOAP 질의 오퍼레이션에서, 질의 결과 값 유형에 메타데이터 테이블의 필드를 지정할 수 있는 요청필드유형(RequestedFieldsType)을 추가하는 단계와, (b) 상기 SOAP 질의 오퍼레이션의 요청 메시지를 수신하는 단계와, (c) 상기 요청 메시지가 질의 결과값을 지정하는 상기 요청필드유형의 엘리먼트를 포함하는 경우에, 상기 요청메시지의 요청필드유형 엘리먼트에서 지정된 테이블 필드에 해당하는 질의 결과값을 추출하고, 그 질의 결과값을 상기 SOAP 오퍼레이션의 응답 메시지에 의해 전송하는 단계를 포함한다.According to an aspect of the present invention, there is provided a TV-Anytime metadata service method using a SOAP query operation, and (a) in the SOAP query operation, a request field type that can specify a field of a metadata table in a query result value type Adding (RequestedFieldsType), (b) receiving a request message of the SOAP query operation, and (c) the request message includes an element of the requested field type specifying a query result value, Extracting a query result value corresponding to a table field specified in a request field type element of the request message, and transmitting the query result value by a response message of the SOAP operation.

이 때, 상기 SOAP 오퍼레이션은 get_Data() 오퍼레션일 수 있으며, 상기 (a) 단계에서 추가되는 요청필드유형 엘리먼트는 메타데이터 테이블의 필드 아이디 (fieldID)를 지정하는 요청필드 서브엘리먼트와, 상기 필드 아이디(fieldID)에 대한 경로(Xpath)를 지정하는 요청경로 서브엘리먼트를 포함할 수 있다.In this case, the SOAP operation may be a get_Data () operation, and the request field type element added in the step (a) includes a request field subelement that specifies a field ID (fieldID) of a metadata table, and the field ID. It may include a request path subelement that specifies a path (Xpath) for (fieldID).

또한, 상기 (c) 단계는 상기 질의 결과값에 동일한 필드 아이디(fieldID)를 갖는 중복 데이터가 존재하는 경우에 상기 질의 결과값에서 중복 데이터를 배제할 수 있으며, 상기 메타데이터는 프로그램 기술 메타데이터(Program Description Metadata)일 수 있다.Also, in the step (c), when duplicate data having the same field ID (fieldID) exists in the query result value, the duplicate data may be excluded from the query result value, and the metadata may include program description metadata ( Program Description Metadata).

본 발명의 제2 측면에 따르면, 전술한 본 발명의 제1 측면에 따른 TV-Anytime 메타데이터 서비스 방법의 각 단계를 수행하는 명령어를 포함하는 컴퓨터 판독가능 기록매체가 제공된다.According to a second aspect of the present invention, there is provided a computer-readable recording medium comprising instructions for performing each step of the TV-Anytime metadata service method according to the first aspect of the present invention described above.

이하, 본 발명의 바람직한 실시예를 설명한다.Hereinafter, preferred embodiments of the present invention will be described.

표 4는 본 발명의 바람직한 실시예에 따라 수정된(modified) get_Data() 오퍼레이션에서, 특정 엘리먼트 또는 애트리뷰트 단위의 질의 결과를 요구하기 위한 요청필드유형(RequestedFieldsType, 이하 "RequestedFieldsType"이라 함)을 정의한 것이다.Table 4 defines a request field type (referred to as "RequestedFieldsType") for requesting a query result of a specific element or attribute unit in a modified get_Data () operation according to a preferred embodiment of the present invention. .

<complexType name="RequestedFieldsType"> <sequence> <element name="RequestedField" minOccurs="0" maxOccurs="unbounded"> <complexType> <sequence> <element name="SortCriteria" type="tns:SortCriteriaType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="fieldID" type="tns:fieldIDType" use="required"/> </complexType> </element> <element name="RequestedXPath" minOccurs="0" maxOccurs="unbounded"> <complexType> <sequence> <element name="SortCriteria" type="tns:SortCriteriaType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="XPath" type="string" use="required"/> </complexType> </element> </sequence> </complexType><complexType name = "RequestedFieldsType"> <sequence> <element name = "RequestedField" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "SortCriteria" type = "tns: SortCriteriaType" minOccurs = "0" maxOccurs = "unbounded" /> </ sequence> <attribute name = "fieldID" type = "tns: fieldIDType" use = "required" /> </ complexType> </ element>                                                      <element name = "RequestedXPath" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "SortCriteria" type = "tns: SortCriteriaType" minOccurs = "0" maxOccurs = "unbounded" /> </ sequence> <attribute name = "XPath" type = "string" use = "required" /> </ complexType> </ element> </ sequence> </ complexType>

표 4에서, RequsetedFieldsType은 RequestedField 와 RequestedXPath의 두개의 엘리먼트가 서브 엘리먼트로 추가되어 질 수 있으며, 상기 각 엘리먼트는 minOccurs="0" maxOccurs="unbounded" 이로 지정되어 0개 이상 무한대의 RequestedField 와 RequestedXPath에 대한 질의가 가능하다. In Table 4, two elements of RequestedField and RequestedXPath can be added as sub-elements, and each element is designated as minOccurs = "0" maxOccurs = "unbounded", so that for zero or more infinite RequestedField and RequestedXPath Inquiry is possible.

RequetstedField는 SortCriteria를 서브 엘리먼트로 갖는다. SortCriteria 는 질의 결과에 대한 정렬 기준을 나타내고 기존의 정렬 방법을 따르며, fieldID를 애트리뷰트로 갖는다. fieldID의 값은 질의 결과로 받고자 하는 필드의 ID가 되 며, 현재 TV-Anytime에서 정의한 fieldIDType을 사용한다. RequetstedField has a SortCriteria as a sub element. SortCriteria represents the sorting criteria for the query results, follows the existing sorting method, and has fieldID as an attribute. The fieldID value is the ID of the field to receive as a query result and uses the fieldIDType defined by the current TV-Anytime.

RequestedField를 사용하여 질의시에는 문제점이 발생할 수 있으며, 바로 하나의 fieldID에 여러 Xpath가 존재할 수 있기 때문이다. 전술한 경우에, 메타데이터 서버의 서비스 에이전트는 중복되는 데이터를 모두 전송하거나 중복을 배제할 수 있으며, 동일한 TVAMain 인스턴스의 경우 자체적인 정책에 의해 선택적으로 전송할 수 있다. 이와 같은 중복 fieldID에 대한 전송은 서비스 제공자의 정책을 따른다. Problems can occur when querying using RequestedField, because there can be multiple Xpaths in one fieldID. In the above-described case, the service agent of the metadata server may transmit all duplicate data or exclude duplicates, and may selectively transmit the same TVAMain instance according to its own policy. Such transmission of duplicate fieldID follows the policy of the service provider.

상기 서비스 제공자의 정책에 따른 애매모호함을 방지하기 위해, 사용자는 RequestedXPath를 사용하여 질의를 요청할 수 있다. 즉, RequestedXPath는 XPath의 문법에 따라 요청하고자 하는 필드의 명확한 경로(XPath)를 지정할 수 있다. RequestedXPath는 전술한 RequestedField와 마찬가지로, SortCriteria를 서브 엘리먼트로 가지며, XPath를 애트리뷰트로 가지므로, XPath 애트리뷰트의 값(유형)으로 질의하기 위한 값을 설정할 수 있다.In order to prevent ambiguity according to the service provider's policy, the user can request a query using RequestedXPath. In other words, RequestedXPath can specify an explicit path (XPath) of a field to request according to the syntax of XPath. Like RequestedField described above, RequestedXPath has a SortCriteria as a sub element and has an XPath as an attribute, so that a value for querying the value (type) of the XPath attribute can be set.

아래의 표 5는 전술한 RequsetedFieldsType을 사용하기 위해 수정된 get_Data() 오퍼레이션의 요청 포맷을 도시하고 있다.Table 5 below shows the request format of the get_Data () operation modified to use the aforementioned RequsetedFieldsType.

<element name="get_Data" type="tns:get_Data"/> <complexType name="get_Data"> <sequence> <element name="QueryConstraints"> <complexType> <choice> <element name="PredicateBag" type="tns:PredicateBagType"/> <element name="BinaryPredicate" type="tns:BinaryPredicateType"/> <element name="UnaryPredicate" type="tns:UnaryPredicateType"/> </choice> </complexType> </element> <element name="RequestedTables" type="tns:RequestedTablesType" minOccurs="0" maxOccurs="unbounded"/> <element name="RequestedFields" type="tns:RequestedFieldsType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="maxPrograms" type="unsignedInt"/> </complexType><element name = "get_Data" type = "tns: get_Data" /> <complexType name = "get_Data"> <sequence> <element name = "QueryConstraints"> <complexType> <choice> <element name = "PredicateBag" type = "tns: PredicateBagType" /> <element name = "BinaryPredicate" type = "tns: BinaryPredicateType" /> <element name = "UnaryPredicate" type = "tns: UnaryPredicateType" /> </ choice> </ complexType> </ element >                                                      <element name = "RequestedTables" type = "tns: RequestedTablesType" minOccurs = "0" maxOccurs = "unbounded" /> <element name = "RequestedFields" type = "tns: RequestedFieldsType" minOccurs = "0" maxOccurs = "unbounded" />                                                      </ sequence> <attribute name = "maxPrograms" type = "unsignedInt" /> </ complexType>

표 5를 참조하면, RquestedTables 다음에 RequestedFields이 추가되어 있다. RequestedFields는 표 4의 RequestedFieldstype을 사용하며, 전술한 RequestedField 와 RequestedXPath 엘리먼트를 사용할 수 있다. Referring to Table 5, RequestedFields is added after RquestedTables. RequestedFields uses RequestedFieldstype of Table 4 and can use the above-described RequestedField and RequestedXPath elements.

다음으로, 전술한 modified get_Data() operation을 이용하여 질의를 수행하는 인스턴스의 예를 설명한다. 표 6에 도시된 바와 같이 사용자(또는 클라이언트)는 RequestedField에서 fieldID가 "tvaf:ServiceURL"이고 그 값은 "tv://7" 또는 "tv://9"인 부분을 요청(질의)하고 있다. 그리고, 질의 결과값의 유형으로서, RequestedTables을 "ProgramLocation Table"로 지정하고, RequestedFields의 fieldID를 "tvaf:CRID", "tvaf:Genre", "tvaf:Title", "tvaf:ProgramURL", "tvaf:PublishedStart", "tvaf:PublishedDuration"을 지정하고 있으며, RequestedXPath를Next, an example of an instance performing a query using the modified get_Data () operation described above will be described. As shown in Table 6, the user (or client) requests (query) the field in the RequestedField whose fieldID is "tvaf: ServiceURL" and its value is "tv: // 7" or "tv: // 9". . As the type of the query result value, RequestedTables is designated as "ProgramLocation Table", and the fieldID of RequestedFields is "tvaf: CRID", "tvaf: Genre", "tvaf: Title", "tvaf: ProgramURL", "tvaf: PublishedStart "," tvaf: PublishedDuration ", and RequestedXPath

"/TVAMain/ProgramDescription/ProgramReviewTable/Review/FreeTextReview/text()"로 지정하고 있다. It is specified in "/ TVAMain / ProgramDescription / ProgramReviewTable / Review / FreeTextReview / text ()".

<?xml version="1.0" encoding="UTF-8"?> <tns:get_Data xmlns:tns="urn:tva:transport:2002" xmlns:cr="http://www.tv-anytime.org/2002/06/ContentReferencing" xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001" xmlns:p3p="http://www.w3.org/2002/01/P3Pv1" xmlns:rar="http://www.tv-anytime.org/2002/06/ResolvingAuthority" xmlns:tva="urn:tva:metadata:2002" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:tva:transport:2002 tva_transport_types_v10.xsd"> <tns:QueryConstraints> <tns:PredicateBag type="OR"> <tns:BinaryPredicate fieldID="tvaf:ServiceURL" fieldValue="tv://7"/> <tns:BinaryPredicate fieldID="tvaf:ServiceURL" fieldValue="tv://9"/> </tns:PredicateBag> </tns:QueryConstraints> <tns:RequestedTables> <tns:Table type="ProgramLocationTable"/> </tns:RequestedTables> <tns:RequestedFields> <tns:RequestedField fieldID="tvaf:CRID"/> <tns:RequestedField fieldID="tvaf:Genre"/> <tns:RequestedField fieldID="tvaf:Title"/> <tns:RequestedField fieldID="tvaf:ProgramURL"/> <tns:RequestedField fieldID="tvaf:PublishedStart"/> <tns:RequestedField fieldID="tvaf:PublishedDuration"/> <tns:RequestedXPath XPath="/TVAMain/ProgramDescription/ProgramReviewTable/Review/FreeTextReview/text()"/> </tns:RequestedFields> </tns:get_Data><? xml version = "1.0" encoding = "UTF-8"?> <tns: get_Data xmlns: tns = "urn: tva: transport: 2002" xmlns: cr = "http://www.tv-anytime.org / 2002/06 / ContentReferencing "xmlns: mpeg7 =" urn: mpeg: mpeg7: schema: 2001 "xmlns: p3p =" http://www.w3.org/2002/01/P3Pv1 "xmlns: rar =" http: //www.tv-anytime.org/2002/06/ResolvingAuthority "xmlns: tva =" urn: tva: metadata: 2002 "xmlns: xsi =" http://www.w3.org/2001/XMLSchema-instance " xsi: schemaLocation = "urn: tva: transport: 2002 tva_transport_types_v10.xsd">                                                  <tns: QueryConstraints> <tns: PredicateBag type = "OR"> <tns: BinaryPredicate fieldID = "tvaf: ServiceURL" fieldValue = "tv: // 7" /> <tns: BinaryPredicate fieldID = "tvaf: ServiceURL" fieldValue = "tv: // 9" /> </ tns: PredicateBag> </ tns: QueryConstraints> <tns: RequestedTables> <tns: Table type = "ProgramLocationTable" /> </ tns: RequestedTables> <tns: RequestedFields> <tns : RequestedField fieldID = "tvaf: CRID" /> <tns: RequestedField fieldID = "tvaf: Genre" /> <tns: RequestedField fieldID = "tvaf: Title" /> <tns: RequestedField fieldID = "tvaf: ProgramURL" /> <tns: RequestedField fieldID = "tvaf: PublishedStart" /> <tns: RequestedField fieldID = "tvaf: PublishedDuration" /> <tns: RequestedXPath XPath = "/ TVAMain / ProgramDescription / ProgramReviewTable / Review / FreeTextReview / text ()" /> </ tns: RequestedFields> </ tns: get_Data>

표 7은 표 6의 질의 인스턴스에 대한 응답 인스턴스를 예시하고 있으며, 표 6의 검색 조건에 따라 ProgramInformationTable에서 fieldID가 "tvaf:CRID", "tvaf:Genre", "tvaf:Title", "tvaf:ProgramURL", "tvaf:PublishedStart", "tvaf:PublishedDuration"이고, RequestedXPath가Table 7 illustrates the response instances for the query instances in Table 6, with fieldIDs of "tvaf: CRID", "tvaf: Genre", "tvaf: Title", and "tvaf: ProgramURL" in the ProgramInformationTable according to the search conditions in Table 6. "," tvaf: PublishedStart "," tvaf: PublishedDuration ", and RequestedXPath is

"/TVAMain/ProgramDescription/ProgramReviewTable/Review/FreeTextReview/text()"인 검색 결과값을 추출하여 반환하고 있다.The search result value "/ TVAMain / ProgramDescription / ProgramReviewTable / Review / FreeTextReview / text ()" is extracted and returned.

<?xml version="1.0" encoding="UTF-8"?> <tns:get_Data_Result xmlns:tns="urn:tva:transport:2002" xmlns:cr=http://www.tv-anytime.org/2002/06/ContentReferencing xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001" xmlns:p3p=http://www.w3.org/2002/01/P3Pv1 xmlns:rar="http://www.tv-anytime.org/2002/06/ResolvingAuthority" xmlns:tva="urn:tva:metadata:2002" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:tva:transport:2002 F:\Doc\WORKINDOC\Project\부품소재\작성문서\메타데이타정의\sp006test\tva_transport_types_v10.xsd" serviceVersion="1" truncated="false"> <tns:TableSortingInformation> <tns:Table type="ProgramLocationTable"> <tns:SortCriteria fieldID="tvaf:CRID"/> </tns:Table> <tns:Table type="ProgramInformationTable"> <tns:SortCriteria fieldID="tvaf:CRID"/> </tns:Table> </tns:TableSortingInformation> <tva:TVAMain> <tva:ProgramDescription> <tva:ProgramInformationTable> <tva:ProgramInformation programId="CRID://www.kbs.co.kr:cultural/specialreport_7"> <tva:BasicDescription> <tva:Title>시아파의 선택 혁명 25주년의 이란</tva:Title> <tva:Genre href="urn:tva:metadata:cs:ContentCS:2002" type="main"> <tva:Name>Cultural</tva:Name> </tva:Genre> <tva:Genre href="urn:tva:metadata:cs:ContentCS:2002" type="secondary"> <tva:Name>Local/regional</tva:Name> </tva:Genre> </tva:BasicDescription> </tva:ProgramInformation><? xml version = "1.0" encoding = "UTF-8"?> <tns: get_Data_Result xmlns: tns = "urn: tva: transport: 2002" xmlns: cr = http: //www.tv-anytime.org/ 2002/06 / ContentReferencing xmlns: mpeg7 = "urn: mpeg: mpeg7: schema: 2001" xmlns: p3p = http: //www.w3.org/2002/01/P3Pv1 xmlns: rar = "http: // www. tv-anytime.org/2002/06/ResolvingAuthority "xmlns: tva =" urn: tva: metadata: 2002 "xmlns: xsi =" http://www.w3.org/2001/XMLSchema-instance "xsi: schemaLocation = "urn: tva: transport: 2002 F: \ Doc \ WORKINDOC \ Project \ Part Materials \ Creation Documents \ Metadata Definition \ sp006test \ tva_transport_types_v10.xsd" serviceVersion = "1" truncated = "false">                                                  <tns: TableSortingInformation> <tns: Table type = "ProgramLocationTable"> <tns: SortCriteria fieldID = "tvaf: CRID" /> </ tns: Table> <tns: Table type = "ProgramInformationTable"> <tns: SortCriteria fieldID = "tvaf: CRID" /> </ tns: Table> </ tns: TableSortingInformation> <tva: TVAMain> <tva: ProgramDescription> <tva: ProgramInformationTable> <tva: ProgramInformation programId = "CRID: //www.kbs.co .kr: cultural / specialreport_7 "> <tva: BasicDescription> <tva: Title> Iranian 25th Anniversary of the Shiite Choice Revolution </ tva: Title> <tva: Genre href =" urn: tva: metadata: cs: ContentCS: 2002 "type =" main "> <tva: Name> Cultural </ tva: Name> </ tva: Genre> <tva: Genre href =" urn: tva: metadata: cs: ContentCS: 2002 "type =" secondary "> <tva: Name> Local / regional </ tva: Name> </ tva: Genre> </ tva: BasicDescription> </ tva: ProgramInformation>

<tva:ProgramInformation programId="CRID://www.keti.re.kr:drama/wanggun"> <tva:BasicDescription> <tva:Title>태조 왕건</tva:Title> <tva:Genre href="urn:tva:metadata:cs:ContentCS:2002" type="main"> <tva:Name>FICTION</tva:Name> </tva:Genre> <tva:Genre href="urn:tva:metadata:cs:ContentCS:2002" type="secondary"> <tva:Name>HISTORICAL/EPIC</tva:Name> </tva:Genre> </tva:BasicDescription> </tva:ProgramInformation> </tva:ProgramInformationTable> <tva:ProgramLocationTable> <tva:BroadcastEvent serviceIDRef="9"> <tva:Program crid="CRID://www.kbs.co.kr:cultural/specialreport_7"/> <tva:ProgramURL>ftp://203.253.130.21/images/230x158/news9.tar</tva:ProgramURL> <tva:PublishedStartTime>2004-09-07T11:00:00.00+09:00</tva:PublishedStartTime> <tva:PublishedDuration>PT55M</tva:PublishedDuration> </tva:BroadcastEvent> <tva:BroadcastEvent serviceIDRef="9"> <tva:Program crid="CRID://www.keti.re.kr:drama/wanggun"/> <tva:ProgramURL>ftp://203.253.130.21/images/230x158/wanggun.tar</tva:ProgramURL> <tva:PublishedStartTime>2003-10-20T21:00:00.00+09:00</tva:PublishedStartTime> <tva:PublishedDuration>PT9M23S</tva:PublishedDuration> </tva:BroadcastEvent> </tva:ProgramLocationTable> <tva:ProgramReviewTable> <tva:Review programId="CRID://www.keti.re.kr:drama/wanggun"> <tva:FreeTextReview>후삼국의 혼란기와 고려 성립의 새로운 역사 현장을 생생하게 보여주는 훌륭한 드라마</tva:FreeTextReview> </tva:Review> </tva:ProgramReviewTable> </tva:ProgramDescription> </tva:TVAMain> <tns:InvalidFragments/> </tns:get_Data_Result>          <tva: ProgramInformation programId = "CRID: //www.keti.re.kr: drama / wanggun"> <tva: BasicDescription> <tva: Title> Tempered Wang Gun </ tva: Title> <tva: Genre href = "urn : tva: metadata: cs: ContentCS: 2002 "type =" main "> <tva: Name> FICTION </ tva: Name> </ tva: Genre> <tva: Genre href =" urn: tva: metadata: cs: ContentCS: 2002 "type =" secondary "> <tva: Name> HISTORICAL / EPIC </ tva: Name> </ tva: Genre> </ tva: BasicDescription> </ tva: ProgramInformation> </ tva: ProgramInformationTable> <tva : ProgramLocationTable> <tva: BroadcastEvent serviceIDRef = "9"> <tva: Program crid = "CRID: //www.kbs.com: cultural / specialreport_7" /> <tva: ProgramURL> ftp: //203.253. 130.21 / images / 230x158 / news9.tar </ tva: ProgramURL> <tva: PublishedStartTime> 2004-09-07T11: 00: 00.00 + 09: 00 </ tva: PublishedStartTime> <tva: PublishedDuration> PT55M </ tva: PublishedDuration > </ tva: BroadcastEvent> <tva: BroadcastEvent serviceIDRef = "9"> <tva: Program crid = "CRID: //www.keti.re.kr: drama / wanggun" /> <tva: ProgramURL> ftp: / /203.253.130.21/images/230x158/wanggun.tar </ tva: ProgramURL> <tva: PublishedStartTime> 2003-10-20T21: 00: 00.00 + 09: 00 </ tva: PublishedStartTime> <tva: PublishedDuration> PT9M23S </ tva: PublishedDuration> </ tva: BroadcastEvent> </ tva: ProgramLocationTable> <tva: ProgramReviewTable> <tva: Review programId = "CRID: //www.keti.re.kr: drama / wanggun"> <tva: FreeTextReview> Disruption of the Three Kingdoms and New History of Koryo Great drama shows vividly </ tva: FreeTextReview> </ tva: Review> </ tva: ProgramReviewTable>                                              </ tva: ProgramDescription> </ tva: TVAMain> <tns: InvalidFragments /> </ tns: get_Data_Result>

이상 본 발명의 바람직한 실시예를 설명하였으나, 이는 예시를 위한 것이며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진자라면 본 발명의 사상을 벗어나지 않는 범위 내에서 다양하게 변형 또는 수정할 수 있을 것이다. 따라서, 본 발명의 보호 범위는 전술한 실시예에 국한되지 아니하며, 이하의 특허청구범위에 의하여 결정된다.Although the preferred embodiment of the present invention has been described above, this is for the purpose of illustration, and those skilled in the art to which the present invention pertains may make various changes or modifications without departing from the spirit of the present invention. Therefore, the protection scope of the present invention is not limited to the above-described embodiment, but is determined by the following claims.

설명한 바와 같이, 본 발명에 따르면, TV-Anytime 표준의 get_Data() 오퍼레이션에 있어서 Field 단위의 반환 결과값을 요청할 수 있도록 하여 클라이언트가 원하는 메타데이터를 선별적으로 반환할 수 있다. 즉, 메타데이터 서비스의 클라이언트는 테이블 단위 및/또는 테이블의 필드 단위로 메타데이터 질의 결과를 수신할 수 있고, 이에 따라 사용자가 원하는 메타데이터만을 선별적으로 수신할 수 있기 때문에, 메타데이터의 전송 및 클라이언트의 재파싱 부하를 현저히 감소시킬 수 있다. 한편, 본 발명은 통상의 셋톱 박스 환경에서도 전술한 장점을 구현할 수 있으며, 포터블 미디어 플레이어와 같이 프로세싱 자원이 한정되어 있는 클라이언트 환경에서 더욱 유리하게 사용될 수 있다.As described above, according to the present invention, the get_Data () operation of the TV-Anytime standard enables requesting a return result value in units of fields, thereby selectively returning metadata desired by the client. That is, the client of the metadata service may receive the metadata query result in table units and / or field units of the table, and thus may selectively receive only metadata desired by the user. The reparsing load on the client can be significantly reduced. Meanwhile, the present invention can implement the above-mentioned advantages even in a typical set-top box environment, and can be more advantageously used in a client environment where processing resources are limited, such as a portable media player.

한편, 본 발명에 있어서, 클라이언트가 요청하는 필드 단위로 메타데이터를 가공하기 위해서는 서버측에서 추가적 프로세싱이 필요할 수 있으나, 서비스 에이전트의 서버는 클라이언트 환경과 비교할 때 대용량 환경임을 감안하면, 본 발명으로 인하여 클라이언트의 프로세싱 시간이 보다 현저하게 감소될 수 있다.On the other hand, in the present invention, in order to process the metadata in units of fields requested by the client, additional processing may be required at the server side, but considering that the server of the service agent is a large environment compared to the client environment, The processing time of the client can be reduced more significantly.

Claims (11)

SOAP 질의 오퍼레이션을 이용하여 TV-Anytime 메타데이터를 제공하는 방법으로서,A method of providing TV-Anytime metadata using a SOAP query operation, (a) 상기 SOAP 질의 오퍼레이션에서, 질의 결과값 유형에 메타데이터 테이블의 필드를 지정할 수 있는 요청필드유형(RequestedFieldsType)을 추가하는 단계와,(a) adding, in the SOAP query operation, a RequestedFieldsType that can specify a field of a metadata table to a query result value type; (b) 상기 SOAP 질의 오퍼레이션의 요청 메시지를 수신하는 단계와,(b) receiving a request message of the SOAP query operation; (c) 상기 요청 메시지가 질의 결과값을 지정하는 상기 요청필드유형의 엘리먼트를 포함하는 경우에, 상기 요청메시지의 요청필드유형 엘리먼트에서 지정된 테이블 필드에 해당하는 질의 결과값을 추출하고, 그 질의 결과값을 상기 SOAP 오퍼레이션의 응답 메시지에 의해 전송하는 단계(c) if the request message includes an element of the request field type specifying a query result value, extract a query result value corresponding to a table field specified in the request field type element of the request message, and query result Sending a value by a response message of the SOAP operation 를 포함하는 TV-Anytime 메타데이터 제공 방법.TV-Anytime metadata providing method comprising a. 제1항에 있어서, 상기 SOAP 질의 오퍼레이션은 get_Data() 오퍼레션인 TV-Anytime 메타데이터 제공 방법.The method of claim 1, wherein the SOAP query operation is a get_Data () operation. 제1항 또는 제2항에 있어서, 상기 (a) 단계에서 추가되는 요청필드유형의 엘리먼트는,According to claim 1 or 2, wherein the element of the request field type added in step (a), 메타데이터 테이블의 필드 아이디(fieldID)를 지정하는 요청필드 서브엘리먼트와,A request field subelement that specifies a field ID (fieldID) of the metadata table; 상기 필드 아이디(fieldID)에 대한 경로(Xpath)를 지정하는 요청경로 서브엘리먼트를 포함하는 TV-Anytime 메타데이터 제공 방법.TV-Anytime metadata providing method comprising a request path sub-element specifying a path (Xpath) for the field ID (fieldID). 제1항 또는 제2항에 있어서, 상기 (c) 단계는The method of claim 1 or 2, wherein step (c) 상기 질의 결과값에 동일한 필드 아이디(fieldID)를 갖는 중복 데이터가 존재하는 경우에, 상기 질의 결과값에서 중복 데이터를 배제하는 것인 TV-Anytime 메타데이터 제공 방법.And if duplicate data having the same field ID (fieldID) exists in the query result value, excludes duplicate data from the query result value. 제1항 또는 제2항에 있어서, 상기 메타데이터는 프로그램 기술 메타데이터(Program Description Metadata)인 TV-Anytime 메타데이터 제공 방법.The method of claim 1 or 2, wherein the metadata is program description metadata. 제5항에 있어서, 상기 (c) 단계는The method of claim 5, wherein step (c) 상기 질의 결과값에 동일한 필드 아이디(fieldID)를 갖는 중복 데이터가 존재하는 경우에, 상기 질의 결과값에서 중복 데이터를 배제하는 것인 TV-Anytime 메타데이터 제공 방법.And if duplicate data having the same field ID (fieldID) exists in the query result value, excludes duplicate data from the query result value. 제5항에 있어서, 상기 (a) 단계에서 추가되는 요청필드유형 엘리먼트는The method of claim 5, wherein the request field type element added in step (a) is 메타데이터 테이블의 필드 아이디(fieldID)를 지정하는 요청필드 서브엘리먼트와,A request field subelement that specifies a field ID (fieldID) of the metadata table; 상기 필드 아이디(fieldID)에 대한 경로(Xpath)를 지정하는 요청경로 서브엘 리먼트를 포함하는 TV-Anytime 메타데이터 제공 방법.And a request path sub-element specifying a path (Xpath) for the field ID (fieldID). 제7항에 있어서, 상기 (c) 단계는The method of claim 7, wherein step (c) 상기 질의 결과값에 동일한 필드 아이디(fieldID)를 갖는 중복 데이터가 존재하는 경우에, 상기 질의 결과값에서 중복 데이터를 배제하는 것인 TV-Anytime 메타데이터 제공 방법.And if duplicate data having the same field ID (fieldID) exists in the query result value, excludes duplicate data from the query result value. 제7항에 있어서, 상기 요청필드유형(RequestFiedlsType) 엘리먼트는 다음과 같이 정의되는 TV-Anytime 메타데이터 제공 방법.8. The method of claim 7, wherein the RequestFiedlsType element is defined as follows. <complexType name="RequestedFieldsType"><complexType name = "RequestedFieldsType"> <sequence><sequence> <element name="RequestedField" minOccurs="0" maxOccurs="unbounded"> <element name = "RequestedField" minOccurs = "0" maxOccurs = "unbounded"> <complexType><complexType> <sequence><sequence> <element name="SortCriteria" type="tns:SortCriteriaType" minOccurs="0" maxOccurs="unbounded"/><element name = "SortCriteria" type = "tns: SortCriteriaType" minOccurs = "0" maxOccurs = "unbounded" /> </sequence></ sequence> <attribute name="fieldID" type="tns:fieldIDType" use="required"/> <attribute name = "fieldID" type = "tns: fieldIDType" use = "required" /> </complexType></ complexType> </element></ element> <element name="RequestedXPath" minOccurs="0" maxOccurs="unbounded"> <element name = "RequestedXPath" minOccurs = "0" maxOccurs = "unbounded"> <complexType><complexType> <sequence><sequence> <element name="SortCriteria" type="tns:SortCriteriaType" minOccurs="0" maxOccurs="unbounded"/><element name = "SortCriteria" type = "tns: SortCriteriaType" minOccurs = "0" maxOccurs = "unbounded" /> </sequence></ sequence> <attribute name="XPath" type="string" use="required"/><attribute name = "XPath" type = "string" use = "required" /> </complexType></ complexType> </element></ element> </sequence></ sequence> </complexType></ complexType> 제1항 또는 제2항에 따른 TV-Anytime 메타데이터 제공 방법의 각 단계를 수행하는 명령어를 포함하는 컴퓨터 판독가능 기록매체.A computer-readable recording medium comprising instructions for performing each step of the method for providing TV-Anytime metadata according to claim 1. 제3항에 따른 TV-Anytime 메타데이터 제공 방법의 각 단계를 수행하는 명령어를 포함하는 컴퓨터 판독 가능 기록매체.A computer-readable recording medium comprising instructions for performing each step of the method for providing TV-Anytime metadata according to claim 3.
KR1020040074548A 2004-09-17 2004-09-17 Method of providing table field elements by get_data operation in tv-anytime metadata service KR100590029B1 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020040074548A KR100590029B1 (en) 2004-09-17 2004-09-17 Method of providing table field elements by get_data operation in tv-anytime metadata service
EP05106940A EP1638336A1 (en) 2004-09-17 2005-07-27 Method for providing requested fields by get-data operation in TV-Anytime metadata service
US11/192,057 US7917529B2 (en) 2004-09-17 2005-07-29 Method for providing requested fields by get—Data operation in TV-Anytime metadata service
JP2005259706A JP4280737B2 (en) 2004-09-17 2005-09-07 Request field providing method using get_Data operation in TV-Anytime metadata service
CNB2005101034330A CN100444635C (en) 2004-09-17 2005-09-15 Method for providing requested fields by get-data operation in TV-Anytime metadata service
US13/014,098 US8060526B2 (en) 2004-09-17 2011-01-26 Method for providing requested fields by get—Data operation in TV-Anytime metadata service
US13/014,203 US8055676B2 (en) 2004-09-17 2011-01-26 Method for providing requested fields by get—Data operation in TV-anytime metadata service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040074548A KR100590029B1 (en) 2004-09-17 2004-09-17 Method of providing table field elements by get_data operation in tv-anytime metadata service

Publications (2)

Publication Number Publication Date
KR20060025748A KR20060025748A (en) 2006-03-22
KR100590029B1 true KR100590029B1 (en) 2006-06-14

Family

ID=36605867

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040074548A KR100590029B1 (en) 2004-09-17 2004-09-17 Method of providing table field elements by get_data operation in tv-anytime metadata service

Country Status (2)

Country Link
KR (1) KR100590029B1 (en)
CN (1) CN100444635C (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100737801B1 (en) 2004-12-30 2007-07-10 전자부품연구원 Method for delivering non-anonymous user metadata using an soap operation

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100590030B1 (en) * 2004-09-17 2006-06-19 전자부품연구원 Method using an soap operation for leaving out user metadata managed by tv-anytime metadata server
KR100697536B1 (en) * 2005-11-08 2007-03-20 전자부품연구원 Method of providing personal information based search by get_data operation in tv-anytime service
KR100889744B1 (en) * 2006-12-08 2009-03-24 한국전자통신연구원 IPTV supplementary service control system and method
KR100936241B1 (en) * 2007-09-03 2010-01-12 전자부품연구원 Method for searching content by a soap operation
KR100936240B1 (en) * 2007-09-03 2010-01-12 전자부품연구원 Method for searching content by a soap operation
EP2235943A4 (en) 2007-11-30 2014-02-12 Samsung Electronics Co Ltd Method and apparatus for searching for iptv service relay devices and method and apparatus for interacting with devices
MX2010008642A (en) * 2008-02-05 2010-12-14 Samsung Electronics Co Ltd A method and device for sending and receiving metadata for an application providing an iptv service.
KR101582092B1 (en) 2008-03-28 2016-01-04 삼성전자주식회사 IPTV Method and apparatus for receiving information of application to provide IPTV communication service
KR101661210B1 (en) 2008-07-24 2016-09-29 삼성전자주식회사 Method and apparatus for performing IPTV communication service

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6102969A (en) 1996-09-20 2000-08-15 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US20030212673A1 (en) * 2002-03-01 2003-11-13 Sundar Kadayam System and method for retrieving and organizing information from disparate computer network information sources

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR0303377A (en) * 2002-03-14 2004-03-23 Koninkl Philips Electronics Nv Method and apparatus for finding network TV services at any time, method and server system for providing access to TV network services at any time, method for exploiting network sites, and server system for providing urls for network services. tv network anytime over a network
BR0306986A (en) * 2002-07-23 2005-06-28 Samsung Electronics Co Ltd Structure of fragmented metadata index and computer readable media
KR100493896B1 (en) * 2003-04-18 2005-06-10 삼성전자주식회사 Method and Apparatus for Transforming Digital Content Metadata, and Network System Using the Same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6102969A (en) 1996-09-20 2000-08-15 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US20030212673A1 (en) * 2002-03-01 2003-11-13 Sundar Kadayam System and method for retrieving and organizing information from disparate computer network information sources

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100737801B1 (en) 2004-12-30 2007-07-10 전자부품연구원 Method for delivering non-anonymous user metadata using an soap operation

Also Published As

Publication number Publication date
CN1750640A (en) 2006-03-22
CN100444635C (en) 2008-12-17
KR20060025748A (en) 2006-03-22

Similar Documents

Publication Publication Date Title
US8060526B2 (en) Method for providing requested fields by get—Data operation in TV-Anytime metadata service
US7844644B2 (en) Method and apparatus for managing data written in markup language and computer-readable recording medium for recording a program
US7725917B2 (en) Method for delivering non-anonymous user metadata using an soap operation in TV anytime metadata service
CN100444635C (en) Method for providing requested fields by get-data operation in TV-Anytime metadata service
US7822716B2 (en) Method for deleting user metadata managed by a TV-Anytime metadata server using an SOAP operation
KR100696949B1 (en) Method of providing requestedfieldstype by get_data operation in tv-anytime service
KR100679314B1 (en) Method of publishing tv-anytime metadata by a soap operation
KR100697536B1 (en) Method of providing personal information based search by get_data operation in tv-anytime service
JP5114547B2 (en) Inquiry content service method using SOAP operation
KR100590028B1 (en) Method of creating and managing content lists for portable media players
KR100737801B1 (en) Method for delivering non-anonymous user metadata using an soap operation
KR100590030B1 (en) Method using an soap operation for leaving out user metadata managed by tv-anytime metadata server
KR100936240B1 (en) Method for searching content by a soap operation
KR100936241B1 (en) Method for searching content by a soap operation
KR100644281B1 (en) Method for uploading and clearing non-anonymous user metadata using an soap operation

Legal Events

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

Payment date: 20130313

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140519

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150527

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160512

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170530

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee