KR101076354B1 - 모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법및 시스템 - Google Patents

모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법및 시스템 Download PDF

Info

Publication number
KR101076354B1
KR101076354B1 KR1020080018814A KR20080018814A KR101076354B1 KR 101076354 B1 KR101076354 B1 KR 101076354B1 KR 1020080018814 A KR1020080018814 A KR 1020080018814A KR 20080018814 A KR20080018814 A KR 20080018814A KR 101076354 B1 KR101076354 B1 KR 101076354B1
Authority
KR
South Korea
Prior art keywords
content
enabler
delivery
external
metadata
Prior art date
Application number
KR1020080018814A
Other languages
English (en)
Other versions
KR20080086813A (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 KR20080086813A publication Critical patent/KR20080086813A/ko
Application granted granted Critical
Publication of KR101076354B1 publication Critical patent/KR101076354B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2876Pairs of inter-processing entities at each side of the network, e.g. split proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

모바일 전달 프레임워크에서 컨텐츠 처리를 조정하기 위한 방법 및 시스템이고, 상기 방법은 컨텐츠와 연관된 메타데이터 엔벨로프 내부에 외부 인에이블러에 대한 외부 참조를 삽입하는 단계와; 상기 메타데이터 엔벨로프 내에 컨텐츠 처리 조정 규칙을 삽입하는 단계를 포함한다.

Description

모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법 및 시스템 {METHOD AND SYSTEM FOR ORCHESTRATION OF CONTENT PROCESSING IN MOBILE DELIVERY FRAMEWORKS}
본 발명은 일반적으로 모바일 컨텐츠 전달에 관한 것으로, 보다 구체적으로는 모바일 컨텐츠 전달을 용이하게 하기 위한 인에이블러(enabler)의 사용에 관한 것이다.
모바일 장치 또는 모바일 사용자 장비(UE)의 사용자들은, 사용자가 자신의 모바일 장치에 요구하는 기능성 및 사용자가 모바일 장치로부터의 데이터를 액세스하는 방법의 관점에서 점점 더 세련되어 가고 있다.
동적 컨텐츠 전달은, 사용자로 하여금 데이터를 찾게 하는 것이 아니라 가입된 정보 또는 데이터가 사용자에게 동적으로 전달되도록 허용한다. 데이터의 예로, 주식 시세, 날씨 최신 정보, 교통 최신 정보, 동적 배경 무늬, 광고, 애플리케이션 또는 사용자에게 바람직한 다른 데이터를 들 수 있다.
컨텐츠 전달은 대개 서버 측 및 장치 측 양자 모두에서 다양한 인에이블러를 요구한다. 이러한 인에이블러는 전달 인에이블러의 코어 기능성 부분이 아니므로, 다른 인에이블러와 함께 컨텐츠 처리를 조정하기 위한 시스템 및 방법이 요구된다.
본 시스템 및 방법은 모바일 컨텐츠 전달 메타데이터 내부에 외부 참조 및 컨텐츠 처리 조정 규칙의 삽입을 제공할 수 있다. 특히, 모바일 전달 메타데이터에 대한 조정 규칙을 XML 패키지형 상태 차트로서 표현하기 위한 방법이 제공된다.
컨텐츠 제공자는 전달 프레임워크 내에 다양한 처리 엘리먼트에 대한 메타데이터를 삽입할 수 있다. 메타데이터에는, 컨텐츠 전달 인에이블러에 대한 명령어가 포함된다. 게다가, 외부 명칭공간(namespace) 선언문이 외부 인에이블러에 제공될 수 있다. 외부 인에이블러로의 바인딩을 표현하는 XML 스키마(schemas)를 참조하는 명칭공간은 컨텐츠 패키지가 전달되는 동안에 모바일 컨텐츠의 처리를 조정하기 위해 포함될 수 있다. 이것은, 대응하는 XML 스키마에 정의된 엘리먼트들과 속성들을 그 처리 상태에 대한 XML 엘리먼트 내에 삽입함으로써 달성된다.
실행 동사(action verb)는 조정 명령어를 외부 인에이블러 기능에 맵핑하는데 사용될 수 있다. 이러한 레벨의 우회(this level of indirection)는 서비스 간의 낮은 결합성을 허용한다.
그러므로, 본 발명은 모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법으로서, 컨텐츠와 연관된 메타데이터 엔벨로프(metadata envelope) 내부에, 외부 인에이블러에 대한 외부 참조를 삽입하는 단계와; 상기 메타데이터 엔벨로프 내에 컨텐츠 처리 조정 규칙을 삽입하는 단계를 포함한다.
또한, 본 발명은 컨텐츠 처리를 조정하기 위한 시스템으로서, 컨텐츠 제공자에 의해 공급된 컨텐츠와 연관되는 모바일 컨텐츠 전달 메타데이터 내에 외부 참조 및 컨텐츠 처리 조정 규칙을 삽입하도록 구성된 컨텐츠 제공자와; 컨텐츠 전달 인에이블러를 포함하고, 상기 컨텐츠 전달 인에이블러는, 전달 서버로 보내진 메타데이터를 처리하도록 구성된 전달 서버와; 전달 클라이언트로 보내진 메타데이터를 처리하도록 구성된 전달 클라이언트와; 상기 컨텐츠 전달 인에이블러를 통해 상기 컨텐츠 처리 조정 규칙에 기초하여 컨텐츠를 처리하도록 구성된 외부 인에이블러와; 상기 컨텐츠 제공자로부터의 컨텐츠를 소비하도록 구성된 컨텐츠 클라이언트를 포함한다.
또한, 본 발명은 컨텐츠와, 외부 인에이블러에 대한 외부 참조 및 컨텐츠 처리 조정 규칙을 삽입하고 있는 메타데이터 엔벨로프를 포함하는 컨텐츠 패키지를 더 제공할 수 있다.
본 발명에 따르면, 본 발명의 방법 및 시스템은 인에이블러를 사용하여 모바일 컨텐츠 전달을 용이하게 하게 할 수 있다.
도면들을 참조하면 본 발명을 보다 이해하기 쉬울 것이다.
이제, 도 1을 참조한다. 클라이언트 애플리케이션에 동적 컨텐츠를 전달하기 위한 푸시 시스템이 나타나 있다. 도 1의 시스템은 간략화된 시스템으로서, 동적 컨텐츠 전달 구조에서 필요한 논리 엘리먼트들을 도시한다. 그러나 당업자라면 이해할 수 있는 바와 같이, 다른 엘리먼트들이 존재할 수 있으며, 다양한 엘리먼트들이 함께 그룹화될 수 있다.
구조(100)는 컨텐츠 제공자(110)를 포함한다. 컨텐츠 제공자(110)는 사용자들에게 동적 컨텐츠를 제공하기 위해 배치된다. 이것은 예를 들어 웹사이트에서 판매하는 책들을 포함할 수 있다. 컨텐츠 제공자(110)는 새롭게 발간된 책들의 리스트를 주기적으로 제공하여, 이 리스트를 그 웹사이트에 가입되어 있는 가입자 또는 가입을 관리하는 전달 서버에 보낼 수 있다.
전달 서버(120)는 무선 네트워크(130)를 통해, 바람직한 실시예에서 모바일 장치상에 위치해 있는 전달 클라이언트(140)와 통신한다. 전달 클라이언트(140)는 컨텐츠 제공자(110)로부터 전달되고 있는 컨텐츠를 수신하고, 그 컨텐츠를 컨텐츠 클라이언트(150)에 전달한다. 결국, 컨텐츠 클라이언트(150)는 컨텐츠를 소비한다.
당업자라면 이해할 수 있는 바와 같이, 본 발명의 인에이블러는 프레임워크와 균등물이다. 따라서, 전달 인에이블러는 전달 서버(120)와 전달 클라이언트(140)를 포함한다.
당업자라면 이해할 수 있는 바와 같이, 컨텐츠 클라이언트(150)에 컨텐츠를 전달하기 위해 다양한 외부 기능들이 요구될 수 있다. 이 외부 기능들은, 서버 측(102) 및 장치 측(104) 모두에 존재할 수 있다. 도 1에서, 이 외부 기능들은 서버 측(102) 상에서는 외부 기능들(132, 134, 및 136)로, 장치 측(104) 상에서는 외부 기능들(144, 146 및 148)로서 도시되어 있다. 외부 기능들의 예들로는 프레즌스, 위치, 컨텐츠 스크리닝, 및 압축 등을 포함할 수 있지만 이들에 한정되지 않는 다.
이제, 도 2를 참조한다. 시스템에 지능을 부가하기 위해서, 컨텐츠는 메타데이터와 연관된다. 이 경우에, 메타데이터는 컨텐츠를 조작하기 위해 처리 엘리먼트에 의해 사용될 수 있는 데이터로서 정의된다. 이해되는 바와 같이, 일반 컨텐츠 전달 시스템은, 시스템 내에 다양한 컨텐츠 제공자 및 컨텐츠 클라이언트가 존재하도록 메타데이터가 허용할 것을 요구한다. 메타데이터는 처리 파라미터 또는 규칙, 또는 처리 핸들러, 처리 핸들러에 직접 제공된 코드 또는 참조 또는 처리 핸들러로의 링크, 다른 위치의 코드 또는 규칙을 포함하는 다양한 형태일 수 있다.
도 2에 도시된 바와 같이, 컨텐츠는 화살표(210)에 의해 나타난 바와 같이, 컨텐츠 제공자(110)로부터 컨텐츠 클라이언트(150)에 전달된다. 구조(100) 내의 다양한 엘리먼트들에 명령어를 제공하는 메타데이터는, 보통 컨텐츠와 함께, 구조(100) 내의 엘리먼트들 사이에 전달될 수 있다. 예를 들면, 화살표(220)는 컨텐츠 제공자(110)에서 발생한, 컨텐츠 클라이언트에 대한 메타데이터를 나타내고, 이것이 컨텐츠 클라이언트(150)에 도달할 때까지 전달 시스템에는 불투명하다(opaque).
화살표(230)는 전달 클라이언트(140)를 대상으로 하여 전달 클라이언트(140)로만 흐르는, 컨텐츠 제공자(110)에 의해 생성된 메타데이터를 도시한다.
화살표(240)는 전달 클라이언트(140)를 대상으로 한, 전달 서버(120)에 의해 발생된 메타데이터를 나타낸 것으로, 이 메타데이터는 먼저 전달 서버(120)에서 컨텐츠와 연관되고 전달 클라이언트(140)에서 컨텐츠로부터 제거된다. 이것이 발생할 수 있는 경우에 대한 예로는, 과금 계획 및 제공될 수 있는 서비스 레벨에 관해서 사용자와 서비스 제공자 간의 동의를 포함하고, 여기서 서비스 제공자는 이용 가능한 서비스를 제한하기 위해 또는 개선된 서비스를 제공하기 위해 메타데이터를 사용할 수 있다.
이제 도 3을 참조한다. 도 3은 컨텐츠 메타데이터에 대한 다층화된 엔벨로프 모델을 나타낸다.
전달 서버(120)는 자신에 대한 컨텐츠 처리 메타데이터(312)와 전달 클라이언트 엔벨로프(314)를 포함하는 푸시 엔벨로프(310)를 수신한다. 전달 서버(120)는 컨텐츠 처리 메타데이터(312)를 추출하여, 전달 클라이언트 엔벨로프(314)를 처리하는데 이 메타데이터를 사용한다. 메타데이터(312)는 전달 클라이언트 엔벨로프(314)를 어떻게 해야할지를 전달 서버(120)에 지시한다.
전달 클라이언트 엔벨로프(314)는 전달 클라이언트(140)에 전달되고, 여기서 전달 클라이언트 엔벨로프(314)는 컨텐츠 엔벨로프(320)와 컨텐츠 처리 메타데이터(322)로 분리된다. 컨텐츠 처리 메타데이터(322)는 전달 클라이언트(140)에 의해 컨텐츠 엔벨로프(320)를 처리하기 위해서 사용된다. 예를 들면, 이것은 컨텐츠 클라이언트(150)가 컨텐츠의 최근 버전에만 관심을 갖는다면, 이전에 전달된 컨텐츠 엔벨로프(320)를 최근의 엔벨로프로 교체하도록 전달 클라이언트(140)에 명령하는데 사용될 수 있다.
컨텐츠 엔벨로프(320)는 컨텐츠 클라이언트(150)에 전달된다. 컨텐츠 엔벨로프(320)는 컨텐츠 클라이언트(150)에 대한 컨텐츠 처리 메타데이터(330)와 컨텐츠 클라이언트(150)에 의해 소비될 컨텐츠 페이로드(332)를 포함한다.
당업자라면 이해할 수 있는 바와 같이, 도 3에 따라 엔벨로프를 네스팅(nesting)하는 것은, 구조의 임의의 처리 엘리먼트에서 처리가 발생할 수 있고, 컨텐츠 제공자(110)가 특정 컨텐츠를 다루는 방법을 규정할 수 있는, 풍부한 동적 환경을 제공한다. 한 실시예에서, 메타데이터는 특정 논리 엘리먼트에 지시되고, 다른 처리 엘리먼트들에는 보이지 않는다(opaque).
추가로 이해되는 바와 같이, 메타데이터는 컨텐츠 전달의 다양한 단계들에서 포함될 수 있다. 예를 들면, 메타데이터는 전달 서버(120)와 전달 클라이언트(140) 사이에서만 요구될 수 있어서, 컨텐츠 클라이언트(150)에 대한 메타데이터는 포함되지 않을 수 있다.
다른 대안들이 당업자에게 명백하게 이해될 것이다.
전술한 것은 컨텐츠 전달 인에이블러에 대한 메타데이터를 설명한 것이지만, 일부의 경우에서, 컨텐츠 클라이언트(150)에 컨텐츠를 전달하면서 다른 프레임워크 및 인에이블러를 관여시키기 위해서 모바일 컨텐츠 전달 인에이블러가 필요할 수 있다. 유사하게, 컨텐츠 클라이언트(150)에 컨텐츠를 전달하면서 다른 프레임워크 및 인에이블러를 관여시키기 위해서 전달 인에이블러가 필요할 수 있다. 전술한 바와 같이, 외부 기능들의 예들로는 프레즌스, 위치, 컨텐츠 스크리닝, 및 압축 등을 포함한다. 예를 들어, 외부 인에이블러는 프레즌스 인에이블러(presence enabler)일 수 있다. 사용자는, 데이터 로밍 요금을 피하기 위해서 사용자가 홈 네트워크에 있는 경우에만 특정 컨텐츠가 전달되어야 한다는 규칙을 규정할 수 있다. 이러한 인에이블러는, 모바일 장치가 위치된 곳을 찾기 위해서 위치 인에이블러와 같은 다 른 인에이블러의 기능성을 사용할 필요가 있다.
인에이블러의 다른 예들로, 특정 타입의 컨텐츠가 모바일 장치에 전달되지 못하게 하는 컨텐츠 스크리닝을 들 수 있다.
장치 측 상에서, 인에이블러의 예는, 특정 컨텐츠가 컨텐츠 클라이언트(150)에 전달되기 전에 그 특정한 컨텐츠의 압축을 풀 필요가 있는 압축 인에이블러일 수 있다.
통상, 컨텐츠 전달 인에이블러는 외부 인에이블러의 기능성을 갖지 않으므로, 풍부한 컨텐츠 전달 프레임워크를 제공하기 위해 외부 인에이블러에 액세스할 필요가 있다.
당업자라면 이해할 수 있는 바와 같이, 컨텐츠는 전달 프레임워크에서는 보이지 않아야 한다. 그러므로, 외부 컨텐츠 처리에 대한 필요성을 지시하고, 이 처리를 조정하기 위한 유일한 방법은 메타데이터의 사용을 통하는 것이다.
이제, 도 4를 참조한다. 도 4는 도 1의 컨텐츠 제공자(110)와 같은 컨텐츠 제공자로부터 수신된 예시적인 컨텐츠 패키지(410)를 나타낸다.
컨텐츠 패키지(410)는 컨텐츠(412)와 메타데이터 엔벨로프(420)를 포함한다. 전술한 바와 같이, 컨텐츠(412)는 전달 프레임워크에는 보이지 않아야 한다. 그러므로, 외부 컨텐츠 처리에 대한 필요성을 지시하고, 이 처리를 조정하기 위한 유일한 방법은 메타데이터 엔벨로프(420)에서 메타데이터의 사용을 통하는 것이다.
메타데이터 엔벨로프(420)는 명칭공간 선언문 박스(430)를 포함하는데, 이 명칭공간 선언문 박스(430)는 컨텐츠(412)를 처리하기 위해 사용되는 외부 서비스 에 대한 명칭공간 선언문을 허용한다. 2개의 예시적인 명칭공간 선언문이 참조 번호 435에 도시되어 있다.
게다가, 메타데이터 엔벨로프(420)는 도 1의 전달 서버(120)와 같은 전달 서버에 의한 처리를 위한 메타데이터 블록(440)을 포함하는 것이 바람직하다.
메타데이터 블록(440)은 전달 서버에 의한 처리를 위한 다양한 메타데이터를 포함한다. 메타데이터 블록(440)은 외부 기능을 관여시키기 위해 다양한 기능 블록들을 더 포함한다. 이 기능 블록들은 도 4에서 기능 블록들(442, 444)에 의해 나타난다.
또한, 메타데이터 엔벨로프(420)는 도 1의 전달 클라이언트(140)와 같은 전달 클라이언트에 의한 처리를 위한 메타데이터 블록(450)을 포함한다. 메타데이터 블록(450)은 기능 블록들(452, 454)과 함께 전달 클라이언트에 의해 처리되는 메타데이터를 포함한다.
당업자라면 이해할 수 있는 바와 같이, 블록(450)에서 외부 기능들을 관여시키기 위해서 2개의 기능 블록들의 사용은 단지 예시일 뿐이며, 본 발명이 외부 기능 블록에 의해 관여되는 특정한 개수의 외부 기능들로 한정되는 것을 의미하는 것이 아니다. 즉, 메타데이터 블록(440) 또는 메타데이터 블록(450)은 외부 기능을 관여시키는 명령어나 규칙이 없을 수 있으므로 어떠한 기능 블록들도 포함하지 않거나, 수많은 기능 블록들을 통해 다수의 외부 기능들을 관여시킬 수 있다.
기능 블록(442)과 같은 기능 블록의 예는 참조 번호 460에 나타난다. 참조 번호 460은 기능 블록의 논리적인 표현을 지시한다. 도 4의 예에서, 기능 블록은 상태 트리에서 노드에 해당한다.
바람직하게, 기능 블록은 상태 트리에서 기능 블록의 상태를 식별하는 상태 식별자(462)를 포함한다.
기능 블록은 보호식(guard expression) 및/또는 조건(464)을 더 포함할 수 있는데, 이 블록이 만족되는 경우, 상태에 대한 처리가 수행되도록 야기시키는 논리적인 표현식을 포함한다.
기능 블록은 사용되는 외부 서비스 또는 기능을 식별하기 위한 외부 서비스 또는 기능 식별자(466)를 더 포함할 수 있다.
기능 블록은 컨텐츠 전달 인에이블러가 사용해야 하는 외부 서비스의 기능이 무엇인지를 정의하는 실행 동사(468)를 더 포함할 수 있다.
기능 블록은 이 블록에 정의된 기능들이 호출되는 경우에 외부 인에이블러에 전달될 필요가 있는 파라미터들의 리스트를 정의하는 파라미터들(470)을 더 포함할 수 있다.
기능 블록은 다음에 이동할 상태를 지시하도록 실행 동사의 결과에 기초한 상태 천이(472)를 더 포함할 수 있다.
이제 도 5를 참조한다. 도 5는 처리 상태의 표현인, 기능 블록(510)의 계층화된 구조를 나타낸다. 다양한 삽입된 블록들이 이하에 기술되는 바와 같이 기능 블록(510) 내에 존재한다.
제1 블록(520)은 상태 차트를 정의하는 공통 XML 엘리먼트의 집합이다. 당업자라면 이해할 수 있는 바와 같이, "엘리먼트"라는 용어는 넓은 의미의 용어로서, 대응하는 XML 태그를 가지고 시작 및 종료하는 XML 문서의 부분집합을 포함한다.
블록(520)은 상태 차트 표현 언어에 대한 XML 구문을 정의하는 명칭공간에 의해 참조되는 엘리먼트를 포함한다. 상태 차트 확장성 마크업 언어(SCXML), 비지니스 프로세스 실행 언어(BPEL) 및 XProc 등을 예로 들 수 있다.
추가 삽입된 블록(530)은 외부 인에이블러로의 바인딩을 포함하는, 전달 인에이블러에 의해 정의된 메타데이터를 포함한다. 이 블록(530)은 전달 인에이블러의 명칭공간에 의해 참조되는 XML을 포함하고, 가능하다면 외부 인에이블러로의 모든 XML 바인딩 및 내부 처리 명령어를 포함한다.
추가 삽입된 블록(540)은 외부 인에이블러에 의해 사용되도록 정의된 메타데이터이다. 이 블록은 외부 인에이블러의 명칭공간에 의해 참조되고, 외부 인에이블러 스키마에 정의된 엘리먼트를 포함한다. 이 엘리먼트들은 전달 인에이블러에게 보이지 않는다(opaque).
당업자라면 이해할 수 있는 바와 같이, 블록(530) 내의 엘리먼트들은 외부 인에이블러의 기능/파라미터로의 엘리먼트들의 바인딩을 포함하여, 전달 인에이블러의 미리 정해진 거동을 규정한다. 이 엘리먼트들은 전달 인에이블러 메타데이터 해석 계층에 의해 이해되어야 한다. 반대로, 블록(540) 내의 엘리먼트들은 전달 인에이블러에게 보이지 않고, "있는 그대로(as is)" 외부 인에이블러에게 전달된다. 이 엘리먼트들은 외부 인에이블러 스키마에 의해 정의된 구성을 표현하므로 외부 인에이블러에 의해 이해된다.
그러므로, 전술한 것은 전달하는 동안 모바일 컨텐츠의 처리를 조정하기 위해서, 외부 인에이블러로의 바인딩을 표현하는 스키마와 명칭공간을 사용하는 방법을 제공한다. 이것은 처리 상태에 대하여 XML 엘리먼트 내의 대응하는 스키마에서 정의된 삽입 엘리먼트들에 의해 달성된다.
전술한 것은, 이하의 예시적인 SCXML 코드 세그먼트와 도 6을 참조하면 보다 명확하게 이해될 것이다.
이하는 SCXML로 표현되는 조정 메타데이터의 예를 나타낸 것이다.
Figure 112010019957578-pat00010
Figure 112008015052757-pat00002
상기 코드 세그먼트의 처음 5개의 행은 도 4의 블록(430)의 일부이다. 구체적으로, 이들은 XML 버전에 대한 명칭공간 선언문일 뿐만 아니라, 동적 컨텐츠 전달, 장치 성능 인에이블러, 장치 위치 인에이블러 및 장치 프레즌스 인에이블러에 대한 명칭공간 선언문이다. 이해할 수 있는 바와 같이, 이들은 명칭공간 선언문의 일부로서 사용되고 선언될 수 있는 다양한 인에이블러들의 예시일 뿐이다. 게다가, 상기에 도시된 명칭공간 선언문은 단지 예로서 포함된 것이고, 인에이블러에 대한 실제 URL을 표현한 것은 아니다.
코드의 다음 행은 'initialstate = "content received"'를 나타낸다. 이것은 컨텐츠 처리를 위해 진행될 초기 상태를 나타내는 것이다.
다음 행은 'state id = "content received"'를 나타낸다. 이것은 도 5의 블록(520)의 일부분으로서, 기능 블록의 상태를 정의한다.
게다가, 행 'invoke src = "checkMemory"'는 도 5의 블록(520)의 일부분으로, 외부 기능을 호출하도록 SCXML에게 명하고 있다.
다음 행은 'dcd:action function-id="DCAP:checkMemory"'를 나타낸다. 이 동작은 전달 능력 인에이블러 상의 외부 기능 checkMemory가 사용되어야 함을 정의한다.
다음 행은 <dcd:verb>validateMemorySize</dcd:verb> 이다. 이것은 동적 컨텐츠 전달 인에이블러가 이해하는 실행 동사이다
다음 2개의 행은 외부 기능 checkMemory가 사용하는 파라미터들을 나타낸다.
다음 행은 <dp:function>checkMemory</dp:function> 이다. 이것은 dcd 실행 동사 validateMemorySize를 외부 기능에 맵핑한다. 이 경우에, 외부 기능은 checkMemory이고, 명칭공간 정의에서 명칭 "dp"를 사용하여 정의된 장치 능력 인에이블러의 일부분이다.
다음 행은 외부 기능으로부터 예상되는 결과 타입을 정의한다.
전술한 코드 세그먼트로부터, dcd:action, dcd:verb 및 dcd:parameters는 도 5의 블록(530)에 속해 있다. 이들은 전달 인에이블러의 미리 정의된 거동이고, 외부 인에이블러의 기능 및 파라미터로의 엘리먼트들의 바인딩을 포함한다.
행 dp:function 및 dp:result는 블록(540)에 속해 있으며, dcd 인에이블러에게는 보이지 않는다(opaque).
행 <transition event="success" cond="checkMemory.result" target="Check Roaming"/>은, 특정한 이벤트가 발생되고 조건이 만족되었는지에 대한 여부를 알아보는 검사이다. 이벤트가 발생되고 조건이 만족되었다면, 이 행은 진행될 다음 상태를 정의 한다. 이 경우에, 다음 상태는 "Check Roaming"이다.
행 <transition event="failure" cond="!isRoaming.result" target="Send Rejected"/>에서, 이벤트가 실패하여 체크 메모리는 'false'를 반환하고, 상태는 "Check Fragmentation"으로 진행한다.
당업자라면 이해할 수 있는 바와 같이, 앞서 정의된 천이 이벤트는 도 5의 블록(520)에 속해 있다.
도 6을 참조하면, 전술한 것이 상태 다이어그램을 참조하여 나타난다. 구체적으로, 초기 상태(610)는 "컨텐츠 수신(Content Received)" 상태 이다. 실행 동사 validateMemorySize는 컨텐츠 전달 인에이블러(602) 내에서 사용되고, 메타데이터 해석 계층(604)에서 해석된다.
메타데이터 해석 계층(604)에서, 장치 파라미터들 '장치 ID' 및 '컨텐츠 사이즈'를 전달하는 외부 기능 메모리 검사(checkMemory)(620)가 호출된다. 그리고 나서, 장치 능력 인에이블러(622)가 결과(624)를 메타데이터 해석 계층(604)에 다시 반환하면, 이 계층(604)은 유효 메모리 사이즈(validateMemorySize)(612) 동사를 통해 이 파라미터들을 다시 전달하고, 결과(614)가 상태(610)에 다시 전달된다.
결과(614)는 단계(630)에서 검사되고, 참인 경우 상태는 "로밍 검사(Check Roaming) 상태(640)로 천이하고, 거짓인 경우 상태는 "단편화 검사(Check Fragmentation)" 상태(도시되지 않음)로 천이한다.
상기의 코드 세그먼트를 다시 참조하면, 추가 기능 블록은 'state ID = "check roaming"'에 의해 정의된다.
이 실행은 기능 ID "LOC:isRoaming"을 사용하여 동적 컨텐츠 전달에 대해 정의된다.
표현식 <dcd:verb>isHomeNetwork</dcd:verb>은 실행 동사를 제공한다. 실행 동사에 대한 파라미터들은 ContentHeader:deviceID로서 다음 행에서 정의된다.
동적 컨텐츠 전달은 표현식 "someExoticElement"와 같은 그 스키마에서 정의된 임의의 엘리먼트를 사용할 수 있다.
다음 두 행, 즉
<l:name>isRoaming</l:name>
<l:param>"ignoreNetworkAgreements=true"</l:param> 은 동사 "홈 네트워크 임(isHomeNetwork)"에 맵핑되는 외부 기능을 정의한다. 외부 기능은 "로밍 중(isRoaming)" 기능이고, 파라미터 "ignoreNetworkAgreements"를 포함한다. 당업자라면 이해할 수 있는 바와 같이, 위치 인에이블러는 이 기능을 다루도록 구성되고, 이 기능은 동적 컨텐츠 전달 인에이블러에게 보이지 않는다(opaque).
다음 2개의 행은 천이를 정의한다. "로밍 중(isRoaming)"이 참을 반환하면, 상태 천이는 가용성 검사 상태로 천이한다. "로밍 중(isRoaming)" 결과가 거짓이면, 상태는 "전송 거절(Send Rejected)" 상태로 천이한다.
이것은 도 6에 나타나 있다. 도 6에서, 상태(640)는 "로밍 검사(Check Roaming)"상태이고, 실행 동사(642)"홈 네트워크 임(isHomeNetwork)"는 상태(640)로부터 사용될 수 있다. 메타데이터 해석 계층(604)은 "홈 네트워크 임(isHomeNetwork)"를 해석하여 위치 인에이블러(652)에서 "로밍 중(isRoaming)" 기능(650)을 호출하는데 이 실행 동사를 사용한다.
위치 인에이블러(652)는 결과(654)를 반환하고, 이 결과는 메타데이터 해석 계층(604)을 통해 "홈 네트워크 임(isHomeNetwork)" 동사(642)로 전파되고, 이 동사는 로밍 검사 상태(640)에 결과(644)를 반환한다.
그리고 나서, 이 결과는 단계(660)에서 검사되고, 이 단계는 상기 코드에서 "천이" 명령에 대응한다. 단계(660)에서 이 결과가 참 이면, 상태는 "가용성 검사(Check Availability)" 상태인 상태(670)로 천이한다. 그렇지 않으면, 상태는 "전송 거절(Send Rejected)" 상태(도시되지 않음)로 진행한다.
유사한 기능성들이 상태(670)에 적용된다. 이 경우에, 실행 동사는 "사용자 이용 가능함(isUserAvailable)" 이다. 메타데이터 해석 계층(604)은 "사용자 이용 가능함(isUserAvailable)" 동사(672)를 사용하여 프레즌스 인에이블러(682)의 "이용 가능함(isAvailable)" 기능(680)을 호출한다. 결과(684)가 반환되고, 그리고 나서 결과(674)로서 상태(670)에 반환된다. 이것에 기초하여, 상태 천이가 발생할 수 있다.
그러므로, 전술한 것은 조정 명령어를 외부 인에이블러 기능에 맵핑하기 위해 외부 실행 그룹을 사용하기 위한 방법을 제공한다. 전달 인에이블러에서 정의된 실행 동사를 외부 기능으로 맵핑하기 위한 해석 계층은, 서비스들 간의 낮은 결합성을 허용한다.
당업자라면 이해할 수 있는 바와 같이, 조정 메타데이터는 헤럴(Harel) 상태, UML 상태 다이어그램, 페트리 넷(Petri net) 등과 같은 상태 다이어그램의 XML 표현을 사용하여 정의된다. 다이어그램에서 각 상태는, 전달하는 동안에 모바일 컨텐츠를 처리하는데 사용될 수 있는 외부 모바일 서비스에 의해 노출된 기능에 대응한다. 외부 서비스, 프레임워크 및 인에이블러(위치, 프레즌스, 전달 능력, 사용자 프로파일 등)는, 장치 및 사용자 설정, 사용자 위치 및 상태에 따라 컨텐츠 전달과 컨텐츠 프리젠테이션을 개인맞춤화하는데 사용될 수 있다. 이 서비스는 하나보다 많은 노출된 기능을 가질 수 있다.
기능들 및 서비스들은 URI(uniform resource identifier), 명칭, 글로벌 고유 식별자(GUID), 태그 등일 수 있는 식별자에 의해 식별된다.
보호식, 실행 동사, 파라미터들 및 결과는 전달 인에이블러 및 전달 프레임워크의 스키마 및/또는 특정한 외부 서비스의 스키마에 의해 정의된 용어로 표현된다. 전달 인에이블러 스키마는 전달 인에이블러에 의해 이해되는 XML 엘리먼트를 정의하고, 외부 인에이블러 기능 및 파라미터들로의 미리 정의된 바인딩을 포함한다. 외부 인에이블러에 대한 스키마는 외부 인에이블러에 의해 모바일 컨텐츠의 처리를 도울 수 있는 추가 파라미터들을 정의한다. 이 파라미터들은 전달 인에이블러에게는 보이지 않고, XML 스키마 확장 메커니즘을 사용하여 전달 인에이블러 메타데이터 내에 삽입된다.
전달 인에이블러는, 전술한 바와 같이 장치 측 또는 서비스 측 중 어느 하나 에 있을 수 있다. 다른 실시예에서, 모든 서버 기능성들은 장치 측으로 이동될 수 있으므로, 전달 인에이블러에 대해서는 장치 측만이 존재할 수 있다.
전달 클라이언트 및 컨텐츠 클라이언트는 임의의 모바일 장치 상에서 발견될 수 있다. 예로서 나타난 하나의 특정한 모바일 장치가 도 7에 제공되어 있다. 이제, 도 7을 참조한다.
도 7은 본 발명의 장치 및 방법의 바람직한 실시예에 사용되기 쉬운 이동국을 나타내는 블록도이다. 이동국(700)은 적어도 음성 및 데이터 통신 능력을 갖는 양방향 무선 통신 장치인 것이 바람직하다. 이동국(700)은 인터넷을 통하여 다른 컴퓨터 시스템들과 통신하는 능력을 갖는 것이 바람직하다. 제공되는 정확한 기능성에 따라, 무선 장치는 예를 들어, 데이터 메시징 장치, 양방향 호출기, 무선 이메일 장치, 데이터 메시징 능력을 가진 셀룰러 전화기, 무선 인터넷 기기, 또는 데이터 통신 장치로서 언급될 수 있다.
이동국(700)이 양방향 통신이 가능한 경우, 이것은 통신 서브시스템(711)을 통합할 것이고, 이 통신 서브시스템(711)은 수신기(712), 송신기(714)는 물론, 바람직하게 삽입 또는 외부의 하나 이상의 안테나 엘리먼트들(716 및 718), 국부 발진기(LO)(713), 및 디지털 신호 처리기(DSP)(720)와 같은 처리 모듈과 같은 연관된 컴포넌트들을 포함한다. 통신 분야의 당업자라면 명백하게 이해하는 바와 같이, 통신 서브시스템(711)의 특정한 설계는 이동국이 동작하도록 의도되는 통신 네트워크에 달려있다.
또한, 네트워크 액세스 요건은 네트워크(719)의 타입에 따라 변할 것이다. 일부 CDMA 네트워크에서, 네트워크 액세스는 이동국(700)의 가입자 또는 사용자와 연관된다. CDMA 이동국은 CDMA 네트워크 상에서 동작하기 위해 탈착가능한 사용자 식별 모듈(RUIM) 또는 가입자 식별 모듈(SIM) 카드를 요구할 수 있다. 일반적으로, SIM/RUIM 인터페이스(744)는 디스켓 또는 PCMCIA 카드와 같이, SIM/RUIM 카드가 삽입되고 배출될 수 있는 카드 슬롯과 유사하다. SIM/RUIM 카드는 대략 64K의 메모리를 갖고, 많은 키 구성(751), 및 신원 및 가입자와 관련된 정보와 같은 다른 정보(753)를 보유할 수 있다.
요구되는 네트워크 등록 또는 활동 절차를 완료한 후에, 이동국(700)은 네트워크(719)를 통해 통신 신호를 송수신할 수 있다. 도 7에 나타난 바와 같이, 네트워크(719)는 이동국과 통신하는 다수의 기지국으로 구성될 수 있다. 예를 들어, 하이브리드 CDMA 1x EVDO 시스템에서, CDMA 기지국 및 EVDO 기지국은 이동국과 통신하고, 이동국은 이들 모두에 동시에 접속된다. EVDO 및 CDMA 1x 기지국은 이동 장치와 통신하기 위해서 상이한 페이징 슬롯을 사용한다.
통신 네트워크(719)를 통해 안테나(716)에 의해 수신된 신호들은 수신기(712)에 입력되고, 이 수신기(712)는 신호 증폭, 주파수 하향 변환, 필터링, 채널 선택 등과 같은 공통 수신기 기능들을 수행할 수 있고, 도 7에 도시된 예시적인 시스템에서는 아날로그 디지털(A/D) 변환을 수행할 수 있다. 수신된 신호의 A/D 변환은 복조 및 디코딩과 같은 보다 복잡한 통신 기능을 DSP(720)에서 수행될 수 있게 한다. 유사한 방식으로, 송신될 신호들이 DSP(720)에 의해 처리되어(예를 들어, 변조 및 인코딩을 포함함), 디지털 아날로그 변환, 주파수 상향 변환, 필터링, 증 폭 및 안테나(718)를 거쳐 통신 네트워크(719)를 통한 전송을 위해 송신기(714)에 입력된다. DSP(720)는 통신 신호들을 처리할 뿐만 아니라, 송수신기 제어도 제공한다. 예를 들어, 수신기(712) 및 송신기(714)에서 통신 신호들에 인가되는 이득은, DSP(720)에 구현된 자동 이득 제어 알고리즘을 통해 적응적으로 제어될 수도 있다.
이동국(700)은, 장치의 전반적인 동작을 제어하는 마이크로프로세서(738)를 포함하는 것이 바람직하다. 적어도 데이터 및 음성 통신을 포함하는 통신 기능들이 통신 서브시스템(711)을 통해 수행된다. 또한, 마이크로프로세서(738)는 디스플레이(722), 플래시 메모리(724), 랜덤 액세스 메모리(RAM)(726), 보조 입출력(I/O) 서브시스템(728), 시리얼 포트(730), 하나 이상의 키보드 및 키패드(732), 스피커(734), 마이크로폰(736), 근거리 통신 서브시스템과 같은 다른 통신 서브시스템(740) 및 도면 부호 742로서 표시된 일반적인 임의의 다른 장치 서브시스템들과 같은 추가의 장치 서브시스템과 상호작용한다. 시리얼 포트(730)는 USB 포트 또는 당업계에 공지된 기타 포트를 포함할 수 있다.
도 7에 도시된 서브시스템들의 일부는 통신-관련 기능들을 수행하지만, 다른 서브시스템들은 "상주" 또는 온-디바이스 기능(on-device function)을 제공할 수도 있다. 그중에서도, 예를 들어 키보드(732)와 디스플레이(722)와 같은 일부 서브시스템들은 통신 네트워크를 통해 전송하기 위한 텍스트 메시지를 입력하는 것과 같은 통신-관련 기능과, 계산기 또는 작업 리스트와 같은 장치-상주 기능 모두에 대해 이용될 수도 있다.
마이크로프로세서(738)에 의해 사용되는 운영 체제(OS) 소프트웨어는 바람직 하게 플래시 메모리(724)와 같은 영구 기억 장치에 저장되며, 플래시 메모리(724) 대신에 ROM(읽기 전용 메모리) 또는 유사한 저장 소자(도시되지 않음)일 수도 있다. 당업자는 운영 체제, 특정 장치 애플리케이션들, 또는 이들의 일부분들이 RAM(726)과 같은 휘발성 기억 장치 내에 임시로 로딩될 수도 있다는 것을 이해할 것이다. 수신된 통신 신호들은 또한 RAM(726) 내에 저장될 수도 있다.
도시된 바와 같이, 플래시 메모리(724)는 컴퓨터 프로그램(758) 및 프로그램 데이터 저장(750, 752, 754, 및 756) 양자 모두에 대해 상이한 영역들로 분리될 수 있다. 이렇게 상이한 스토리지 타입은, 각 프로그램이 그 자신의 데이터 저장 요건을 위해 플래시 메모리(724)의 일부에 할당될 수 있음을 나타낸다. 마이크로프로세서(738)는 그 운영 체제 기능 외에, 이동국 상에서 소프트웨어 애플리케이션의 실행을 가능하게 하는 것이 바람직하다. 기본 동작을 제어하는 미리 결정된 애플리케이션 세트(예를 들어, 적어도 데이터 통신 애플리케이션 및 음성 통신 애플리케이션을 포함함)는 일반적으로 제조되는 동안에 이동국(700) 상에 설치될 것이다. 다른 애플리케이션들이 후속해서 또는 동적으로 설치될 수 있다.
바람직한 소프트웨어 애플리케이션은 개인 정보 관리자(PIM) 애플리케이션일 수도 있으며, 상기 PIM은 이메일, 캘린더 이벤트, 음성 메일, 약속일정, 및 작업 항목들과 같은 이동국의 사용자에 관한 데이터 항목들을 구성하고 관리하는 능력을 가지고 있지만, 이들에 국한된 것은 아니다. 일반적으로, 하나 이상의 메모리 스토리지는 이동국 상에서 이용 가능하여 PIM 데이터 항목의 저장을 용이하게 한다. 이와 같은 PIM 애플리케이션은 무선 네트워크(719)를 통해서 데이터 항목들을 송수신 하는 능력을 갖는 것이 바람직하다. 바람직한 실시예에서, PIM 데이터 항목들은 호스트 컴퓨터 시스템에 저장되거나 또는 호스트 컴퓨터 시스템과 연관된 이동국 사용자의 대응하는 데이터 항목과 함께 무선 네트워크(719)를 통해 끊김 없이 통합되고, 동기화되고, 갱신된다. 또한, 추가적인 애플리케이션들도 네트워크(719), 보조 I/O 서브시스템(728), 시리얼 포트(730), 근거리 통신 서브시스템(740), 또는 임의의 다른 적합한 서브시스템(742)을 통해 이동국(700) 상에 로딩될 수도 있고, 마이크로프로세서(738)에 의한 실행을 위해 사용자에 의해 RAM(726) 또는 바람직하게 비휘발성 기억 장치(도시되지 않음)에 설치될 수도 있다. 애플리케이션 설치에 있어서 이러한 융통성은 이동국의 기능성을 증가시키고, 개선된 온-디바이스 기능, 통신-관련 기능, 또는 이들 모두를 제공할 수도 있다. 예를 들어, 보안 통신용 애플리케이션들은, 전자 상거래 기능 및 이와 같은 기타의 금융 거래가 이동국(700)을 이용하여 수행될 수 있도록 할 수도 있다.
데이터 통신 모드에서, 텍스트 메시지 또는 웹 페이지 다운로드와 같은 수신된 신호는 통신 서브시스템(711)에 의해 처리되어 마이크로프로세서(738)에 입력될 것이고, 이 마이크로프로세서(738)는 바람직하게 디스플레이(722), 또는 대안적으로 보조 I/O 장치(728)에 출력하기 위해서 수신된 신호들을 추가로 처리한다. 전달 클라이언트(140)와 동일할 수 있는 전달 클라이언트(760)가 또한 입력을 처리할 수 있다.
이동국(700)의 사용자는, 예를 들어 디스플레이(722) 및 아마도 보조 I/O 장치(728)와 함께 키보드(732)를 이용해서, 이메일 메시지와 같은 데이터 항목들을 작성할 수도 있다. 이 키보드(732)는 완전한 영숫자 키보드(alphanumeric keyboard) 또는 전화기 형태의 키패드(telephone-type keypad)인 것이 바람직하다. 이와 같이 작성된 항목들은 통신 서브시스템(711)을 경유해서 통신 네트워크를 통해 송신될 수도 있다.
음성 통신의 경우, 이동국(700)의 전체 동작은, 수신된 신호들이 바람직하게 스피커(734)에 출력되고, 송신용 신호들이 마이크로폰(736)에 의해 발생된다는 것을 제외하고는 유사하다. 또한, 음성 메시지 기록 서브시스템과 같은 대안적인 음성 또는 오디오 I/O 서브시스템들이 이동국(700) 상에 구현될 수도 있다. 원래, 음성 또는 오디오 신호 출력은 스피커(734)를 통해 이루어지는 것이 바람직하지만, 디스플레이(722)도 예를 들어, 발신자(calling party)의 신원, 음성 호(voice call)의 지속 기간, 또는 다른 음성 호 관련 정보의 식별의 표시를 제공하는데 이용될 수도 있다.
일반적으로, 도 7의 시리얼 포트(730)는, 사용자의 데스크탑 컴퓨터(도시되지 않음)와 동기화하는 것이 바람직한 경우에 개인 휴대 정보 단말기(PDA) 형태의 이동국에 구현되지만, 이것은 선택 사항인 장치 컴포넌트이다. 이와 같은 시리얼 포트(730)는 외부 장치를 통해 또는 소프트웨어 애플리케이션을 통해 사용자가 환경 설정(set preference)을 할 수 있게 하고, 무선 통신 네트워크를 통하는 것 이외에 이동국(700)에 정보를 제공하거나 소프트웨어를 다운로드함으로써 이동국(700)의 능력을 확장한다. 다른 다운로드 경로는, 예를 들어 직접적이어서 신뢰 가능하고 믿을 수 있는 접속을 통해 장치 상에 암호화 키를 로딩하여 보안 장치 통 신을 가능하게 하는데 이용될 수도 있다. 당업자라면 이해할 수 있는 바와 같이, 시리얼 포트(730)는, 모뎀으로서 동작하는 컴퓨터에 이동 장치를 접속하도록 추가로 사용될 수 있다.
근거리 통신 서브시스템과 같은 다른 통신 서브시스템(740)은 이동국(700)과 다른 시스템들 또는 장치들 사이에 통신을 제공할 수 있는 추가의 선택적인 컴포넌트이며, 다른 시스템들 또는 장치들은 반드시 유사 장치일 필요는 없다. 예를 들어, 서브시스템(740)은, 유사하게 기능할 수 있는 시스템들 및 장치들과의 통신을 제공하도록, 적외선 장치 및 연관된 회로들 및 컴포넌트들 또는 블루투스TM 통신 모듈을 포함할 수 있다.
본 명세서에 기술된 실시예들은 본 출원 기술의 엘리먼트들에 대응하는 엘리먼트들을 갖는 구조, 시스템 또는 방법의 예에 해당한다. 여기에 기재된 설명은, 당업자가 역시 본 출원 기술의 엘리먼트들에 대응하는 다른 엘리먼트들을 갖는 실시예들을 행하고 사용할 수 있도록 할 수 있다. 따라서, 본 출원 기술의 의도된 범위는 본 명세서에 기술된 바와 같은 본 출원 기술과는 다르지 않은 기타의 구조, 시스템 또는 방법을 포함하고, 본 명세서에 기술된 바와 같은 본 출원과는 적은 차이점만을 갖는 기타의 구조, 시스템 또는 방법을 더 포함한다.
도 1은 전달 구조 이내의 논리 엘리먼트들을 도시하는 블록도.
도 2는 도 1의 논리 엘리먼트들 간의 메타데이터들의 흐름을 나타내는 블록도.
도 3은 도 1의 논리 엘리먼트들 간의 메타데이터 처리에 대한 엔벨로프형 모델을 나타내는 블록도.
도 4는 컨텐츠 및 메타데이터 엔벨로프를 포함하는 예시적인 컨텐츠 패키지를 도시하는 블록도.
도 5는 기능 블록을 도시하는 블록도.
도 6은 컨텐츠 전달 인에이블러와 외부 인에이블러 사이에서 메타데이터의 예시적인 조정을 도시하는 블록도.
도 7은 본 발명의 방법 및 시스템과 함께 사용될 수 있는 예시적인 모바일 장치를 도시하는 블록도.

Claims (28)

  1. 컨텐츠 제공자 시스템에 의해, 모바일 전달 프레임워크에서 컨텐츠 처리를 조정하기 위한 방법으로서,
    컨텐츠와 연관된 메타데이터 엔벨로프(metadata envelope) 내부에, 외부 인에이블러들에 대한 참조(reference)와 전달 인에이블러를 위한 메타데이터를 삽입하는 단계와;
    상기 전달 인에이블러에 의해 상기 컨텐츠를 처리하는 데, 참조된 외부 인에이블러들의 기능성들(functionalities)을 채용(engage)하기 위해, 컨텐츠 처리 조정 규칙들을 상기 전달 인에이블러를 위한 메타데이터에 삽입하는 단계
    를 포함하는 컨텐츠 처리 조정 방법.
  2. 제1항에 있어서, 상기 컨텐츠 처리 조정 규칙은 확장성 마크업 언어(XML) 패키지형 상태 차트(packaged state chart)인 것인, 컨텐츠 처리 조정 방법.
  3. 제2항에 있어서, 상기 XML 패키지형 상태 차트는 삽입된 계층들을 갖는 기능 블록을 포함하는 것인, 컨텐츠 처리 조정 방법.
  4. 제3항에 있어서, 상기 삽입된 계층들은 공통 XML 엘리먼트를 정의하는 제1 계층과; 외부 인에이블러로의 바인딩을 가지고 있는 전달 인에이블러에 대한 메타데이터를 정의하는 제2 계층과; 외부 인에이블러에 대한 메타데이터를 정의하는 제3 계층을 포함하는 것인, 컨텐츠 처리 조정 방법.
  5. 제4항에 있어서, 상기 제3 계층은 상기 전달 인에이블러에게 보이지 않는(opaque) 것인, 컨텐츠 처리 조정 방법.
  6. 제4항에 있어서, 상기 제2 계층은, 상기 외부 인에이블러의 기능으로의 표현식, 명령어 또는 파라미터의 바인딩을 포함하는, 미리 정의된 거동을 갖는 표현식, 명령어 또는 파라미터들을 포함하는 것인, 컨텐츠 처리 조정 방법.
  7. 제4항에 있어서, 상기 제1 계층은 상태 차트 표현 언어에 대한 XML 구문을 정의하는 명칭공간(namespace)에 의해 참조되는 것인, 컨텐츠 처리 조정 방법.
  8. 제3항에 있어서, 상기 기능 블록은, 상태 식별자, 보호식(guard expression), 외부 서비스 식별자, 실행 동사, 파라미터, 및 상태 천이 중 적어도 하나를 포함하는 것인, 컨텐츠 처리 조정 방법.
  9. 제8항에 있어서, 상기 실행 동사는 조정 명령어들을 인에이블러 기능에 맵핑하는데 사용되는 것인, 컨텐츠 처리 조정 방법.
  10. 제9항에 있어서, 상기 맵핑은 메타데이터 해석 계층에 의해 수행되는 것인, 컨텐츠 처리 조정 방법.
  11. 제8항에 있어서, 상기 상태 천이는 외부 기능을 호출하기 위해 실행 동사를 사용하는 것으로부터 수신된 결과에 기초하는 것인, 컨텐츠 처리 조정 방법.
  12. 제1항에 있어서, 상기 참조는 외부 서비스에 대한 명칭공간 선언문인 것인, 컨텐츠 처리 조정 방법.
  13. 제12항에 있어서, 상기 외부 서비스는 프레즌스(presence) 서비스, 위치 서비스, 컨텐츠 스크리닝 서비스, 및 압축 서비스 중 적어도 하나를 포함하는 것인, 컨텐츠 처리 조정 방법.
  14. 제1항에 있어서, 상기 삽입 단계는 처리 상태에 대한 엘리먼트 내에 외부 인에이블러에 대한 스키마를 정의하는 것인, 컨텐츠 처리 조정 방법.
  15. 컨텐츠 처리를 조정하기 위한 시스템으로서,
    컨텐츠 제공자 시스템에 의해 공급된 컨텐츠와 연관된 모바일 컨텐츠 전달 메타데이터 내에 외부 인에이블러에 대한 참조 및 전달 인에이블러를 위한 메타데이터를 삽입하도록 구성되고, 상기 전달 인에이블러에 의해 상기 컨텐츠가 처리되는 데, 참조된 외부 인에이블러들의 기능성들을 채용하기 위해, 컨텐츠 처리 조정 규칙들을 상기 전달 인에이블러를 위한 메타데이터에 삽입하도록 구성된 컨텐츠 제공자 시스템과;
    컨텐츠 전달 인에이블러와;
    상기 컨텐츠 전달 인에이블러를 통해 상기 컨텐츠 처리 조정 규칙에 기초하여 컨텐츠를 처리하도록 구성된 외부 인에이블러와;
    상기 컨텐츠 제공자 시스템으로부터 컨텐츠를 소비하도록 구성된 컨텐츠 클라이언트
    를 포함하고,
    상기 컨텐츠 전달 인에이블러는,
    전달 서버로 보내진 메타데이터를 처리하도록 구성된 전달 서버와;
    전달 클라이언트로 보내진 메타데이터를 처리하도록 구성된 전달 클라이언트를 포함하는 것인, 컨텐츠 처리 조정 시스템.
  16. 컨텐츠 패키지를 포함하는 컴퓨터 판독가능한 기록 매체로서, 상기 컨텐츠 패키지는,
    컨텐츠와;
    외부 인에이블러에 대한 참조 및 전달 인에이블러를 위한 메타데이터 - 상기 전달 인에이블러를 위한 메타데이터는, 상기 전달 인에이블러에 의해 상기 컨텐츠가 처리되는 데, 참조된 외부 인에이블러들의 기능성을 채용하기 위해, 내부에 삽입된 컨텐츠 처리 조정 규칙들을 가지고 있음 - 를 포함하는 메타데이터 엔벨로프
    를 포함하는 것인, 컴퓨터 판독가능한 기록 매체.
  17. 제16항에 있어서, 상기 컨텐츠 처리 조정 규칙은 확장성 마크업 언어(XML) 패키지형 상태 차트인 것인, 컴퓨터 판독가능한 기록 매체.
  18. 제17항에 있어서, 상기 XML 패키지형 상태 차트는 삽입된 계층들을 갖는 기능 블록을 포함하는 것인, 컴퓨터 판독가능한 기록 매체.
  19. 제18항에 있어서, 상기 삽입된 계층들은 공통 XML 엘리먼트를 정의하는 제1 계층과; 외부 인에이블러로의 바인딩을 가지고 있는 전달 인에이블러에 대한 메타데이터를 정의하는 제2 계층과; 외부 인에이블러에 대한 메타데이터를 정의하는 제3 계층을 포함하는 것인, 컴퓨터 판독가능한 기록 매체.
  20. 제19항에 있어서, 상기 제3 계층은 상기 전달 인에이블러에 보이지 않는(opaque) 것인, 컴퓨터 판독가능한 기록 매체.
  21. 제19항에 있어서, 상기 제2 계층은, 상기 외부 인에이블러의 기능으로의 표현식, 명령어 또는 파라미터의 바인딩을 포함하는, 미리 정의된 거동을 갖는 표현식, 명령어 또는 파라미터들을 포함하는 것인, 컴퓨터 판독가능한 기록 매체.
  22. 제19항에 있어서, 상기 제1 계층은 상태 차트 표현 언어에 대한 XML 구문을 정의하는 명칭공간에 의해 참조되는 것인, 컴퓨터 판독가능한 기록 매체.
  23. 제18항에 있어서, 상기 기능 블록은, 상태 식별자, 보호식, 외부 서비스 식별자, 실행 동사, 파라미터, 및 상태 천이 중 적어도 하나를 포함하는 것인, 컴퓨터 판독가능한 기록 매체.
  24. 제23항에 있어서, 상기 실행 동사는 조정 명령어를 인에이블러 기능에 맵핑하는데 사용되는 것인, 컴퓨터 판독가능한 기록 매체.
  25. 제16항에 있어서, 상기 외부 참조는 외부 서비스에 대한 명칭공간 선언문인 것인, 컴퓨터 판독가능한 기록 매체.
  26. 제25항에 있어서, 상기 외부 서비스는 프레즌스 서비스, 위치 서비스, 컨텐츠 스크리닝 서비스, 및 압축 서비스 중 적어도 하나를 포함하는 것인, 컴퓨터 판독가능한 기록 매체.
  27. 제16항에 있어서, 처리 상태에 대한 엘리먼트 내에 외부 인에이블러에 대한 스키마를 더 포함하는 컴퓨터 판독가능한 기록 매체.
  28. 컴퓨터 판독 가능한 기록 매체로서, 컴퓨팅 장치가 청구항 제1항 내지 제14항 중 어느 한 항의 방법의 단계를 수행하도록 하는 프로그램 코드를 저장하는 컴퓨터 판독 가능한 기록 매체.
KR1020080018814A 2007-03-23 2008-02-29 모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법및 시스템 KR101076354B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP07104833.4 2007-03-23
EP07104833A EP1973300B1 (en) 2007-03-23 2007-03-23 Method and system for orchestration of content processing in mobile delivery frameworks

Publications (2)

Publication Number Publication Date
KR20080086813A KR20080086813A (ko) 2008-09-26
KR101076354B1 true KR101076354B1 (ko) 2011-10-25

Family

ID=38372384

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080018814A KR101076354B1 (ko) 2007-03-23 2008-02-29 모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법및 시스템

Country Status (11)

Country Link
EP (2) EP2214377B1 (ko)
JP (1) JP4864022B2 (ko)
KR (1) KR101076354B1 (ko)
CN (1) CN101272401B (ko)
AT (1) ATE473588T1 (ko)
CA (1) CA2626176C (ko)
DE (1) DE602007007573D1 (ko)
ES (1) ES2348052T3 (ko)
HK (1) HK1122434A1 (ko)
MX (1) MX2008003300A (ko)
TW (1) TWI367016B (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI414991B (zh) * 2010-03-17 2013-11-11 Kye Systems Corp The method of implementing multi-touch and its system
CN101867914A (zh) * 2010-06-10 2010-10-20 中兴通讯股份有限公司 动态内容分发的同步方法、系统、服务器及客户端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004129201A (ja) * 2002-03-25 2004-04-22 Sony United Kingdom Ltd メタデータを表すデータ構造
JP2005157475A (ja) * 2003-11-20 2005-06-16 Dainippon Printing Co Ltd 情報伝達システム
JP2006018607A (ja) * 2004-07-01 2006-01-19 Fujitsu Ltd メタデータエディタプログラムおよびその記録媒体、メタデータ編集方法ならびにメタデータ編集装置
JP2006134102A (ja) * 2004-11-05 2006-05-25 Fuji Xerox Co Ltd ディレクトリ編集支援プログラム、ディレクトリ編集支援方法及びディレクトリ編集支援装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003234851A (ja) * 2002-02-08 2003-08-22 Nippon Telegraph & Telephone East Corp 複数ネットワークによる提供情報配信システムおよびその方法、提供情報配信プログラムとそのプログラムを記録した記録媒体、提供情報配信装置、回線課金装置、利用者装置、および各装置を機能させるためのプログラムとそのプログラムを記録した記録媒体
US7228357B2 (en) * 2002-09-23 2007-06-05 Sharp Laboratories Of America, Inc. System and method for automatic digital document processing
JP4321340B2 (ja) * 2004-04-22 2009-08-26 ソニー株式会社 再生装置
JP2005352945A (ja) * 2004-06-14 2005-12-22 Matsushita Electric Ind Co Ltd スタイルシート作成装置
JP2006040259A (ja) * 2004-06-25 2006-02-09 Fuji Photo Film Co Ltd 通信端末、サーバ、再生制御方法及びプログラム
JP4456992B2 (ja) * 2004-12-01 2010-04-28 ソフトバンクモバイル株式会社 コンテンツ提供方法及びサーバ
JP2006350735A (ja) * 2005-06-16 2006-12-28 Nippon Signal Co Ltd:The 情報配信システム
JP2007034743A (ja) * 2005-07-27 2007-02-08 Nippon Telegraph & Telephone East Corp コンテンツ配信システムおよび方法、プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004129201A (ja) * 2002-03-25 2004-04-22 Sony United Kingdom Ltd メタデータを表すデータ構造
JP2005157475A (ja) * 2003-11-20 2005-06-16 Dainippon Printing Co Ltd 情報伝達システム
JP2006018607A (ja) * 2004-07-01 2006-01-19 Fujitsu Ltd メタデータエディタプログラムおよびその記録媒体、メタデータ編集方法ならびにメタデータ編集装置
JP2006134102A (ja) * 2004-11-05 2006-05-25 Fuji Xerox Co Ltd ディレクトリ編集支援プログラム、ディレクトリ編集支援方法及びディレクトリ編集支援装置

Also Published As

Publication number Publication date
JP4864022B2 (ja) 2012-01-25
MX2008003300A (es) 2009-02-26
CA2626176A1 (en) 2008-09-23
ATE473588T1 (de) 2010-07-15
CA2626176C (en) 2012-05-22
DE602007007573D1 (de) 2010-08-19
EP1973300A1 (en) 2008-09-24
ES2348052T3 (es) 2010-11-29
CN101272401B (zh) 2012-06-27
EP1973300B1 (en) 2010-07-07
JP2008245258A (ja) 2008-10-09
CN101272401A (zh) 2008-09-24
EP2214377A3 (en) 2010-10-13
EP2214377B1 (en) 2017-03-01
TWI367016B (en) 2012-06-21
EP2214377A2 (en) 2010-08-04
HK1122434A1 (en) 2009-05-15
KR20080086813A (ko) 2008-09-26
TW200904102A (en) 2009-01-16

Similar Documents

Publication Publication Date Title
US10644929B2 (en) Defining configurable characteristics of a product and associating configuration with enterprise resources
US8560724B2 (en) System and method for transformation of syndicated content for mobile delivery
CN102427480B (zh) 一种多应用服务平台系统中的应用访问方法
US20130124680A1 (en) Method and apparatus for ensuring transport of user agent information
US7523461B2 (en) Modification of logic in an application
CN102314469A (zh) 一种实现跨域请求回调的方法
KR20070008619A (ko) 무선 장치 동작 환경에서 비검증된 프로그램들의 실행
US7882145B2 (en) Method and system for orchestration of content processing in mobile delivery frameworks
KR101079906B1 (ko) 모바일 전달을 위해 신디케이트 컨텐츠의 변환을 위한 시스템 및 방법
KR101076354B1 (ko) 모바일 전달 프레임워크에서 컨텐츠 처리를 조정하는 방법및 시스템
US8239522B1 (en) Dynamic variables for tracking wireless device website usage
AU2008200262B2 (en) Method and system for correlation of mobile channel subscription with delivery context
US8407320B2 (en) Method and system for correlation of mobile channel subscription with delivery context
Robinson Context management in mobile environments
JP2009129454A (ja) コンテンツ配信システムに対するアプリケーションプリファランスの登録のための方法およびシステム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
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: 20141007

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151006

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161011

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171012

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181010

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20191008

Year of fee payment: 9