[go: up one dir, main page]

KR20110136881A - 협력 크롤링에 의한 리치 인터넷 어플리케이션을 위한 접근성을 향상시키는 방법 및 컴퓨터 프로그램 - Google Patents

협력 크롤링에 의한 리치 인터넷 어플리케이션을 위한 접근성을 향상시키는 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20110136881A
KR20110136881A KR1020117025648A KR20117025648A KR20110136881A KR 20110136881 A KR20110136881 A KR 20110136881A KR 1020117025648 A KR1020117025648 A KR 1020117025648A KR 20117025648 A KR20117025648 A KR 20117025648A KR 20110136881 A KR20110136881 A KR 20110136881A
Authority
KR
South Korea
Prior art keywords
content
metadata
event
way
change
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
KR1020117025648A
Other languages
English (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 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20110136881A publication Critical patent/KR20110136881A/ko
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/957Browsing optimisation, e.g. caching or content distillation
    • 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/06Management of faults, events, alarms or notifications
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 동적인 컨텐츠를 스크린 리더나 웹 스파이더에 있어서 보다 접근성을 향상시키는 기술을 제공한다. 이러한 본 발명은 클라이언트와 네트워크를 통하여 접속되는 서버에 적용되는 방법으로, 상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 나타내는 조작 이벤트와 상기 컨텐츠의 변화를 나타내는 변화 이벤트를, 상기 클라이언트로부터 수신하는 단계와, 상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성을 향상시키는 메타 데이터를 생성하는 단계를 포함하는 방법이다.

Description

협력 크롤링에 의한 리치 인터넷 어플리케이션을 위한 접근성을 향상시키는 방법 및 컴퓨터 프로그램{METHOD OF IMPROVING ACCESSIBILITY, FOR RICH INTERNET APPLICATIONS THAT USES COLLABORATIVE CRAWLING, AND COMPUTER PROGRAM THEREOF}
본 발명은 웹 컨텐츠의 접근성(accessibility) 향상 기술에 관한 것이며, 특히, 동적인 웹 컨텐츠를 그 대상으로 한다.
월드 와이드 웹의 세계는 정적인 컨텐츠에서 점점 동적인 컨텐츠가 증가한다. 예를 들면, 그것들의 동적인 컨텐츠는 DHTML, AJAX, Flash 등의 기술을 이용하여 구성되는 것이다. 그 덕분에, 웹 어플리케이션은 보다 풍부한(rich) 상호 작용과 반응의 경험을 유저에게 제공하는 것이 가능해진다.
비특허문헌1 : Miyashita, H., et al., Aibrowserfor multimedia: introducing multimedia content accessibility for visuallyimpaired users, in Proceedings of the 9th international ACM SIGACCESSconference on Computers and accessibility. 2007, ACM: Tempe, Arizona, USA. 비특허문헌2 : Frey, Gianni. Indexing AJAX WebApplications. ETH Department of Computer Science, Institute of ComputationalSciences (2007). Available from: http://e-collection.ethbib.ethz.ch/view/eth:30111 비특허문헌3 : Ali Mesbah, Engin Bozdag, and Arie van Deursen., Crawling AJAX by Inferring UserInterface State Changes. 2008, ICWE, Yorktown Heights, NY, USAMiyashita, H., et al., Aibrowserfor multimedia: introducing multimedia content accessibility for visually impairedusers, in Proceedings of the 9th international ACM SIGACCESS conference onComputers and accessibility. 2007, ACM: Tempe, Arizona, USA. 비특허문헌4 : Borodin, Y., Bigham, J. P., Raman, R., Ramakrishnan, I. V., What's New? - Making Web Page Updates Accessible. To appear in Proceedings of the 10thinternational ACM SIGACCESS conference on Computers and accessibility. 2008, ACM: Nova Scotia, Canada. 비특허문헌5 : Kawanaka, S., Borodin Y., Bigham, J., Lunn, D., Takagi, Hironobu, Asakawa, C., Accessibility Commons: A Metadata Infrastructure for Web Accessibility. To appear in theproceedings of ASSETS. 2008. Halifax, Canada. 비특허문헌6 : Takagi, H., S. Kawanaka, and M. Kobayashi. Social Accessibility: AchievingAccessibility through CollaborativeMetadata Authoring. to appear in proceedings of ASSETS. 2008. Halifax, Canada.
하지만, 이와 같이 리치 웹 어플리케이션(rich web application)은 다음과 같은 과제를 갖는다. 먼저, 스크린 리더를 이용하여 웹 컨텐츠를 청각에 의해 인식하는 유저(예를 들면, 시각장애인)에 있어서, 그리고 그 다음으로, 웹을 크롤링하고, 그 인덱스를 작성하는 웹 스파이더(웹의 검색 엔진에 사용됨)에 있어서도, 동적인 컨텐츠는 충분히 접근성이 있다고는 할 수 없다. 즉, 종래의 정적인 웹 세계에서는, 각각의 페이지가 정적인 링크를 통하여 도달가능한 상태였다. 따라서, HTML의 소스 코드 중에서 정적인 링크를 특정하여, 스크린 리더나 웹 스파이더는 각각의 기능을 발휘할 수 있었다. 하지만, 리치 인터넷 어플리케이션(Rich Internet Application: RIA)에 있어서는, 상태는 묵시적이며 유저의 조작에 의해 결정되어, 유저의 조작에 응답하여 변화한다. 이와 같은 컨텐츠에는, 스크린 리더도 웹 스파이더도 충분히 접근할 수 없다.
본 발명은 이와 같은 과제를 인식하여 만들어진 것이며, 그 목적 중 하나는, 동적인 컨텐츠를 스크린 리더나 웹 스파이더에 의해 보다 접근성이 높게 하는 기술을 제공하는 것이다. 또한, 같은 과제에 대한 다른 기술이나 참고 문헌을 비특허문헌으로서 열거했다.
본 발명은 클라이언트에 적용되는 방법, 서버에 적용되는 방법, 클라이언트 서버 시스템에 적용되는 방법, 중 어느 하나로서 파악하는 것이 가능하다. 즉, 첫째, 서버와 네트워크를 통하여 접속되는 클라이언트에 적용되는 방법이며, 상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 보여주는 조작 이벤트와, 상기 컨텐츠의 변화를 나타내는 변화 이벤트를 추적하는 단계와, 상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성(accessibility)을 향상시키는 메타데이터를 생성하는 단계를 포함하는 방법이다. 둘째, 클라이언트와 네트워크를 통하여 접속되는 서버에 적용되는 방법이며, 상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 보여주는 조작 이벤트와, 상기 컨텐츠의 변화를 나타내는 변화 이벤트를 상기 클라이언트로부터 수신하는 단계와, 상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성을 향상시키는 메타데이터를 생성하는 단계를 포함하는 방법이다. 셋째, 클라이언트와 서버가 네트워크를 통하여 접속되는 클라이언트 서버 시스템에 적용되는 방법이며, 상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 보여주는 조작 이벤트와 상기 컨텐츠의 변화를 나타내는 변화 이벤트를 상기 클라이언트가 추적하는 단계와, 상기 조작 이벤트와, 상기 변화 이벤트를 상기 클라이언트로부터 상기 서버가 수신하는 단계와, 상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성을 향상시키는 메타데이터를 상기 서버가 생성하는 단계를 포함하는 방법이다.
여기서, 상기 클라이언트가 상기 메타데이터를 상기 서버에 송신하는 단계와,
상기 클라이언트로부터 웹 서버에 대해서 상기 컨텐츠의 송신을 요구하는 것에 응답하여 상기 메타데이터를 상기 서버로부터 수신하는 단계를 더 포함할 수도 있다. 또한, 상기 클라이언트는 디스플레이 장치, 포인팅 장치 및 통신 장치를 갖추고, 상기 통신 장치에 의해 네트워크를 통하여 웹 서버로부터 송신되는 컨텐츠를 상기 디스플레이 장치 상에 표시하는 단계와, 유저가 상기 포인팅 장치를 조작하는 것에 응답하여, 상기 디스플레이 장치 상에 표시되도록 하는 상기 컨텐츠를 조작하는 단계를 더 갖출 수도 있다. 또한, 상기 메타데이터는 스크린 리더 또는 웹 스파이더에 있어서 상기 컨텐츠의 접근성을 향상시키는 것으로 할 수 있다.
여기서, 상기 변화 이벤트는 상기 조작 이벤트에 응답하여 발생해도 되고, 상기 조작 이벤트와 독립적으로 발생해도 된다.
또한, 상기 메타데이터를 생성하는 단계는 상기 조작 이벤트와 상기 변화 이벤트와의 관계를 보여주는 메타데이터를 생성해도 되고, 상기 컨텐츠의 종류를 보여주는 메타데이터를 생성해도 되고, 양쪽 모두를 생성해도 된다.
또한, 상기 메타데이터를 생성하는 단계는 상기 조작 이벤트 및 상기 변화 이벤트의 시퀀스에 근거하여 상기 메타데이터를 생성해도 되고, 이 경우, 복수 회의 시퀀스로부터 보다 많은 횟수의 시퀀스에 근거하여 상기 메타데이터를 생성해도 된다.
구체적으로는, 상기 컨텐츠에 대한 유저의 조작이 상기 컨텐츠에 포인터를 맞추는 것으로, 상기 컨텐츠의 변화가 상기 컨텐츠 외에 새로운 컨텐츠가 표시되도록 하는 것을 들 수 있다. 또한, 상기 컨텐츠가 계층 메뉴의 한 요소이며, 상기 새로운 컨텐츠가 상기 한 요소에 포함되는 하위 계층 메뉴인 것을 들 수 있다. 또한, 상기 컨텐츠에 대한 유저의 조작이 상기 컨텐츠를 클릭하는 것으로, 상기 컨텐츠의 변화가 상기 컨텐츠의 속성의 변화이며, 상기 메타데이터를 생성하는 단계는 상기 클릭 및 상기 속성의 변화가 복수 회 반복되는 것을 조건으로, 상기 컨텐츠가 체크 복수인 것을 보여주는 메타데이터를 생성하는 것을 들 수 있다.
또한, 상기 메타데이터에는 대상이 되는 상기 컨텐츠를 특정하는 정보를 포함해도 된다. 이 경우, 상기 컨텐츠를 특정하는 정보에는, 와일드 카드 UR 또는 와일드 카드 Xpath, 또는 둘 모두를 포함해도 된다.
또한, 본 발명을 클라이언트, 서버, 클라이언트 서버 시스템에 실행시키는 것으로 상술의 단계를 실행시키는 컴퓨터 프로그램으로서 파악할 수도 있다. 또한, 클라이언트가 실행하는 컴퓨터 프로그램의 형태로서는, 예를 들면, 웹 브라우저의 플러그인으로서 구성할 수 있다. 또한, 본 발명을 상술의 각 단계를 실행하는 클라이언트, 서버, 클라이언트 서버 시스템으로서 파악할 수도 있다.
본 발명에 의하면, 동적인 컨텐츠를 스크린 리더나 웹 스파이더에 있어서 보다 접근성이 높도록 하는 기술을 제공할 수 있다.
도 1은 시스템 전체의 구성을 나타내는 개념도이다.
도 2는 컴퓨터 시스템의 전형적인 하드웨어 구성을 설명하는 블록도이다.
도 3은 클라이언트 컴퓨터의 소프트웨어 구성을 설명하는 블록도이다.
도 4는 메타데이터의 생성, 등록의 전체적인 흐름을 나타낸 타이밍 차트이다.
도 5는 한 예로서 유저가 동적인 메뉴를 조작하는 태양을 나타내었다.
도 6은 한 예로서 유저가 체크 박스를 조작하는 태양을 나타낸다.
도 7은 트레이서에 의해 추적되는 이벤트와 애널라이저에 의해 생성되는 메타데이터를 나타낸다.
도 8은 메타데이터의 활용의 전체적인 흐름을 나타낸 타이밍 차트이다.
도 9는 한 예로서 동적인 메뉴의 스크린 리더에 의한 읽기 순서를 설명하는 도이다.
도 1은 시스템 전체의 구성을 나타내는 개념도이다. 여기에서는, 복수의 컴퓨터 시스템이 인터넷(네트워크)을 통하여 통신 가능하도록 접속되어 있다. 컴퓨터 시스템은 복수의 일반 클라이언트 컴퓨터(클라이언트)(1A(1)~(m)), 접근 서버(다른 컴퓨터)(1B), 웹 서버(서버)(1C), 복수의 스크린 리더 클라이언트 컴퓨터(1D(1)~(n)), 검색 서버(1E)로 각각 분류된다.
도 2는 컴퓨터 시스템의 전형적인 하드웨어 구성을 설명하는 블록도이다. 컴퓨터 시스템은 (저속 및 고속의) 버스(40), 버스에 접속되는 CPU(중앙 연산 처리 장치)(41), RAM(랜덤 액세스 메모리)(42), ROM(리드 온리 메모리)(43), HDD(하드 디스크 드라이브)(44), 통신 인터페이스(통신 장치)(45), 입출력 인터페이스(46)를 갖추고 있다. 또한, 입출력 인테페이스(46)에 접속되는 마우스(포인팅 장치)(47), CRT 디스플레이(디스플레이 장치)(48), 키보드(49) 등을 갖추고 있다. 또한, 이 컴퓨터 시스템은 퍼스널 컴퓨터 아키텍쳐를 채용하는 것으로서 설명하였지만, 예를 들면, 각 서버 1B, 1C, 1E에 있어서는, 보다 높은 데이터 처리 능력이나 가용성을 요구하여, CPU(41)나 HDD(44) 등을 다중화할 수 있다. 또한, 복수의 컴퓨터 시스템에 있어서 각 서버 1B, 1C, 1E의 기능을 실현할 수도 있다. 한편, 예를 들면, 일반 클라이언트 컴퓨터(클라이언트)(1A(1)~(m)), 스크린 리더 클라이언트 컴퓨터(1D(1)~(n))로서는, PDA(Personal Digital Assistant), 스마트 폰 등, 여러 타입의 컴퓨터 시스템을 채용할 수 있다.
도 3(a)는 일반 클라이언트 컴퓨터(클라이언트)(1A(1)~(m))의 소프트웨어 구성을 설명하는 블록도이고, 도 3(b)는 스크린 리더 클라이언트 컴퓨터(1D(1)~(n))의 소프트웨어 구성을 설명하는 블록도이다. 양 클라이언트 컴퓨터는 어느 것이나 기본적인 기능을 제공하는 오퍼레이팅 시스템(OS)과, OS의 기능을 이용하는 어플리케이션 소프트웨어로서의 웹 브라우저를 갖추고 있다. 한 예로서, 양 클라이언트 컴퓨터가 노트형 또는 데스크톱 형 퍼스널 컴퓨터인 경우, Microsoft Windows(상표)와 같은 오퍼레이팅 시스템, Internet Explorer(상표), Firefox(상표)와 같은 웹 브라우저가 도입되어 있다. 일반 클라이언트 컴퓨터(클라이언트)(1A(1)~(m))에는, 웹 브라우저의 플러그인 소프트웨어(3)가 인스톨되어 있다. 이 플러그인 소프트웨어(3)는 트레이서(31)와 애널라이저(32)를 갖추고 있다. 또한, 애널라이저(32)의 기능은 접근 서버(다른 컴퓨터)(1B)가 갖추어져도 된다. 한편, 스크린 리더 클라이언트 컴퓨터(1D(1)~(n))에도, 웹 브라우저의 플러그인 소프트웨어(5)가 인스톨되어 있다. 이 플러그인 소프트웨어(5)는 트랜스코더(51)를 갖추고 있다. 그 외에, 어플리케이션 소프트웨어로서 스크린 리더를 갖추고 있다.
이와 같이 하드웨어 구성 및 소프트웨어 구성에 근거하여, 후술하는 클라이언트 컴퓨터의 기능이 실현된다. 즉, 각 소프트웨어는 RAM(42) 상에 로드되어, CPU(41) 등에 의해 실행된다.
(메타데이터의 생성, 등록)
도 4 내지 도 7은 메타데이터의 생성, 등록을 설명하는 도면이며, 도 4는 메타데이터의 생성, 등록의 전체적인 흐름을 나타내는 타이밍 차트이며, 도 5는 한 예로서 유저가 동적인 메뉴(어떤 메뉴 항목에 포인터를 맞추면, 하위 메뉴가 표시됨)를 조작하는 태양을 나타내고, 도 6은 한 예로서 유저가 체크 박스(박스를 클릭하면 박스 중 마크가 표시, 비표시됨)를 조작하는 태양을 나타내고, 도 7은 트레이서(31)에 의해 추적되는 이벤트와 애널라이저(32)에 의해 생성되는 메타데이터를 나타낸다.
일반 클라이언트 컴퓨터(클라이언트)(1A(1)~(m))의 내의 한 대(1A(i))가 웹 서버(1C)에 인터넷(2)을 통하여 리퀘스트를 송신하고(화살표 s1), 그 리퀘스트에 응답하여 웹 서버(1C)가 송신하는 웹 페이지를 수신한다(화살표 s2). 상기 웹 페이지에는, 여러 가지의 동적 컨텐츠가 포함되어 있다. 유저가 그 웹 페이지를 조작하는 것으로, 어떤 특별한 조작이나 기술을 필요로 하는 일 없이, 의식하지 않고 자동적으로 메타데이터가 생성된다(화살표 s3). 이하, 그 방법을 상술한다.
도 5는 웹 페이지 중에 동적인 메뉴가 있는 경우를 나타낸다. 여기에서, 유저가 메뉴 중에서 Books(책)의 항목(사각 A로 테두리를 표시한 항목)에 포인터를 겹치면, 그 하위 계층의 복수의 항목, Books(책), Kindle(킨들), Textbooks(교과서), Magazines & Newspapers(잡지, 신문)(사각B로 테두리를 표시한 복수 항목)가 나타난다. 그 때, 트레이서(31)는 오퍼레이팅 시스템 또는 브라우저로부터 이벤트 Ei, Ei+1을 수취하여, 기억한다. 도 7에 나타낸 것처럼, 각 이벤트는 그 Event Name(이벤트 명), Time(시간), URL, Xpath(A부분을 보여주는 패스(path))가 기억된다. 한편, 하위 계층의 복수의 항목이 나타난 것에 대응하는 이벤트 Ei+1로서 Evemt Name: DOMAttr Modified, Time: ti+1, URL: (생략), Xpath: (B부분을 보여주는 패스)가 기억된다. 이와 같이, 유저가 조작을 수행할 때마다, 또한, 컨텐츠가 변화할 때마다, 트레이서(31)에 의해 이벤트가 추적되고, 기억된다.
일정 시간마다, 애널라이저(32)는 이것들의 이벤트의 시퀀스를 분석하고, 메타데이터를 생성한다. 예를 들면, 유저의 조작에 의한 이벤트 Ei와 그 후에 발생한 이벤트 Ei+1과의 생성시간 ti와 ti+1을 비교하고, 그 차가 어떤 임계값(ε)보다 작은 경우에는, 이벤트 Ei+1은 이벤트 Ei에 기인하여 발생했다고 판단하고, 그 취지의 메타데이터를 생성한다. 반대로 ti와 ti+1과의 차가 어떤 임계값(ε) 이상인 경우에는, 메타데이터는 생성하지 않는다. 여기에서는, 차가 임계값(ε)보다 작았다고 하고, 메타데이터(Mm)가 생성되었다. 각 메타데이터는, 도 7에 나타낸 것처럼, URL, Xpath(1), Xpath(2), type(종류), description(설명)이 기억된다. 예를 들면, 유저가 포인터를 Books(책)의 항목(사각 A로 테두리를 표시한 항목)에 포인터를 겹치면, 그 하위 계층의 복수의 항목 Books(책), Kindle(킨들), Textbooks(교과서), Magazines &Newspapers(잡지, 신문)(사각 B로 테두리를 표시한 복수 항목)가 나타난 것을 보여주는 메타데이터 Mm은, URL: (생략), Xpath1: (A부분을 보여주는 패스), Xpath2: (B부분을 보여주는 패스), type: relation, description: weight=1이 기억된다. 또한, type: relation은 웹 페이지의 A부분과 B부분과는 A가 B를 컨트롤한다는 관계가 있다는 것을 나타내고, description: weight=1은 이와 같은 메타데이터가 1회 검출되었다는 것을 나타낸다.
도 6은 웹 페이지 중에 체크 박스가 있는 경우를 나타낸다. 여기서, 유저가 체크 박스(사각 C로 테두리를 표시한 부분)를 클릭하면, 체크 표시는 비표시가 되고, 또 클릭하면 체크 표시는 재차 표시된다. 이때, 트레이서(31)는 오퍼레이팅 시스템 또는 브라우저로부터, 이벤트 Ej, Ej+1, Ek, Ek+1을 수취하고, 기억한다. 똑같이 각 이벤트는 그 Event Name(이벤트 명), Time(시간), URL, Xpath가 기억된다. 예를 들면, 유저가 체크 박스를 클릭한 것에 대응하는 이벤트Ej, Ek, El, 로서, Event Name: click, 각각 Time: t, tk, tl, URL: (생략), Xpath: (C부분을 보여주는 패스)가 기억된다. 한편, 체크 박스의 체크 표시는 표시, 비표시로 변화하는 것에 대응하는 이벤트 Ej+1, Ek+1, El+1으로서, Event Name: DOMAttrModified, Time: tj+1, tk+1, tl+1, URL: (생략), Xpath: (C부분을 보여주는 패스)가 기억된다. 이와 같이, 유저가 조작을 수행할 때마다, 또한 컨텐츠가 변화할 때마다, 트레이서(31)에 의해 이벤트가 추적되고, 기억된다.
일정 시간마다, 애널라이저(32)는 이것들의 이벤트의 시퀀스를 분석하여, 메타데이터를 생성한다. 예를 들면, 유저의 조작에 의한 이벤트(Ei)와 그 후에 발생한 이벤트(Ei+1)와의 발생 시간 t와 tj+1을 비교하고, 그 차가 어떤 임계값(ε)보다 작은 경우에는, 이벤트 Ej+1은 이벤트 Ej에 기인하여 발생했다고 판단한다. 같은 방법으로, 이벤트 Ek+1은 이벤트 Ek에 기인하여 발생했고, 이벤트 El+1은 이벤트 El에 기인하여 발생했다고 판단한다. 애널라이저(32)는 사각 C로 테두리를 표시한 부분이 체크 박스라는 취지의 메타데이터(Mn)을 생성한다. 사각 C로 테두리를 표시한 부분이 체크 박스인 것을 보여주는 메타데이터(Mn)으로서, URL: (생략), Xpath1: (C부분을 보여주는 패스), Xpath2: null, type: role, description: checkbox가 기억된다. 또한, type: role은 웹 페이지의 C부분의 역할을 나타내고, description: checkbox는 그 역할이 체크 박스라는 것을 나타낸다.
여기서, 임계값(ε)은 적절하게 설정할 수 있지만, 예를 들면, 0.3초 정도로 할 수 있다. 또한, 이 임계값(ε)을 이벤트 E에 따라 변경할 수도 있다. 예를 들면, 유저의 조작에 의한 이벤트 E의 후에 통신을 필요로 하는 이벤트가 발생한 경우에는, 그와 같은 이벤트가 발생하지 않는 경우에 비해, 임계값(ε)을 길게(예를 들면, 수초 정도) 설정할 수 있다. 또, 메타데이터 M을 생성할 때, 복수의 이벤트 시퀀스(유저의 조작에 의한 이벤트와 그 후 일정 시간 내에 발생한 이벤트 또는 이벤트군)의 내용이 서로 모순하는 경우에는, 다수결에 의해 채용하는 이벤트 시퀀스를 결정해도 된다. 또, 메타데이터의 URL, Xpath는 와일드 카드 URL, 와일드 Xpath(일부를 임의의 문자열로 하고, 그것을 예를 들어 *로 표현한다)로 하는 것도 할 수 있다. 이와 같이 구성하는 것으로, 페이지 와이드 또는 사이트 와이드에 적용 가능한 메타데이터를 표현할 수 있다.
또한, 각 이벤트의 추적의 개시 및 종료는, 예를 들면, 플러그인 소프트웨어(3)가 유저로부터의 명시적인 지시에 근거하여 수행할 수 있다. 이벤트의 추적이 종료하면, 생성한 메타데이터 M을 접근 서버(1D)에 송신한다(도 4의 화살표 s4). 접근 서버(1D)는 메타데이터 M을 외부로부터의 리퀘스트에 따라 송신 가능한 상태에서 데이터베이스에 보존한다. 여기에서는 일반 클라이언트 컴퓨터(1A(1)~(m)) 내의 한 대(1A(i))가 메타데이터를 생성하고, 접근 서버(1D)에 송신하는 경우를 나타내었지만, 다른, 일반 클라이언트 컴퓨터(1A(1)~(m))도 같다. 또한, 여기에서는 일반 클라이언트 컴퓨터(1A(1)~(m))이 메타데이터(M)을 생성하는 경우를 설명하였지만, 일반 클라이언트 컴퓨터(1A(1)~(m))이 이벤트 E를 접근 서버(1B)에 송신하고, 접근 서버(1B)가 이벤트 E로부터 메타데이터 M을 생성하도록 구성해도 된다.
(메타데이터의 활용)
도 8, 도 9는 메타데이터의 활용을 설명하는 도이며, 도 8은 메타데이터의 활용의 전체적인 흐름을 나타내는 타이밍 차트이고, 도 9는 한 예로서 동적인 메뉴(어떤 메뉴 항목에 포인터를 맞추면, 하위의 메뉴가 표시된다)의 스크린 리더에 의한 읽기 순서를 설명하는 도면이다.
스크린 리더 클라이언트(1D(1)~(n)) 내의 한 대(1D(j))가 웹 서버(1C)에 인터넷(2)을 통하여 리퀘스트를 송신하고(화살표 s11), 그 리퀘스트에 응답하여 웹 서버(1C)가 송신하는 웹 페이지를 수신한다(화살표 s12). 마찬가지로, 스크린 리더 클라이언트(1D(j))가 접근 서버(1B)에 인터넷(2)을 통하여 리퀘스트를 송신하고(화살표 s11'), 그 리퀘스트에 응답하여 접근 서버(1B)가 그 웹 페이지에 대응하는 메타데이터(M)을 송신하고, 클라이언트(1D(j))는 메타데이터(M)를 수신한다(화살표s12'). 클라이언트1D(j)의 트랜스코더(51)는, 메타데이터(M)를 이용하여 스크린 리더 유저(예를 들면, 시각장애인)에 대해서, 보다 접근성이 높은 환경을 제공할 수 있다(화살표 s13).
도 9는 클라이언트(D(j))가 메타데이터(Mn)를 이용하여 웹 페이지 중에 동적인 메뉴를 읽는 경우를 나타내고 있다. 예를 들면, 스크린 리더에 트랜스코더(51)가 들어가는 경우에는, 읽기 순서를 결정할 때에, 메타데이터(Mm)을 이용하는 것으로 Books(책)의 항목(사각 A로 테두리를 표시한 항목)의 다음으로 읽는 것은, Movies, Music, games(영화, 음악, 게임)이 아니라, Books(책)의 항목의 하위 계층의 항목 Books(책), Kindle(킨들), Textbooks(교과서), Magazines & Newspapers(잡지, 신문)(사각 B로 테두리를 표시한 복수 항목)이 된다. 이 읽기 순서는, 보다 많은 일반 유저의 웹 브라우징을 반영한 것이다. 또한, 스크린 리더와 트랜스코더(51)가 독립인 경우라도, 읽기 순서가 어디로 Jump시켜야 할지를 가이드 할 수 있다. 같은 방법으로, 체크 박스를 읽을 경우에는, 메타데이터(Mn)을 이용하여, 그것이 체크 박스인 것을 명시적으로 읽을 수 있다.
메타데이터(M)는, 스크린 리더의 읽기 순서, 읽기 내용을 적정화할 뿐만 아니라, 검색 서버(1E)의 웹 스파이더가 웹 페이지의 내용을 적절하게 크롤링(crawling)하고, 그 인덱스를 작성하는 경우에도 활용할 수 있다. 예를 들면, 유저의 조작에 따라, 웹 서버(1C)로부터의 새로운 다운로드가 필요한 컨텐츠에 대해서도 메타데이터의 relation의 정보에 근거하여 적절하게 그 정보를 얻을 수 있다.
1A(1)~(m) : 복수의 일반 클라이언트 컴퓨터(클라이언트),
1B : 접근 서버(다른 컴퓨터),
1C : 웹 서버(서버),
1D(1)~(n) : 복수의 스크린 리더 클라이언트 컴퓨터,
1E : 검색 서버,
31 : 트레이서,
32 : 애널라이저,
51 : 트랜스코더

Claims (17)

  1. 클라이언트와 네트워크를 통하여 접속되는 서버에 적용되는 방법으로,
    상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 보여주는 조작 이벤트와 상기 컨텐츠의 변화를 나타내는 변화 이벤트를, 상기 클라이언트로부터 수신하는 단계와,
    상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성(accessibility)을 향상시키는 메타데이터를 생성하는 단계를 포함하는
    방법.
  2. 청구항 1에 있어서, 상기 변화 이벤트는 상기 조작 이벤트에 응답하여 발생하는
    방법.
  3. 청구항 1에 있어서, 상기 메타데이터를 생성하는 단계는 상기 조작 이벤트와 상기 변화 이벤트와의 관계를 보여주는 메타데이터를 생성하는
    방법.
  4. 청구항 1에 있어서, 상기 컨텐츠에 대한 유저의 조작이 상기 컨텐츠에 포인터를 맞추는 것으로,
    상기 컨텐츠의 변화가 상기 컨텐츠 외에 새로운 컨텐츠가 표시되도록 할 수 있는
    방법.
  5. 청구항 2에 있어서, 상기 컨텐츠는 계층 메뉴의 한 요소이며, 상기 새로운 컨텐츠는 상기 한 요소에 포함되는 하위 계층 메뉴인
    방법.
  6. 청구항 1에 있어서, 상기 메타데이터를 생성하는 단계는, 상기 조작 이벤트 및 상기 변화 이벤트의 시퀀스에 근거하여 상기 메타 데이터를 생성하는
    방법.
  7. 청구항 6에 있어서, 상기 메타데이터를 생성하는 단계는, 복수회의 시퀀스로부터 보다 많은 회수의 시퀀스에 근거하여 상기 메타데이터를 생성하는
    방법.
  8. 청구항 1에 있어서, 상기 메타데이터를 생성하는 단계는, 상기 컨텐츠의 종류를 보여주는 메타데이터를 생성하는
    방법.
  9. 청구항 1에 있어서, 상기 컨텐츠에 대한 유저의 조작이 상기 컨텐츠를 클릭하는 것으로,
    상기 컨텐츠의 변화가 상기 컨텐츠의 속성의 변화이며,
    상기 메타데이터를 생성하는 단계는, 상기 클릭 및 상기 속성의 변화가 복수 회 반복되는 것을 조건으로, 상기 컨텐츠가 체크 박스인 것을 보여주는 메타데이터를 생성하는
    방법.
  10. 청구항 1에 있어서, 상기 메타 데이터에는 대상이 되는 상기 컨텐츠를 특정하는 정보를 포함하는
    방법.
  11. 청구항 1에 있어서, 상기 메타 데이터에는 대상이 되는 상기 컨텐츠를 특정하는 정보를 포함하는
    방법.
  12. 청구항 1에 있어서, 상기 네트워크에는 다른 컴퓨터가 접속되어 있어, 상기 메타데이터를 상기 컴퓨터에 송신하는 단계와,
    상기 클라이언트로부터 상기 서버에 대해서 상기 컨텐츠의 송신을 요구하는 것에 응답하여, 상기 메타데이터를 상기 컴퓨터로부터 수신하는 단계를 더 포함하는
    방법.
  13. 청구항 1에 있어서, 상기 메타데이터는 스크린 리더에 있어 상기 컨텐츠의 접근성을 향상시키는
    방법.
  14. 청구항 1에 있어서, 상기 메타데이터는 웹 스파이터에 있어 상기 컨텐츠의 접근성을 향상시키는
    방법.
  15. 청구항 1에 있어서, 상기 클라이언트는 디스플레이 장치와 포인팅 장치와 통신 장치를 갖추고,
    상기 통신 장치에 의해 네트워크를 통하여 상기 서버로부터 송신되는 컨텐츠를 상기 디스플레이 장치 상에 표시하는 단계와,
    유저가 상기 포인팅 장치를 조작하는 것에 응답하여, 상기 디스플레이 장치 상에 표시되도록 하는 상기 컨텐츠를 조작하는 단계를 더 갖춘
    방법.
  16. 서버와 네트워크를 통하여 접속되는 클라이언트에 적용되는 방법으로,
    상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 보여주는 조작 이벤트와 상기 컨텐츠의 변화를 나타내는 변화 이벤트를, 추적하는 단계와,
    상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성을 향상시키는 메타데이터를 생성하는 단계를 포함하는
    방법.
  17. 클라이언트와 네트워크를 통하여 접속되는 서버에 실행되는 컴퓨터 프로그램으로,
    실행됨에 따라 상기 서버에,
    상기 클라이언트 상에 표시되는 컨텐츠에 대한 유저의 조작을 보여주는 조작 이벤트와 상기 컨텐츠의 변화를 나타내는 변화 이벤트를, 상기 클라이언트로부터 수신시키는 단계와,
    상기 조작 이벤트 및 상기 변화 이벤트에 근거하여 상기 컨텐츠의 접근성을 향상시키는 메타데이터를 생성시키는 단계를 실행시키는
    컴퓨터 프로그램.
KR1020117025648A 2009-04-03 2010-03-30 협력 크롤링에 의한 리치 인터넷 어플리케이션을 위한 접근성을 향상시키는 방법 및 컴퓨터 프로그램 Ceased KR20110136881A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009091450 2009-04-03
JPJP-P-2009-091450 2009-04-03

Publications (1)

Publication Number Publication Date
KR20110136881A true KR20110136881A (ko) 2011-12-21

Family

ID=42828251

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117025648A Ceased KR20110136881A (ko) 2009-04-03 2010-03-30 협력 크롤링에 의한 리치 인터넷 어플리케이션을 위한 접근성을 향상시키는 방법 및 컴퓨터 프로그램

Country Status (6)

Country Link
US (1) US9104777B2 (ko)
EP (1) EP2416252A1 (ko)
JP (1) JP5363561B2 (ko)
KR (1) KR20110136881A (ko)
CN (1) CN102301351A (ko)
WO (1) WO2010113962A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8862985B2 (en) * 2012-06-08 2014-10-14 Freedom Scientific, Inc. Screen reader with customizable web page output
CA2790379C (en) 2012-09-20 2020-02-25 Ibm Canada Limited - Ibm Canada Limitee Crawling rich internet applications
CA2790479C (en) 2012-09-24 2020-12-15 Ibm Canada Limited - Ibm Canada Limitee Partitioning a search space for distributed crawling
JP2021190029A (ja) * 2020-06-04 2021-12-13 富士フイルムビジネスイノベーション株式会社 情報処理装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7546382B2 (en) * 2002-05-28 2009-06-09 International Business Machines Corporation Methods and systems for authoring of mixed-initiative multi-modal interactions and related browsing mechanisms
US7774378B2 (en) * 2004-06-04 2010-08-10 Icentera Corporation System and method for providing intelligence centers
CN100573503C (zh) * 2004-07-08 2009-12-23 微软公司 自动生成内容的方法和系统
JP4626852B2 (ja) * 2005-07-11 2011-02-09 日本電気株式会社 通信網の障害検出システム、通信網の障害検出方法及び障害検出プログラム
JP4140916B2 (ja) * 2005-12-22 2008-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション Webページにおける状態遷移を解析する方法
US8712563B2 (en) * 2006-10-24 2014-04-29 Slacker, Inc. Method and apparatus for interactive distribution of digital content
JP5039946B2 (ja) 2007-07-26 2012-10-03 インターナショナル・ビジネス・マシーンズ・コーポレーション クライアント装置およびサーバ装置の間の通信を中継する技術
JP5194673B2 (ja) * 2007-09-26 2013-05-08 株式会社日立製作所 携帯端末、及び情報の送受信方法
JP5110640B2 (ja) 2007-10-11 2012-12-26 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置
WO2010033750A2 (en) * 2008-09-18 2010-03-25 Jeffrey Harrang Systems and methods for automatic detection and coordinated delivery of burdensome media content

Also Published As

Publication number Publication date
EP2416252A4 (en) 2012-02-08
CN102301351A (zh) 2011-12-28
US9104777B2 (en) 2015-08-11
US20120054272A1 (en) 2012-03-01
WO2010113962A1 (ja) 2010-10-07
JPWO2010113962A1 (ja) 2012-10-11
JP5363561B2 (ja) 2013-12-11
EP2416252A1 (en) 2012-02-08

Similar Documents

Publication Publication Date Title
Baeza-Yates Bias on the web
US10642904B2 (en) Infrastructure enabling intelligent execution and crawling of a web application
US8533297B2 (en) Setting cookies in conjunction with phased delivery of structured documents
US8108377B2 (en) Predictive resource identification and phased delivery of structured documents
US8041781B2 (en) System and method for providing web system services for storing data and context of client applications on the web
Forward et al. A taxonomy of software types to facilitate search and evidence-based software engineering
US8046436B2 (en) System and method of providing context information for client application data stored on the web
US20080071766A1 (en) Centralized web-based software solutions for search engine optimization
US8046438B2 (en) System and method of restoring data and context of client applications stored on the web
US7996779B2 (en) System and method of providing a user interface for client applications to store data and context information on the web
WO2010095867A2 (ko) 이동통신 단말기와 아이피 기반 정보 단말기를 이용한 맞춤, 지능형 심볼, 아이콘 인터넷 정보 검색시스템
JP2013522798A (ja) 仮想ドキュメントを用いたインデックス付与と検索
US20110238653A1 (en) Parsing and indexing dynamic reports
Wilkinson et al. QMachine: commodity supercomputing in web browsers
JP2010257453A (ja) サーチクエリデータを用いて文書にタグ付けするシステム
US20120166415A1 (en) Supplementing search results with keywords derived therefrom
Akbar et al. Complete semantics to empower touristic service providers
JP5363561B2 (ja) コラボラティブクローリングによるリッチインターネットアプリケーションのためのアクセシビリティを向上させる方法及びそのコンピュータ・プログラム
US8046437B2 (en) System and method of storing data and context of client application on the web
Mahrouf et al. Stability analysis of a stochastic delayed SIR epidemic model with general incidence rate
Pierce et al. Using Web 2.0 for scientific applications and scientific communities
CN110516185B (zh) 动态网站的处理方法及装置
Tanaka et al. Meme media for clipping and combining web resources
CN110419056A (zh) 与会员制组织的唯一会员相关联的链接的网络呈现文档
Agosti Digital libraries

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20111028

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20140425

Comment text: Request for Examination of Application

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20150930

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20160322

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20150930

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I