KR100732134B1 - 테이블 표시 전환 방법, 텍스트 데이터 변환 프로그램 및 태그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 - Google Patents

테이블 표시 전환 방법, 텍스트 데이터 변환 프로그램 및 태그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR100732134B1
KR100732134B1 KR1020057005615A KR20057005615A KR100732134B1 KR 100732134 B1 KR100732134 B1 KR 100732134B1 KR 1020057005615 A KR1020057005615 A KR 1020057005615A KR 20057005615 A KR20057005615 A KR 20057005615A KR 100732134 B1 KR100732134 B1 KR 100732134B1
Authority
KR
South Korea
Prior art keywords
information
data
text data
block
tag
Prior art date
Application number
KR1020057005615A
Other languages
English (en)
Other versions
KR20050097912A (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 KR20050097912A publication Critical patent/KR20050097912A/ko
Application granted granted Critical
Publication of KR100732134B1 publication Critical patent/KR100732134B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 발명은 하나의 테이블의 일부분인 블록을 표시하기 위한 정보(<TABLE>…</TABLE>)와, 그 블록에 인접하는 블록에 대한 입력 수단인 「이전」 버튼 및 「다음」 버튼을 표시하기 위한 정보(2개의 <INPUT type="submit"> 태그)를 텍스트내에 내장하는 처리를 실행하도록, 확장 태그(<uji:table View…>)를 구성하는 것을 목적으로 한다.

Description

테이블 표시 전환 방법, 텍스트 데이터 변환 프로그램 및 태그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체{TABLE DISPLAY SWITCHING METHOD, TEXT DATA CONVERSION PROGRAM, AND TAG PROGRAM}
본 발명은 웹 페이지 상의 테이블을 스크롤시키기 위한 테이블 표시 전환 방법과, 이러한 테이블 표시 전환 방법을 실현한 장치로서 컴퓨터를 기능시키는 텍스트 데이터 변환 프로그램과, 이 텍스트 데이터 변환 프로그램에 따른 기능 중 주요한 기능을 실현한 장치로서 컴퓨터를 기능시키는 태그 프로그램에 관한 것이다.
주지되어 있는 바와 같이, 웹 클라이언트 머신이 HTTP[Hyper Text Transfer Protocol]에 따라 웹 서버 머신에 파일을 요구하면, 그 웹 서버 머신이 요구한 파일을 그 웹 클라이언트 머신으로 송신하고, 그 웹 클라이언트 머신이 수신한 파일내의 텍스트 데이터에 기초하여 웹 페이지를 표시한다.
이러한 컴퓨터 네트워크 시스템에 대하여 개발된 기술의 하나로서, 송신 전 파일중의 텍스트 데이터에 소정의 처리 결과를 내장하기 위한 기술이 있다. 이 기술이 적용된 텍스트 데이터는 마크업 언어로써 기술된 텍스트문 안에 스크립트라고 불리는 프로그램의 프로그램문(스크립트문)을 포함한다.
웹 서버 머신은 웹 클라이언트 머신으로 지정된 파일의 텍스트 데이터내에 스크립트문이 포함되어 있지 않는 경우, 그 텍스트 데이터를 웹 페이지 데이터로서 그대로 웹 클라이언트 머신으로 송신한다. 또한, 웹 서버 머신은 웹 클라이언트 머신으로 지정된 파일의 텍스트 데이터내에 스크립트문이 포함되어 있는 경우, 그 스크립트를 실행하고, 마크업 언어로 표현된 실행 결과를 그 스크립트문의 기술 위치에 기술함으로써, 웹 페이지 데이터를 생성하며, 그 웹 페이지 데이터를 웹 클라이언트 머신으로 송신한다.
또, 이 스크립트는 웹 서버 머신에 의해 실행되는 것이므로, 일반적으로, 서버측 스크립트라 불린다. 서버측 스크립트의 대표적인 것으로서는, 미국 썬마이크로시스템사에 의해 개발된 JSP[Java Server Pages(썬마이크로시스템사 상표)], 미국 마이크로소프트사에 의해 개발된 ASP[Active Server Pages(마이크로소프트사 상표)], 오픈 소스로 개발된 PHP[Personal HomePage: Hypertext Processor] 등이 있다.
[특허문헌 1] : 일본 특허 공개 평성 제11-237976호 공보
그런데, 한 화면내에 다 들어가지 않는 테이블(몇 개의 행과 몇 개의 열로 이루어진 2차원의 표)을 웹 클라이언트 머신에 표시할 경우, 전술한 서버측 스크립트를 이용하면, 그 테이블이 마치 스크롤 표시되는 것 같은 조작을 하기 위한 입력 수단을 웹 페이지내에 나타낼 수 있다.
보다 구체적인 설명으로서는, 웹 서버 머신에 준비된 파일중의 텍스트 데이터에는 스크롤 표시용 스크립트의 스크립트문이 내장된다.
이 스크립트에 따른 웹 서버 머신은 우선 한 화면에 다 들어가지 않는 테이블을 한 화면에 들어가는 크기의 몇 개의 블록으로 분할하고, 그 중의 한 블록을 특정한다. 다음에, 웹 서버 머신은 특정된 블록을 표시하기 위한 텍스트문을 마크업 언어로써 생성하고, 계속해서, 그 블록 직전의 블록으로 표시를 전환하기 위한 클릭 가능한 「이전」 버튼과, 그 블록 직후의 블록으로 표시를 전환하기 위한 클릭 가능한 「다음」 버튼을 표시하기 위한 텍스트문을 마크업 언어로써 생성한다. 그리고, 웹 서버 머신은 생성된 각 텍스트문을 이 스크립트가 내장되어 있던 텍스트 데이터에 있어서의 그 스크립트문의 기술 위치에 기술한다.
웹 클라이언트 머신이, 이렇게 생성된 텍스트 데이터를 웹 페이지 데이터로서 수신하면, 이 웹 클라이언트 머신에는 하나의 테이블의 일부분인 블록이 표시되는 동시에, 그 블록의 직전 또는 직후의 블록으로 표시를 전환하기 위한 클릭 가능한 버튼이 표시된다. 또한, 어느 한 쪽 버튼이 클릭된 경우에는, 그 블록의 직전 또는 직후의 블록이 버튼과 함께 표시된다. 따라서, 버튼 조작에 의해 블록(웹 페이지)의 표시가 순차적으로 전환되면, 마치 테이블이 스크롤한 것처럼 보인다.
그런데, 하나의 웹 페이지내에 2개 이상의 테이블을 한번에 도시하는 경우, 개발자는 이러한 웹 페이지용 파일중의 텍스트 데이터에 스크롤 표시용 스크립트문을 몇 개나 기술해야만 한다. 그 때문에, 다수의 테이블을 도시하는 웹 페이지용 데이터 작성에 시간이 걸린다.
본 발명은 전술한 바와 같은 종래의 사정을 감안하여 이루어진 것으로, 그 과제는 테이블에 대하여 스크롤 조작을 가능하게 하는 기능을 텍스트 데이터내에 내장하는 경우에 있어서, 그 기능용 프로그래밍을 각 테이블에 대하여 일일이 행하는 수고를 없앨 수 있는 테이블 표시 전환 방법을 제공하는 것에 있다. 또한, 본 발명의 과제는 이러한 테이블 표시 전환 방법을 실현하기 위한 장치로서 네트워크상의 컴퓨터를 기능시키는 텍스트 데이터 변환 프로그램과, 이러한 텍스트 데이터 변환 프로그램에 따른 기능 중 주요한 기능을 실현시키는 장치로서 컴퓨터를 동작시키는 태그 프로그램을 제공하는 것에 있다.
전술한 과제를 해결하기 위해서 발명된 테이블 표시 전환 방법은 웹 클라이언트 머신과 네트워크를 통해 연결될 수 있는 웹 서버 머신이 웹 클라이언트 머신으로부터 파일을 지정하는 HTTP 요구를 수신하면, 그 파일중의 데이터에 기초하여 웹 페이지 데이터를 생성하고, 그 웹 페이지 데이터를 요구원인 웹 클라이언트 머신으로 송신하는 컴퓨터 네트워크 시스템에 있어서, 상기 웹 서버 머신이 HTTP 요구 수신시에 웹 클라이언트 머신이 지정한 파일중의 데이터가 하나의 테이블을 표시하기 위한 확장적 기술 정보를 포함하는 텍스트 데이터인 경우에는, 그 확장적 기술 정보에 따라 그 테이블을 몇 개의 블록으로 분할한 것 중의 한 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 관한 정보가 내장된 웹 페이지 데이터의 취득을 지시하기 위한 입력 수단을 표시하기 위한 정보가 내장된 웹 페이지 데이터를 생성하며, 생성한 웹 페이지 데이터를 포함하는 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신하는 동시에, 그 HTTP 응답을 송신한 웹 클라이언트 머신으로부터 상기 지시를 포함하는 HTTP 요구를 수신한 경우에는, 그 지시 및 상기 확장적 기술 정보에 따라 인접 블록을 표시하기 위한 정보와, 그 인접 블록에 인접하는 블록에 대한 입력 수단을 표시하기 위한 정보가 내장된 웹 페이지를 생성하고, 생성한 웹 페이지 데이터를 포함하는 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신하는 것을 특징으로 한다.
이와 같이 구성되면, 확장적 기술 정보가 포함되는 데이터가 웹 클라이언트 머신에 의해 지정된 경우에는, 웹 서버 머신은 그 확장적 기술 정보에 따라 웹 페이지 데이터를 생성한다. 이 확장적 기술 정보는 하나의 테이블의 일부분인 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 대한 입력 수단을 표시하기 위한 정보를 텍스트 데이터내에 내장하는 처리를 실행하도록 구성되어 있다. 이 때문에, 텍스트 데이터의 개발자는 이 확장적 기술 정보를 이용함으로써, 하나의 테이블의 일부분인 블록을 전환하기 위한 기능을 텍스트 데이터에 간단히 내장할 수 있다. 그렇기 때문에, 개발자는 텍스트 데이터내에 확장적 기술 정보를 다수 내장함으로써, 2개 이상의 테이블을 한번에 도시하는 하나의 웹 페이지에 대한 텍스트 데이터를 간단히 작성할 수 있다.
또한, 상기 과제를 해결하기 위해서 발명된 텍스트 데이터 변환 프로그램은 웹 클라이언트 머신과 네트워크를 통해 연결될 수 있는 컴퓨터에 대하여, 상기 웹 클라이언트 머신으로부터 HTTP 요구가 송신되어 올 때까지 대기시키고, 상기 HTTP 요구를 수신한 경우에는 상기 웹 클라이언트 머신이 지정한 파일중의 데이터가 하나의 테이블을 표시하기 위한 확장적 기술 정보를 포함하는 텍스트 데이터인지 여부를 판별시키며, 상기 데이터가 확장적 기술 정보를 포함하는 텍스트 데이터인 경우에는, 그 확장적 기술 정보에 따라 그 테이블을 몇 개의 블록으로 분할한 것 중의 한 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 관한 정보가 내장된 텍스트 데이터의 취득을 지시하기 위한 입력 수단을 표시하기 위한 정보를 상기 텍스트 데이터에 내장하게 하고, 상기 각 정보가 내장된 상기 텍스트 데이터를 웹 페이지 데이터로서 보디에 내장한 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신시키며, 그 HTTP 응답을 송신한 웹 클라이언트 머신으로부터 상기 지시를 포함하는 HTTP 요구가 송신되어 올 때까지 대기시키고, 그 HTTP 요구를 수신한 경우에는, 그 지시 및 상기 확장적 기술 정보에 따라 인접 블록을 표시하기 위한 정보와, 그 인접 블록에 인접하는 블록에 대한 입력 수단을 표시하기 위한 정보를 텍스트 데이터에 내장하게 하고, 상기 각 정보가 내장된 텍스트 데이터를 웹 페이지 데이터로서 보디에 내장한 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신시키는 것을 특징으로 한다.
따라서, 이 텍스트 데이터 변환 프로그램은 전술한 본 발명에 따른 테이블 표시 전환 방법을 실현하기 위한 장치로서 네트워크 상의 컴퓨터를 기능시킬 수 있게 된다.
또한, 상기 과제를 해결하기 위해서 발명된 태그 프로그램은 웹 페이지 데이터의 기초로서 다수의 태그로 구성되는 텍스트 데이터 및 웹 페이지 상의 테이블에 기술되기 위한 데이터가 저장된 기록 장치에 대하여 연결될 수 있는 컴퓨터에 대하여, 상기 텍스트 데이터 중의 각 태그가 순차적으로 판독되는 동안에, 확장적 기술 정보인 특정 태그가 판독된 경우에는, 상기 테이블을 몇 개의 블록으로 분할한 것 중의 한 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 관한 정보가 내장된 웹 페이지 데이터의 취득을 지시하기 위한 입력 수단을 표시하기 위한 정보를 텍스트 데이터에 출력시키는 것을 특징으로 한다.
따라서, 이 태그 프로그램에 따르면, 전술한 본 발명에 의한 텍스트 데이터 변환 프로그램에 따른 기능 중 주요한 기능을 실현시키는 장치로서 컴퓨터를 동작시킬 수 있게 된다.
이상으로 설명한 바와 같이, 본 발명에 따르면, 테이블에 대하여 스크롤 조작을 가능하게 하는 기능을 텍스트 데이터내에 내장하는 경우에 있어서, 그 기능용 프로그래밍을 각 테이블에 대하여 일일이 행하는 수고를 없앨 수 있다.
도 1은 본 발명이 적용된 컴퓨터 네트워크 시스템의 전체를 도시한 블록도이다.
도 2는 웹 클라이언트 머신 및 웹 서버 머신의 각각의 내부를 도시한 블록도이다.
도 3은 업무 테이블의 데이터 구조의 일례를 도시한 도면이다.
도 4는 일람 테이블의 데이터 구조의 일례를 도시한 도면이다.
도 5는 본 발명에 따른 스크립트를 포함한 텍스트 데이터의 일례를 도시한 도면이다.
도 6은 웹 서버 처리의 내용을 도시한 흐름도이다.
도 7은 디스패치 처리의 내용을 도시한 흐름도이다.
도 8은 업 데이터 처리의 내용을 도시한 흐름도이다.
도 9는 웹 페이지 데이터 생성 처리를 도시한 흐름도이다.
도 10은 웹 페이지 데이터 생성 처리의 내용을 도시한 흐름도이다.
도 11은 태그 프로그램이 실행됨으로써 생성된 프로그램의 일례를 도시한 도면이다.
도 12는 입력 접수 처리의 내용을 도시한 흐름도이다.
도 13은 요구 파라미터의 종별을 설명하기 위한 테이블이다.
도 14는 「이전」 버튼 또는 「다음」 버튼의 클릭 전후에 웹 클라이언트 머신에 표시되는 테이블의 일례를 도시한 도면이다.
이하, 도면에 기초하여 본 발명을 실시하기 위한 형태를 설명한다.
도 1은 본 발명이 적용된 컴퓨터 네트워크 시스템의 전체를 도시한 블록도이다. 이 컴퓨터 네트워크 시스템은 웹 클라이언트 머신(10)과 웹 서버 머신(20)을 구비하며, 이들 머신(10, 20)은 인터넷(N)을 통해 서로 접속되어 있다.
도 2는 웹 클라이언트 머신(10) 및 웹 서버 머신(20)의 각각의 내부를 도시한 블록도이다. 웹 클라이언트 머신(10)은 CPU[Central Processing Unit](10a), 통신 제어 장치(10b) 및 기록 장치(10c)를 구비하고 있다.
CPU(10a)는 웹 클라이언트 머신(10) 전체를 제어하는 중앙 처리 장치이다. 통신 제어 장치(10b)는 인터넷(N)을 구성하는 라우터와의 사이에서 유선 또는 무선으로써 데이터를 송수신하기 위한 장치로서, 구체적으로는, LAN[Local Area Network] 접속 보드, 터미널 어댑터, 모뎀, 고주파 회로 등이다.
기록 장치(10c)는 랜덤 액세스 메모리, 하드디스크 드라이브, 플래시 메모리 등이다. 이 기록 장치(10c)에는 하드웨어와 소프트웨어를 종합적으로 관리하기 위한 오퍼레이팅 시스템 프로그램이나 각종 데이터 및 프로그램이 저장되어 있다. 이 기록 장치(10c)에 저장되어 있는 프로그램에는 웹 브라우저(11)가 포함된다.
웹 브라우저(11)는 인터넷(N)상의 웹사이트에서 웹 페이지 데이터나 이미지 데이터 등을 취득하여 웹 페이지나 이미지 등을 디스플레이에 표시하기 위한 프로그램이다. 이 웹 브라우저(11)를 실행한 CPU(10a)는 조작자로부터 입력 조작을 접수하면, HTTP[HyperText Transfer Protocol]에 따라서, 그 조작자에 의해 지정된 URL[Uniform Resource Locator]를 포함하는 HTTP 요구를 생성하고, 계속해서, URL 안의 도메인명에 의해 표시되는 웹 서버 머신(20)으로 그 HTTP 요구를 송신한다. 그리고, 웹 브라우저(11)를 실행중인 CPU(10a)는 HTTP 요구에 따라 HTTP 응답을 수신하면, 그 HTTP 응답의 보디 안의 데이터에 기초하여 웹 페이지나 이미지를 포함한 웹 브라우저 화면을 디스플레이에 표시한다.
웹 서버 머신(20)은 CPU(20a), 통신 제어 장치(20b) 및 기록 장치(20c)를 구비하고 있다. CPU(20a), 통신 제어 장치(20b) 및 기록 장치(20c)는 웹 클라이언트 머신(10)과 동등한 기능을 갖는 것이다. 웹 서버 머신(20)의 기록 장치(20c)에는 하드웨어와 소프트웨어를 종합적으로 관리하기 위한 오퍼레이팅 시스템 프로그램이나 각종 데이터나 프로그램이 저장되어 있다.
이 기록 장치(20c)에 저장되어 있는 데이터에는 다수의 업무 테이블(21), 일람 테이블(22) 및 다수의 텍스트 데이터(23)가 포함되어 있다. 또한, 이 기록 장치 (20c)에 저장되어 있는 프로그램에는 웹 서버 프로그램(24), 디스패치 프로그램(25), 스크립트 엔진 프로그램(26) 및 태그 프로그램(27)이 포함되어 있다.
업무 테이블(21)은 웹 서버 머신(20)을 이용하여 서비스를 제공하는 업자가 예컨대 사용자 정보를 관리하기 위한 테이블이다. 도 3은 사용자 정보를 관리하기 위한 업무 테이블(21)의 데이터 구조의 일례를 도시한 도면이다. 도 3의 업무 테이블(21)은 고객과 같은 수의 레코드를 갖고 있다. 각 레코드는 「회원 번호」, 「성명」, 「성별」, 「생년월일」, 「취미」 및 「프로필」의 필드를 갖고 있다.
「회원 번호」에는 상기 업자가 다수의 사용자 중에서 사용자를 식별하기 위한 식별 번호인 회원 번호가 기록된다. 「성명」, 「성별」, 「생년월일」 및 「취미」에는 사용자의 성명, 성별, 생년월일 및 취미가 기록된다. 「프로필」에는 예컨대 사용자 자신의 코멘트가 기록된다. 단, 사용자 자신의 코멘트가 없는 경우에는 「프로필」은 공란이 된다.
그런데, 도 3의 업무 테이블(21)은 상기 여섯 개의 필드 이외에 「표시 개시행」을 갖고 있다. 이 「표시 개시행」에는 표시 개시행 번호가 기록되어 있다. 이 표시 개시행 번호는 업무 테이블(21)에 축적되어 있는 다수의 레코드를 몇 개의 블록으로 분할했을 때에, 그 중 어느 한 블록을 지정하기 위해서 이용되는 번호이다. 보다 구체적인 설명으로서는, 이 표시 개시행 번호는 그 블록 안의 선두 레코드에 대한 전 레코드 중에서의 행 번호이다. 예컨대, 업무 테이블(21) 중의 전 레코드에 대하여 자연수의 행 번호가 할당되어 있는 경우에 있어서, 전 레코드를 3개의 레코드를 갖는 블록으로 분할한 경우에는, 그 중 2번째의 블록의 표시 개시행 번호는 「4」이다. 또, 이 「표시 개시행」중의 표시 개시행 번호는 후술하는 디스패치 프로그램(25)에 의해 다른 번호로 다시 기록됨으로써, 증가 또는 감소된다.
일람 테이블(22)은 다수의 업무 테이블(21)을 일괄 관리하기 위한 테이블이다. 도 4는 일람 테이블(22)의 데이터 구조의 일례를 도시한 도면이다. 도 4의 일람 테이블(22)은 업무 테이블(21)과 같은 수의 레코드를 갖고 있다. 각 레코드는 「테이블명」 및 「테이블 저장 위치」의 필드를 갖고 있다.
「테이블명」에는 업무 테이블(21)의 명칭이 기록된다. 「테이블 저장 위치」에는 업무 테이블(21)의 기록 장치(20c) 내에서의 기록 위치가 기록된다.
텍스트 데이터(23)는 소정의 콘텐츠를 갖는 웹 페이지를 웹 클라이언트 머신(10)으로 제공하기 위해서 이용되는 데이터이다. 구체적으로는, 이 텍스트 데이터(23)는 마크업 언어만으로 기술된 텍스트 데이터 혹은 스크립트 언어로 기술된 프로그램문(스크립트문)을 마크업 언어의 텍스트 안에 갖는 텍스트 데이터이다.
여기서, 상기 마크업 언어는 TML[HyperText Mark-up Language], XML[eXtesible Mark-up Language], XHTML[eXtesible HyperText Mark-up Language], 컴팩트 HTML, MML[Mobile Mark-up Language] 및 HDML[Hand-held Device Mark-up Language] 등이다.
또한, 전술한 스크립트 언어는 Java(썬마이크로시스템사 상표) 언어, VBScript(미국 마이크로소프트사 상표) 언어, JavaScript(썬마이크로시스템사 및 넷스케이프커뮤니케이션사 상표) 언어, 및 PHP[Personal HomePage: Hypertext Processor] 언어 등이다.
또, 본 발명은 스크립트문을 포함한 텍스트 데이터(23)를 이용하는 것이기 때문에, 기록 장치(20c)에는 스크립트를 포함한 텍스트 데이터(23)가 적어도 하나 기록되어 있는 것으로 한다. 도 5는 본 발명에 따른 스크립트를 포함한 텍스트 데이터(23)의 일례를 도시한 도면이다.
도 5의 텍스트 데이터(23)는 HTML로 기술된 텍스트(<html>…</html>)를 갖고 있다. 또한, HTML로 기술된 텍스트보다 이전에는 JSP[Java Server Pages(썬마이크로시스템사 상표)] 기술에 관한 확장 태그의 사용을 선언하는 태그(<% @taglib uri="uji-taglib" prefix="uji" %>)가 삽입되어 있고, 또한 HTML로 기술된 텍스트 중에는 확장적 기술 정보인 소위 확장 태그(<uji:tableView …>)가 사용되고 있다.
그런데, 기록 장치(20c)에는 텍스트 데이터(23)와 함께 전술한 웹 페이지의 콘텐츠를 구성하는 이미지, 사운드 및 비디오를 출력시키기 위한 데이터도 저장되어 있어도 좋다. 이 경우, 이들 각 데이터에 정의되어진 URL이 전술한 텍스트 데이터(23) 안에 기술된다.
웹 서버 프로그램(24)은 웹 브라우저(11)로부터의 요구에 따라 웹 페이지 데이터나 이미지 데이터 등을 송신하는 웹사이트를 인터넷(N)상에 형성하기 위한 프로그램이다. 이 웹 서버 프로그램(24)을 실행한 CPU(20a)는 웹 클라이언트 머신(10)으로부터 HTTP 요구를 수신하면, 그 HTTP 요구중의 URL에 기초하여 다른 프로그램에 따른 기능을 호출하는지 여부를 판별하고, 그 기능을 호출하지 않는 경우에는, 그 URL로 표시되는 파일중의 데이터를 HTTP 응답으로서 웹 클라이언트 머신(10)으로 그대로 송신하고, 그 기능을 호출하는 경우에는, 그 기능을 호출하여 처 리를 실행시킨 후에, 처리후의 데이터를 HTTP 응답으로서 웹 클라이언트 머신(10)으로 송신한다.
또, 이 웹 서버 프로그램(24)에는 HTTP 요구중의 URL과 그 URL에 대응하여 호출되는 기능의 대응 관계를 설정하기 위한 기능이 마련되어 있다. 어떤 URL이 어떤 기능과 대응하는지는 웹 서버 머신(20)에 기록되는 각 애플리케이션(웹 애플리케이션)의 개발자에 의해 사전에 설정된다. 본 실시 형태에서는, 마크업 언어만으로 기술된 텍스트 데이터(23)의 URL에 대해서는 어떤 기능도 호출하지 않고, 도 5에 도시된 바와 같은 스크립트를 포함한 텍스트 데이터(23)의 URL에 대해서만 디스패치 프로그램(25)에 의한 기능이 호출되도록 설정되어 있다.
디스패치 프로그램(25)은 웹 서버 프로그램(24)에 따른 기능으로부터 처리 요구를 접수하면, CPU(20a)에 대하여, 그 요구 내용에 따라 적절한 처리를 실행하는 기능을 선택하게 하여, 선택한 기능을 호출하게 하는 프로그램이다. 또, 이 디스패치 프로그램(25)에 의한 기능으로 호출되는 기능은 실제로는 다수 존재하지만, 이하에서는, 본 발명에 관련된 스크립트 엔진 프로그램(26)에 의한 기능에 대해서만 상세히 설명한다.
스크립트 엔진 프로그램(26)은 디스패치 프로그램(25)에 의한 기능으로부터 처리 요구를 접수하면, CPU(20a)에 대하여, HTTP 요구중의 URL로 표시되는 파일중의 텍스트 데이터(23)를 독출시켜, 그 텍스트 데이터(23)에 포함되는 스크립트를 실행시키는 프로그램이다. 이 프로그램(26)의 실행시에는 스크립트문 중의 태그가 CPU(20a)에 의해 하나하나 순으로 해석되고, 태그가 하나씩 읽혀질 때마다 그 태그 에 대응하는 처리가 실행된다. 따라서, 전술한 텍스트 데이터(23)에 포함되는 스크립트는 서버측 스크립트이다.
또, 이 스크립트 엔진 프로그램(26)은 텍스트 데이터(23)에 포함되는 스크립트 언어에 대응한 프로그램이어야만 한다. 구체적으로는, 이 스크립트 엔진 프로그램(26)은 스크립트 언어가 Java 언어인 경우에는 JSP[Java Server Pages(썬마이크로시스템사 상표)] 엔진 프로그램이고, 스크립트 언어가 VBScript 언어 혹은 JavaScript 언어인 경우에는 ASP[Active Server Pages(마이크로소프트사 상표)] 엔진 프로그램이며, 스크립트 언어가 PHP 언어인 경우에는 PHP 엔진 프로그램이다.
태그 프로그램(27)은 확장 태그에 대응하는 프로그램(태그 핸들러)으로서, 텍스트 데이터(23)에 포함되는 스크립트내의 확장 태그가 CPU(20a)에 의해 판독된 경우에만, 스크립트 엔진 프로그램(26)에 의한 기능으로 호출되어 실행된다.
이하, 이상과 같이 구성되는 컴퓨터 네트워크 시스템에 있어서 실행되는 처리에 대해서 설명한다.
처음에, 웹 서버 머신(20)에서는, 웹 서버 프로그램(24), 디스패치 프로그램(25) 및 스크립트 엔진 프로그램(26)이 CPU(20a)에 의해 판독됨으로써, 각 프로그램(24∼26)에 의한 기능이 상주한 상태에 있게 된다. 도 6은 이 가운데 웹 서버 프로그램(24)에 의한 기능에 의해 실행되는 웹 서버 처리의 내용을 도시한 흐름도이다.
웹 서버 처리를 개시한 후, 처음 단계 S101에서는, CPU(20a)는 HTTP 요구가 어느 한 웹 클라이언트 머신(10)으로부터 보내져 올 때까지 대기한다(S101; NO).
또, 웹 클라이언트 머신(10)의 이용자가 그 머신(10)을 조작하여 웹 브라우저(11)를 기동시켜, 이 웹 서버 머신(20)의 도메인명을 포함하는 URL을 입력하면, 웹 클라이언트 머신(10)으로부터 이 웹 서버 머신(20)으로 HTTP 요구가 송신된다.
그리고, 이 웹 서버 머신(20)의 CPU(20a)는 HTTP 요구를 어느 한 웹 클라이언트 머신(10)으로부터 수신하면(S101; YES), 단계 S102로 처리를 진행시킨다.
단계 S102에서는, CPU(20a)는 그 HTTP 요구중의 URL이 디스패치 프로그램(25)에 의한 기능을 호출해야만 하는 URL인지 여부를 판별한다. 그리고, HTTP 요구중의 URL이 예컨대 그 확장자가 ".html"이나 ".jpeg"인 URL과 같이, 디스패치 프로그램(25)에 의한 기능을 호출하지 않아도 좋은 URL이었을 경우(S102; NO), CPU(20a)는 단계 S103으로 처리를 진행시킨다.
단계 S103에서, CPU(20a)는 HTTP 요구중의 URL에 의해 표시되는 파일 중에서 데이터를 독출하고, 단계 S105로 처리를 진행시킨다.
한편, 단계 S102에 있어서, HTTP 요구중의 URL이, 예컨대 그 확장자가 ".jsp"인 URL과 같이, 디스패치 프로그램(25)에 의한 기능을 호출해야만 하는 URL이었을 경우(S102; YES), CPU(20a)는 단계 S104로 처리를 진행시킨다.
단계 S104에서, CPU(20a)는 디스패치 프로그램(25)에 의한 기능을 호출하고, 그 기능에 디스패치 처리를 실행시킨다. 도 7은 디스패치 처리의 내용을 도시한 흐름도이다.
디스패치 처리를 개시한 후, 처음 단계 S201에서는, CPU(20a)는 업 데이터 프로그램에 의한 기능을 호출한다. 또, 이 업 데이터 프로그램에 의한 기능은 디스 패치 프로그램(25)에 의한 기능에 의해 호출될 수 있는 다수 기능 중 하나이다. 그리고, CPU(20a)는 업 데이터 프로그램에 의한 기능을 호출한 후, 그 기능에 업 데이터 처리를 실행시킨다. 도 8은 업 데이터 처리의 내용을 도시한 흐름도이다.
업 데이터 처리를 개시한 후, 처음 단계 S301에서는, CPU(20a)는 단계 S101에 있어서 수신한 HTTP 요구와 함께 요구 파라미터도 수신했는지 여부를 판별한다.
또, 이 요구 파라미터는 웹 브라우저 화면내에 표시된 웹 페이지에 있어서 입력 조작이 있었을 경우에, 그 웹 페이지의 내부 콘텐츠인 폼이라는 기능에 의해 HTTP 요구와 함께 GET 메소드 또는 POST 메소드에 의해 웹 서버 머신(20)으로 송신되는 정보이다.
보다 구체적으로는, 이 요구 파라미터는 웹 클라이언트 머신(10)으로 송신된 웹 페이지 데이터 중의 <INPUT> 태그에 기술되어 있는 name 속성의 값과 value 속성의 값이다. 이 요구 파라미터는 name 속성값=value 속성값의 형태로 웹 클라이언트 머신(10)으로부터 웹 서버 머신(20)으로 보내져 온다.
그리고, 단계 S301에 있어서, HTTP 요구와 함께 요구 파라미터를 수신하지 않았을 경우에는, CPU(20a)는 업 데이터 처리를 종료하고, 도 7의 디스패치 처리에 있어서의 단계 S202로 처리를 진행시킨다.
한편, 단계 S301에 있어서, HTTP 요구와 함께 요구 파라미터를 수신하는 경우에는, CPU(20a)는 S302∼S310의 처리를 실행한다. 또, 이 S302∼S310의 처리에 대해서는 여기서 설명하는 것보다 후술하는 편이 이해하기 쉬우므로, 이들 처리의 설명을 뒤로 미룬다. CPU(20a)는 S302∼S310의 처리를 실행한 후, 업 데이터 처리 를 종료하고, 도 7의 디스패치 처리에 있어서의 단계 S202로 처리를 진행시킨다.
단계 S202에서, CPU(20a)는 "scroll"이라는 문자열을 name 속성값으로서 갖는 요구 파라미터가 존재하는지 여부를 판별한다. 그리고, CPU(20a)는 "scroll"이라는 문자열을 name 속성값으로서 갖는 요구 파라미터가 존재하면(S202; YES) 단계 S204로 처리를 진행시키고, "scroll"이라는 문자열을 name 속성값으로서 갖는 그 요구 파라미터가 존재하지 않으면(S202; NO) 단계 S203으로 처리를 진행시킨다.
단계 S203에서, CPU(20a)는 사용자 정의 프로그램에 의한 기능을 호출하고, 그 기능에 사용자 정의 처리를 실행시킨다. 또, 이 사용자 정의 프로그램에 의한 기능은 디스패치 프로그램(25)에 의한 기능에 의해 호출될 수 있는 다수 기능 중 하나이다. 그리고, CPU(20a)는 사용자 정의 프로그램에 의한 기능을 호출한 후, 그 기능에 사용자 정의 처리를 실행시킨다.
단, 이 사용자 정의 프로그램은 본 발명과는 직접 관계없기 때문에, 그 개략만을 간단히 설명한다. 이 사용자 정의 프로그램은 전술한 웹 애플리케이션의 개발자에 의해 작성된 프로그램이다. 예컨대, 웹 애플리케이션이 쇼핑 사이트에서의 수주 애플리케이션인 경우에, 사용자 정의 프로그램은 웹 클라이언트 머신(10)에 표시된 발주 전표 화면에 입력된 정보를 웹 서버 머신(20)이 요구 파라미터로서 수신했을 때에, CPU(20a)에 대하여, 그 정보를 수주 전표 데이터 베이스에 기록하는 처리를 실행시킨다. 또, 이러한 사용자 정의 프로그램의 작성은 웹 애플리케이션 개발자 사이에서는 일반적으로 행해지고 있다.
본 실시 형태에서는, 이 단계 S203에 있어서, 웹 애플리케이션의 개발자에 의해 사전에 작성된 사용자 정의 프로그램에 의한 기능이, 예컨대 회원 정보나 전표 정보의 축적이나 데이터의 편집 정리를 위해, 업무 테이블(21)로부터 레코드를 독출하고, 업무 테이블(21)에 레코드를 추가 기록하거나 혹은 업무 테이블(21)내의 레코드를 덮어쓰기 갱신하는 처리를 실행한다. 웹 클라이언트 머신(10)에 표시된 테이블(도 14 참조) 중의 텍스트 박스 등에 입력된 정보는 후술하는 업 데이터 처리에 의해 업무 테이블(21)에 덮어쓰기 갱신되기 때문에, 단계 S203에 있어서 실행되는 사용자 정의 프로그램에 의한 기능은 웹 클라이언트 머신(10)에 표시된 테이블 중의 텍스트 박스 등에 입력된 정보를 취득할 수 있다. CPU(20a)는 이러한 사용자 정의 프로그램에 의한 기능을 호출하여 실행시킨 후, 단계 S204로 처리를 진행시킨다.
단계 S204에서, CPU(20a)는 스크립트 엔진 프로그램(26)에 의한 기능을 호출하고, 그 기능에 웹 페이지 데이터 생성 처리를 실행시킨다. 도 9 및 도 10은 그 웹 페이지 데이터 생성 처리의 내용을 도시한 흐름도이다.
웹 페이지 데이터 생성 처리를 개시한 후, 처음 단계 S401에서는, CPU(20a)는 HTTP 요구중의 URL에 의해 표시되는 파일 중에서 텍스트 데이터(23)를 독출한다. 또, 이 단계 S401에 있어서 독출되는 텍스트 데이터(23)에는 도 5에 도시된 텍스트 데이터(23)와 같이, 스크립트문이 포함되어 있다.
다음 단계 S402에서, CPU(20a)는 독출한 텍스트 데이터(23) 중으로부터 최초의 태그를 처리 대상으로 하여 특정한다.
다음 단계 S403에서, CPU(20a)는 처리 대상 태그가 확장 태그를 규정하는 <uji:tableView> 태그인지 여부를 판별한다. 그리고, 처리 대상 태그가 <uji:tableView> 태그가 아닌 경우(S403; NO)에는 CPU(20a)는 단계 S404로 처리를 진행시킨다.
단계 S404에서, CPU(20a)는 처리 대상 태그에 따른 처리를 실행한다. 예컨대, 처리 대상 태그가 HTML 태그이면, CPU(20a)는 아무 것도 하지 않고, 처리 대상 태그가 스크립트 태그이면, CPU(20a)는 그 스크립트 태그에 따른 태그 프로그램을 실행한다. 그리고, CPU(20a)는 단계 S404를 실행한 후, 단계 S416으로 처리를 진행시킨다.
한편, 단계 S403에 있어서, 처리 대상 태그가 <uji:tableView> 태그인 경우(S403; YES), CPU(20a)는 단계 S405로 처리를 진행시킨다.
단계 S405에서, CPU(20a)는 <uji:tab1eView> 태그중의 "uji"를 prefix 속성값으로서 갖는 taglib 지시어를 통하여, <uji:tableView> 태그중의 "tableView"에 대응하는 태그 프로그램(27)을 독출하여 실행한다. 이하, 단계 S406∼S415의 처리는 이 태그 프로그램(27)에 의한 처리이다. 또, 도 11은 이 태그 프로그램(단계 S406∼S415)이 실행됨으로써 생성된 프로그램의 일례를 도시한 도면이다.
다음 단계 S406에서, CPU(20a)는 단계 S401에 있어서 독출한 텍스트 데이터(23)에 포함되는 스크립트에 있어서의 처리 대상인 <uji:tableView> 태그를 삭제하고, 그 <uji:tableView> 태그의 기재 위치에 <TABLE> 태그를 출력(기술)한다.
다음 단계 S407에서, CPU(20a)는 처리 대상인 <uji:tableView> 태그 중에 있어서의 table 속성값, page Size 속성값 및 cellType 속성값을 각각 테이블명, 표 시 행수 및 표시 형식으로서 독출한다.
또, 테이블명은 웹 페이지 상에 표시되는 테이블(도 14 참조)에 기술되는 데이터가 저장되어 있는 업무 테이블(21)을 지정하기 위한 테이블명이다. 또한, 표시 행수는 웹 페이지 상에 표시되는 테이블 전체의 표시 행수를 규정하는 값이다.
또한, 표시 형식은 웹 페이지 상에 표시되는 테이블의 한 행에 포함되는 셀수와, 각 셀 중에 기재되는 콘텐츠를 규정한다. 예컨대, 이 파라미터가 data;data;data이면, 상기 테이블의 한 행 중 3개의 셀에, 업무 테이블(21)로부터 독출된 3개의 데이터가 표시된다. 또한, 이 파라미터가 data;data;input;radio이면, 상기 테이블의 한 행 중 4개의 셀에, 업무 테이블(21)로부터 독출된 2개의 데이터와 텍스트 박스와 라디오 버튼이 표시된다.
다음 단계 S408에서, CPU(20a)는 일람 테이블(22)을 참조하여 그 테이블명에 대응하는 업무 테이블(21)을 독출한다.
다음 단계 S409에서, CPU(20a)는 독출한 업무 테이블(21)로부터 표시 개시행 번호를 독출한다.
다음 단계 S410에서, CPU(20a)는 단계 S409에 있어서 독출한 표시 개시 번호가 나타내는 레코드를 선두 레코드로 하여 단계 S407에 있어서 독출한 표시 행수의 수만큼, 그 업무 테이블(21)로부터 레코드를 독출한다. 또, 여기서 독출되는 각 레코드는 상기한 표시 형식으로써 규정되는 데이터수와 같은 수만큼의 필드밖에 갖고 있지 않다.
다음 단계 S411에서, CPU(20a)는 S410에 있어서 독출한 각 레코드의 데이터 를 <TABLE> 태그 이후에 출력(기술)한다. 구체적으로는, CPU(20a)는 웹 페이지 상에 표시되는 2차원의 표의 각 행의 위치를 규정하는 <TR> 태그와 그 표의 각 셀 중의 콘텐츠를 규정하는 <TD> 태그를 이용하여 전 셀 중의 콘텐츠에 관한 정보를 출력(기술)한다. 또, 업무 테이블(21)로부터 독출된 데이터를 셀 중의 콘텐츠로 하는 경우에는, <TD> 태그 이후에는 그 데이터가 그대로 기술된다. 또한, 텍스트 박스나 라디오 버튼을 셀 중의 콘텐츠로 하는 경우에는, <TD> 태그 이후에는 type 속성이 "text"나 "radio"인 <INPUT> 태그가 기술된다.
다음 단계 S412에서, CPU(20a)는 단계 S411에 있어서 출력된 <TD> 태그 이후에, </TABLE> 태그를 출력(기술)한다.
다음 단계 S413에서, CPU(20a)는 </TABLE> 태그 이후에 2개의 <INPUT> 태그를 출력(기술)한다. 이들 2개의 <INPUT> 태그는 웹 페이지에 스크롤 조작 버튼을 표시하기 위한 것으로, 이들의 type 속성에는 "submit"이라는 문자열이 설정된다.
또, 이 단계 S413에 있어서, CPU(20a)는 한쪽 <INPUT> 태그의 value 속성에는, "이전"이라는 문자열을, 그 onclick 속성에는, 웹 클라이언트 머신(10)에 의해 실행되는 서브루틴인 JavaScript 함수의 메소드로서 뒤에 규정하는 "My_Table_set('Backward')"라는 문자열을 각각 대입한다. 또한, CPU(20a)는 다른 쪽 <INPUT> 태그의 value 속성에는 "다음"이라는 문자열을, 그 onclick 속성에는 JavaScript 함수의 메소드로서 뒤에 규정하는 "My_Table_set('Forward')"이라는 문자열을 각각 대입한다. 또한, CPU(20a)는 양쪽 <INPUT> 태그의 name 속성에는 "SCROLL"이라는 문자열을 대입한다.
다음 단계 S414에서, CPU(20a)는 S413에 있어서 출력된 2개의 <INPUT> 태의 뒤에, 하나의 <INPUT> 태그를 출력(기술)한다. 이 <INPUT> 태그는 스크롤 조작에 이용되는 파라미터를 설정하기 위한 것으로서, 이 type 속성에는 "hidden"이라는 문자열이 설정된다. 또, 이 단계 S414에서는, CPU(20a)는 이 <INPUT> 태그의 name 속성에는, "My_Table. scrol1"의 문자열을, value 속성에는 ""(공란)을 대입한다.
다음 단계 S415에서, CPU(20a)는 단계 S414에 있어서 출력된 <INPUT> 태그 후에, 스크립트문을 출력(기술)한다. 이 스크립트문은 단계 S414에 있어서 출력되 <INPUT> 태그의 value 속성에 대하여, 스크롤 방향 규정용 'Forward' 또는 'Backward'의 문자열을 세트하기 위한 것이다. 구체적인 출력 방법으로서는, CPU(20a)는 우선 <SCRIPT> 태그를 출력(기술)하고, 다음에, 그 <SCRIPT> 태그 이후에, JavaScript 함수인 function My_Table_set(cmd)[…]을 기술한다. 또, 도 11에서는, JavaScript 함수의 [] 중에는 코멘트가 기술되어 있지만, 실제로는, 프로그램이 기술된다. 그리고, CPU(20a)는 스크립트 함수 뒤에 </SCRIPT> 태그를 출력(기술)한다.
다음 단계 S416에서, CPU(20a)는 단계 S401에 있어서 독출한 텍스트 데이터(23)중에 미처리 태그가 존재하는지 여부를 판별한다. 그리고, 미처리 태그가 존재한 경우(S416; YES)에는 CPU(20a)는 단계 S417로 처리를 진행시킨다.
단계 S417에서, CPU(20a)는 미처리 태그 중 다음 태그를 처리 대상으로서 특정하고, 단계 S403으로 처리를 되돌린다.
S403∼S417의 처리 루프를 실행 중에, 처리해야 할 태그가 없어지면(S416; NO), CPU(20a)는 단계 S416에서 처리를 분기시켜, 웹 페이지 데이터 생성 처리를 종료한다. 그 후, CPU(20a)는 도 7의 디스패치 처리를 종료하고, 도 6의 웹 서버 처리에 있어서의 단계 S105로 처리를 진행시킨다.
단계 S105에서, CPU(20a)는 단계 S103에서 독출한 데이터, 또는 단계 S104(단계 S204)에서 생성한 데이터를 보디에 저장한 HTTP 응답을, HTTP 요구를 송신해 온 웹 클라이언트 머신(10)으로 송신한다. 그 후, CPU(20a)는 처리를 단계 S101로 되돌리고, 어느 한 웹 클라이언트 머신(10)으로부터 다음 HTTP 요구가 송신되어 올 때까지 대기한다.
이상으로 도시된 웹 서버 처리가 웹 서버 머신(20)에 있어서 실행되므로, 웹 서버 머신(20)에는 도 5에 도시되는 바와 같은 텍스트 데이터(23)에 있어서 <uji:tableView> 태그의 부분이 도 11과 같은 텍스트로 치환된 것이 생성되고, 이 생성된 텍스트 데이터가 웹 페이지 데이터로서 웹 클라이언트 머신(10)으로 송신된다.
이러한 웹 페이지 데이터가 보디에 저장되어 있는 HTTP 응답을 수신한 웹 클라이언트 머신(10)에서는, 웹 브라우저(11)가 CPU(10a)에 대하여, 그 웹 페이지 데이터에 기초하여 웹 페이지를 표시한다. 그리고, 웹 클라이언트 머신(10)에서는, 웹 브라우저(11)에 의해 웹 페이지가 표시되면, 입력 접수 처리가 시작된다. 도 12는 이 입력 접수 처리의 내용을 도시한 흐름도이다.
입력 접수 처리를 시작한 후, 처음 단계 S501에서는, CPU(10a)는 버튼의 클릭 등의 이벤트가 발생할 때까지 대기한다(S501; NO). 그리고, 이벤트가 발생하면 (S501; YES), CPU(10a)는 단계 S502로 처리를 진행시킨다.
단계 S502에서, CPU(10a)는 이벤트가 스크롤 조작 버튼의 클릭인지 여부를 판별한다. 그리고, 이벤트가 스크롤 조작 버튼의 클릭이 아닌 경우(S502; NO)에는, CPU(20a)는 단계 S503으로 처리를 진행시킨다.
단계 S503에서, CPU(10a)는 단계 S501에 있어서 그 이벤트에 따른 처리를 실행한다. 예컨대, 이벤트가 웹 브라우저 화면의 URL 입력용 텍스트 박스에 URL이 입력된 후에 엔터 키를 눌렀을 경우, CPU(10a)는 그 URL을 포함하는 HTTP 요구를 생성하고, 그 URL 안의 도메인명에 의해 표시되는 웹 서버 머신(20)으로 그 HTTP 요구를 송신한다. 그리고, CPU(10a)는 이러한 처리를 실행한 후, 입력 접수 처리를 종료한다.
한편, 단계 S502에 있어서, 이벤트가 스크롤 조작 버튼의 클릭이었을 경우(S502; YES)에는, CPU(10a)는 단계 S504로 처리를 진행시킨다.
단계 S504에서, CPU(10a)는 클릭된 스크롤 조작 버튼에 따른 <INPUT> 태그의 onclick 속성의 값을 독출한다. 또, 여기서 독출되는 값은 도 11에 도시된 바와 같이, JavaScript 함수의 메소드를 규정하는 문자열이다.
다음 단계 S505에서, CPU(10a)는 단계 S504에 있어서 독출된 문자열에 대응하는 스크립트를 실행한다. 여기서 실행되는 스크립트는 도 11에 도시된 바와 같이, 3개의 <INPUT> 태그 뒤에 기술되어 있는 스크립트이다. 구체적으로는, CPU(10a)는 비표시 텍스트의 폼인 3번째 <INPUT> 태그의 value 속성에 대하여, 스크롤 방향('Forward' 또는 'Backward'의 문자열)+도트(.)+표시 행수를 세트한다. 또, 여기서 세트되는 스크롤 방향은 클릭된 스크롤 조작 버튼이 「이전」 버튼이면 'Backward'이고, 「다음」 버튼이면 'Forward'이다.
다음 단계 S506에서, CPU(10a)는 3번째 <INPUT> 태그의 name 속성의 값("My_Table.SCROLL")과 value 속성의 값('Forward' 또는 'Backward'+.+표시 행수)을 독출하고, "My_Table.SCROLL"="'Forward' 또는 'Backward'.표시 행수"라는 파라미터를, HTTP 요구와 함께 GET 메소드 또는 POST 메소드로써 웹 서버 머신(20)으로 송신한다. 또, 이 HTTP 요구에 포함되는 URL은 도 5에 도시되는 텍스트 데이터(23)의 URL과 같은 것이다. 그리고, HTTP 요구를 송신한 후, CPU(10a)는 입력 접수 처리를 종료한다.
이상으로 나타내는 바와 같은 입력 접수 처리가 실행되므로, 웹 페이지 상의 「이전」 버튼 또는 「다음」 버튼(도 14 참조)이 클릭된 경우에는, 요구 파라미터가 웹 서버 머신(20)으로 송신된다.
이것에 대하여, 웹 서버 머신(20)의 CPU(20a)는 이러한 요구 파라미터를 갖는 HTTP 요구를 수신하면(도 6의 단계 S101), 이 HTTP 요구중의 URL이 디스패치 프로그램(25)에 의한 기능을 호출해야만 하는 URL이라고 판별하고(도 6의 단계 S102; YES), 도 8의 업 데이터 처리를 시작한다(도 6의 단계 S104 및 도 7의 단계 S201). 그리고, CPU(20a)는 HTTP 요구에 요구 파라미터가 있다고 판별하고(도 8의 단계 S301; YES), 단계 S302로 처리를 진행시킨다. 이하, 뒤로 미루었던 업 데이터 처리에 있어서의 단계 S302∼S310에 대해서 설명한다.
단계 S302에서, CPU(20a)는 HTTP 요구와 함께 보내어져 온 요구 파라미터 중 최초의 것을 처리 대상으로서 특정한다.
다음 단계 S303에서, CPU(20a)는 처리 대상의 요구 파라미터의 종별이 무엇인지 판별한다. 또, 도 13은 요구 파라미터의 종별을 설명하기 위한 테이블이다.
이 도 13에 도시된 바와 같이, 요구 파라미터가 「테이블명. 행번호. 열번호=값」인 경우, 이 요구 파라미터는 웹 페이지 상의 테이블(도 14 참조) 중의 텍스트 박스에 입력되어 있는 문자열 데이터를 웹 서버 머신(20)으로 송신하기 위한 것이다. 또한, 요구 파라미터가 「테이블명. "radio". 열번호=행번호」인 경우, 이 요구 파라미터는 웹 페이지 상의 테이블 중 라디오 버튼이 온으로 설정되어 있는 행번호를 웹 서버 머신(20)으로 송신하기 위한 것이다.
또한, 요구 파라미터가 「"scroll"="이전" 또는 "다음"」인 경우, 이 요구 파라미터는 스크롤 조작 버튼이 클릭된 취지를 웹 서버 머신(20)으로 송신하기 위한 것이다. 또한, 요구 파라미터가 「테이블명. "scroll"='Forward' 또는 'Backward'. 표시 행수」인 경우, 이 요구 파라미터는 스크롤 방향과 스크롤 행수를 웹 서버 머신(20)으로 송신하기 위한 것이다.
그리고, 이 단계 S303에 있어서, CPU(20)는 요구 파라미터가 「테이블명. 행번호. 열번호=값」인 경우(S303; 테이블명. 행번호. 열 번호=값), 단계 S304로 처리를 진행시키고, 요구 파라미터가 「테이블명. "radio". 열번호=행번호」인 경우(S303; 테이블명. "radio". 열 번호=행번호), 단계 S306으로 처리를 진행시키며, 요구 파라미터가 「테이블명. "scroll"='Forward' 또는 'Backward'. 표시 행수」인 경우(S303; 테이블명. "scroll"=스크롤 방향. 표시 행수), 단계 S308로 처리를 진 행시키고, 요구 파라미터가 「테이블명. "scroll"=""」 또는 기타인 경우(S303; 테이블명. "scroll"="" 혹은 기타), 단계 S310으로 처리를 진행시킨다.
단계 S304에서, CPU(20a)는 일람 테이블(22)을 참조하여 요구 파라미터중의 파일명에 대응하는 업무 테이블(21)을 독출한다.
다음 단계 S305에서, CPU(20a)는 요구 파라미터중의 행번호 및 열번호에 의해 표시되는 그 업무 테이블(21)의 셀에 요구 파라미터중의 값(문자열 데이터)을 기록하고, 단계 S310으로 처리를 진행시킨다.
또한, 단계 S306에서, CPU(20a)는 일람 테이블(22)을 참조하여 요구 파라미터중의 파일명에 대응하는 업무 테이블(21)을 독출한다.
다음 단계 S307에서, CPU(20a)는 요구 파라미터중의 열번호에 의해 표시되는 그 업무 테이블(21)의 필드에서의 전체 셀 중, 요구 파라미터중의 행번호에 의해 표시되는 셀에는 true를, 그 이외의 셀에는 false를 기록하고, 단계 S310으로 처리를 진행시킨다.
또한, 단계 S308에서, CPU(20a)는 일람 테이블(22)을 참조하여 요구 파라미터중의 파일명에 대응하는 업무 테이블(21)을 독출한다.
다음 단계 S309에서, CPU(20a)는 그 업무 테이블(21)로부터 표시 개시행 번호를 독출하고, 그 표시 개시행 번호에 대하여 요구 파라미터중의 표시 행수를 감산 또는 가산한다. 이 때, CPU(20a)는 요구 파라미터중의 스크롤 방향이 'Forward'인 경우에는, 표시 개시행 번호에 표시 행수를 가산하고, 요구 파라미터중의 스크롤 방향이 'Backward'인 경우에는, 표시 개시행 번호에서 표시 행수를 감산한다. 그리고, CPU(20a)는 감산 또는 가산후의 표시 개시행 번호를 그 업무 테이블(21)에 기록하고, 단계 S310으로 처리를 진행시킨다.
단계 S310에서, CPU(20a)는 미처리 요구 파라미터가 존재하는지 여부를 판별한다. 그리고, CPU(20a)는 미처리 요구 파라미터가 존재한 경우(S310; YES)에는 단계 S302로 처리를 되돌려 다음 처리 대상 요구 파라미터를 특정하고, 미처리 요구 파라미터가 존재하지 않는 경우(S310; NO)에는 업 데이터 처리를 종료한다.
이러한 업 데이터 처리가 웹 서버 머신(20)에 있어서 실행되는 동시에, 스크립트를 포함한 텍스트 데이터(23)에 기초하여 작성되는 웹 페이지 데이터가 도 5의 스크립트 포함 텍스트 데이터(23)의 확장 태그 부분을 도 11의 텍스트로 치환한 것처럼 구성되어 있으므로, 본 실시 형태의 컴퓨터 네트워크 시스템에 따르면, 이하와 같은 작용이 있다.
즉, 도 5에 도시되는 텍스트 데이터(23)에 기초하여 작성된 웹 페이지가 웹 클라이언트 머신(10)에 표시되는 경우에, 웹 페이지 상의 「이전」 버튼 또는 「다음」 버튼이 클릭되면, 웹 서버 머신(20)에는 도 5의 텍스트 데이터(23)의 URL을 포함하는 HTTP 요구가 송신된다. 이 때, HTTP 요구와 함께, 스크롤 방향과 표시 행수를 나타내는 요구 파라미터가 송신되고, 이미 웹 클라이언트 머신(10)에 표시되는 웹 페이지 상의 표의 내용에 인접하는 내용의 표를 표시하기 위한 웹 페이지 데이터가 이 요구 파라미터에 기초하여 생성되며, 이 웹 페이지 데이터가 HTTP 응답으로서 웹 클라이언트 머신(10)으로 송신된다. 따라서, 웹 클라이언트 머신(10)의 조작자는 웹 페이지 상의 「이전」 버튼 또는 「다음」 버튼을 클릭함으로써, 웹 페이지 상의 표의 내용의 뒷 부분이나, 그 앞 부분을 표시할 수 있으므로, 도 14에 도시된 바와 같이, 이 조작자에게 있어서는, 마치 웹 페이지 상의 표가 스크롤되고 있는 것처럼 보인다.
본 실시 형태에 따르면, 스크립트를 포함한 텍스트 데이터(23)에 확장 태그(<uji:tableView…>)가 포함됨으로써, 전술한 바와 같이 테이블의 스크롤 표시가 기능한다. 이 확장 태그는 하나의 테이블의 일부분인 블록을 표시하기 위한 정보(<TABLE>/…</TABLE>)와, 그 블록에 인접하는 블록에 대한 입력 수단인 「이전」 버튼 및 「다음」 버튼을 표시하기 위한 정보(2개의 <INPUT type="submit"> 태그)를 텍스트내에 내장하는 처리를 실행하도록 구성되어 있다(도 9의 단계 S405∼S415). 이 때문에, 웹 페이지 데이터의 개발자는 이 확장 태그를 텍스트 데이터(23)에 내장함으로써, 하나의 테이블의 일부분인 블록을 전환 표시하기 위한 기능을 웹 페이지에 간단하게 담을 수 있다. 더구나, 이와 같이 간단하기 때문에, 개발자는 텍스트 데이터내에 확장 태그를 다수 내장함으로써, 2개 이상의 테이블을 한번에 도시하는 하나의 웹 페이지에 대한 텍스트 데이터도 간단히 작성할 수 있다.

Claims (13)

  1. 웹 클라이언트 머신과 네트워크를 통해 연결될 수 있는 웹 서버 머신이 웹 클라이언트 머신으로부터 파일을 지정한 HTTP 요구를 수신하면, 그 파일중의 데이터에 기초하여 웹 페이지 데이터를 생성하고, 그 웹 페이지 데이터를 요구원인 웹 클라이언트 머신으로 송신하는 컴퓨터 네트워크 시스템에 있어서,
    상기 웹 서버 머신은,
    HTTP 요구 수신시에 웹 클라이언트 머신이 지정한 파일중의 데이터가 테이블을 표시하기 위한 확장적 기술 정보를 포함하는 텍스트 데이터인 경우에는, 그 확장적 기술 정보에 따라 그 테이블을 몇 개의 블록으로 분할한 것 중 하나의 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 관한 정보가 내장된 웹 페이지 데이터의 취득을 지시하기 위한 입력 수단을 표시하기 위한 정보가 내장된 웹 페이지 데이터를 생성하고,
    생성한 웹 페이지 데이터를 포함하는 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신하는 동시에,
    그 HTTP 응답을 송신한 웹 클라이언트 머신으로부터 상기 지시를 포함하는 HTTP 요구를 수신한 경우에는, 그 지시 및 상기 확장적 기술 정보에 따라 인접 블록을 표시하기 위한 정보와, 그 인접 블록에 인접하는 블록에 대한 입력 수단을 표시하기 위한 정보가 내장된 웹 페이지를 생성하며,
    생성한 웹 페이지 데이터를 포함하는 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신하는 것을 특징으로 하는 테이블 표시 전환 방법.
  2. 제1항에 있어서, 상기 HTTP 요구를 통하여 웹 클라이언트 머신에 의해 지정되는 파일의 데이터는 마크업 언어로 기술된 텍스트의 내부에 서버측 스크립트를 포함하는 텍스트 데이터인 것을 특징으로 하는 테이블 표시 전환 방법.
  3. 제1항 또는 제2항에 있어서, 상기 입력 수단은 type 속성에 "submit"를 포함하는 HTML의 <INPUT> 태그를 갖는 것을 특징으로 하는 테이블 표시 전환 방법.
  4. 제3항에 있어서, 상기 입력 수단은 type 속성에 "hidden"을 포함하는 HTML의 <INPUT> 태그를 가지며, 그 name 속성 및 value 속성에, 표시 중인 블록에 인접하는 블록에 관한 정보가 내장되는 것을 특징으로 하는 테이블 표시 전환 방법.
  5. 제4항에 있어서, 상기 입력 수단은 JavaScript 함수인 function을 이용하여 상기 <INPUTtype="hidden"> 태그에 있어서의 value 속성에 대하여 표시 중인 블록에 인접하는 블록에 관한 정보를 내장하는 것을 특징으로 하는 테이블 표시 전환 방법.
  6. 웹 클라이언트 머신과 네트워크를 통해 연결될 수 있는 컴퓨터에 대하여,
    상기 웹 클라이언트 머신으로부터 HTTP 요구가 송신되어 올 때까지 대기시키고,
    상기 HTTP 요구를 수신한 경우에는, 상기 웹 클라이언트 머신이 지정한 파일중의 데이터가 테이블을 표시하기 위한 확장적 기술 정보를 포함하는 텍스트 데이터인지 여부를 판별시키며,
    상기 데이터가 확장적 기술 정보를 포함하는 텍스트 데이터인 경우에는, 그 확장적 기술 정보에 따라 그 테이블을 몇 개의 블록으로 분할한 것 중 하나의 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 관한 정보가 내장된 텍스트 데이터의 취득을 지시하기 위한 입력 수단을 표시하기 위한 정보를 상기 텍스트 데이터에 내장하게 하고,
    상기 각 정보가 내장된 상기 텍스트 데이터를 웹 페이지 데이터로서 보디에 내장한 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신시키며,
    그 HTTP 응답을 송신한 웹 클라이언트 머신으로부터 상기 지시를 포함하는 HTTP 요구가 송신되어 올 때까지 대기시키고,
    그 HTTP 요구를 수신한 경우에는, 그 지시 및 상기 확장적 기술 정보에 따라 인접 블록을 표시하기 위한 정보와, 그 인접 블록에 인접하는 블록에 대한 입력 수단을 표시하기 위한 정보를 텍스트 데이터에 내장하게 하고,
    상기 각 정보가 내장된 텍스트 데이터를 웹 페이지 데이터로서 보디에 내장한 HTTP 응답을 요구원인 웹 클라이언트 머신으로 송신시키는 것을 특징으로 하는 텍스트 데이터 변환 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  7. 제6항에 있어서, 상기 컴퓨터는 마크업 언어로 기술된 텍스트의 내부에 서버측 스크립트를 포함하는 텍스트 데이터가 저장된 기록 장치에 연결되고,
    테이블을 표시하기 위한 확장적 기술 정보를 포함하는 텍스트 데이터는 상기 기록 장치에 저장되어 있는 텍스트 데이터 중 하나인 것을 특징으로 하는 텍스트 데이터 변환 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  8. 제6항 또는 제7항에 있어서, 상기 컴퓨터에 대하여,
    type 속성에 "submit"를 포함하는 HTML의 <INPUT> 태그와, type 속성에 "hidden"을 포함하는 HTML의 <INPUT> 태그를 입력 수단으로서 텍스트 데이터에 출력시키는 것을 특징으로 하는 텍스트 데이터 변환 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  9. 제8항에 있어서, 상기 컴퓨터에 대하여,
    상기 <INPUT type="hidden"> 태그에 있어서의 value 속성에 대하여 표시중인 블록에 인접하는 블록에 관한 정보를 내장시키는 JavaScript 함수인 function을 텍스트 데이터내에 출력시키는 것을 특징으로 하는 텍스트 데이터 변환 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  10. 제9항에 있어서, 상기 입력 수단은 JavaScript 함수인 function을 이용하여 상기 <INPUT type="hidden"> 태그에 있어서의 value 속성에 대하여 표시중인 블록에 인접하는 블록에 관한 정보를 내장하는 것을 특징으로 하는 텍스트 데이터 변환 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  11. 삭제
  12. 삭제
  13. 웹 페이지 데이터의 기초로서 다수의 태그로 구성되는 텍스트 데이터 및 웹 페이지 상의 테이블에 기술되기 위한 데이터가 저장된 기록 장치에 대하여 연결될 수 있는 컴퓨터에 대하여,
    상기 텍스트 데이터 중의 각 태그가 순차적으로 판독되는 동안에, 확장적 기술 정보인 특정 태그가 판독된 경우에, 상기 테이블을 몇 개의 블록으로 분할한 것 중의 한 블록을 표시하기 위한 정보와, 그 블록에 인접하는 블록에 관한 정보가 내장된 웹 페이지 데이터의 취득을 지시하기 위한 입력 수단을 표시하기 위한 정보를 텍스트 데이터에 출력시키는 태그 프로그램을 저장한 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
KR1020057005615A 2003-01-30 2003-12-15 테이블 표시 전환 방법, 텍스트 데이터 변환 프로그램 및 태그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 KR100732134B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2003-00022668 2003-01-30
JP2003022668A JP2004234380A (ja) 2003-01-30 2003-01-30 テーブル表示切替方法,テキストデータ変換プログラム及びタグプログラム

Publications (2)

Publication Number Publication Date
KR20050097912A KR20050097912A (ko) 2005-10-10
KR100732134B1 true KR100732134B1 (ko) 2007-06-27

Family

ID=32820696

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057005615A KR100732134B1 (ko) 2003-01-30 2003-12-15 테이블 표시 전환 방법, 텍스트 데이터 변환 프로그램 및 태그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체

Country Status (4)

Country Link
US (1) US20050198568A1 (ko)
JP (1) JP2004234380A (ko)
KR (1) KR100732134B1 (ko)
WO (1) WO2004068352A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8087058B2 (en) 2004-01-19 2011-12-27 Comcast Cable Holdings, Llc HDTV subscriber verification
CN100426295C (zh) * 2006-03-04 2008-10-15 李勇坚 数据分页显示的方法
US7779346B2 (en) * 2006-10-03 2010-08-17 Research In Motion Limited System and method for freezing columns and rows in a UI table
JP6271838B2 (ja) * 2013-01-25 2018-01-31 キヤノン株式会社 通信装置、通信装置の制御方法、プログラム
KR20180079759A (ko) * 2017-01-02 2018-07-11 삼성전자주식회사 텍스트를 인식하는 방법 및 단말기
CN110020359B (zh) * 2017-11-08 2024-04-05 亿阳信通股份有限公司 应用在网页前端的数据处理方法、装置及存储介质
CN110968744B (zh) * 2018-09-30 2023-09-05 中国移动通信有限公司研究院 一种资源查询方法及装置、设备、存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297440A (ja) * 2001-03-30 2002-10-11 Fujitsu Ltd 情報提供方法、情報提供装置及びその装置での処理をコンピュータに行なわせるためのプログラムを格納した記憶媒体

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297440A (ja) * 2001-03-30 2002-10-11 Fujitsu Ltd 情報提供方法、情報提供装置及びその装置での処理をコンピュータに行なわせるためのプログラムを格納した記憶媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
일본특허공개공보 2002-297440

Also Published As

Publication number Publication date
WO2004068352A1 (ja) 2004-08-12
JP2004234380A (ja) 2004-08-19
US20050198568A1 (en) 2005-09-08
KR20050097912A (ko) 2005-10-10

Similar Documents

Publication Publication Date Title
JP5575511B2 (ja) ウェブサイト閲覧システム、サーバ及びクライアント端末
KR100757820B1 (ko) 리얼타임 웹 공유 시스템
US7464381B1 (en) Content update proxy method
US20030081000A1 (en) Method, program and computer system for sharing annotation information added to digital contents
US20020047856A1 (en) Web based stacked images
JPWO2008126796A1 (ja) サービス・プログラムを生成する技術
JP2011186913A (ja) ウェブサイト閲覧システム及びサーバ
JP2011204158A (ja) 端末装置、処理システム、処理方法及びプログラム
US20050198568A1 (en) Table display switching method, text data conversion program, and tag program
US7117431B2 (en) Dialog boxes to simplify web-based forms
JP4938589B2 (ja) ウェブページ閲覧装置およびウェブページ閲覧サーバ
JP4806644B2 (ja) ジャンプ先サイト決定プログラム、記録媒体、ジャンプ先サイト決定方法、およびジャンプ先サイト決定装置
JP2007503041A (ja) データ資産をキャッシュする方法
JP2008217263A (ja) 記憶端末、情報処理装置および情報処理システム
JP2009251754A (ja) ページカスタマイズサーバ、ページカスタマイズプログラムおよびページカスタマイズ方法
JP4844253B2 (ja) 別ドメインの情報を取得する方法並びにこの方法に用いるサーバシステム及びサーバ用プログラム
JP2005165872A (ja) 携帯端末向けコンテンツの表示システムおよび方法、プログラムおよびプログラム記録媒体
JP5001747B2 (ja) ウェブページ閲覧装置
JP6235744B1 (ja) ウェブページ制作支援システム
KR100904366B1 (ko) 모바일 페이지 구현 시스템 및 방법, 그리고 이에 적용되는서버
JP2010191908A (ja) 分散処理システム、分散処理方法、分散処理システムの開発支援装置および開発支援方法
JP4714586B2 (ja) 通信装置、データ共有システム、データ共有装置、及びコンピュータプログラム
KR20030007734A (ko) 퍼스널 배너 작성 프로그램
JP2008234279A (ja) シナリオ作成プログラム及びシナリオ作成装置
CN117313662A (zh) 文档管理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
LAPS Lapse due to unpaid annual fee