\documentstyle[epsf,ascmac,alltt,fancybox]{jarticle}
\title{WWW について}
\date{}
\author{}
\newcommand{\dg}{\gt}
\newcommand{\dm}{\min}
\setlength{\topmargin}{-12mm}
\setlength{\textheight}{24.5truecm}
\setlength{\textwidth}{17truecm}
\setlength{\oddsidemargin}{-8.5mm}
\setlength{\evensidemargin}{-8.5mm}
\newcommand{\丸数字}[1]
{{\ooalign{\hfill\(\scriptstyle#1\)\hfill\crcr\(\bigcirc\)}}}
\newcommand{\CR}{\ovalbox{\ooalign{\hfill\(\scriptstyle\hookleftarrow\)
\hfill\crcr}}}
\begin{document}
\maketitle
WWW\index{WWW} とは World Wide Web の略であり，ネットワーク上に離散する
さまざまな情報を，誰もが容易にアクセスできるようにした広域情報システム
である．名称はインターネット上に{\dg\bf 蜘蛛の巣}(web)
を張ったように情報のリンクが張り巡らされることに由来する．
単に Web とか W3 ということもある．

WWW\index{WWW} は，1989 年に CERN (European Laboratory for Particle Physics，
ヨーロッパ素粒子物理学研究所) の Tim Berners-Lee らによって提案された．
WWW の目的は，既存のインターネット上の資源をハイパーテキストを用いて
有機的に結合し，利用者に見やすいインターフェースを提供することである．
この目的を達成するには，イメージ，グラフィックスなどを活用した，
分かりやすくて魅力的なプレゼンテーションが必要となる．
そこで，WWW では分散型，異種プラットフォームでの動作，データの共有，
マルチメディア化を考慮したシステム設計がなされている．

WWW はサーバ・クライアントモデルであり，インターネット上のサーバに格納
されている各種データは，クライアントによりアクセスされる(図\ref{fig:WWW})．
このクライアントで代表的なものが Netscape Navigator や Internet Explorer
である．
\begin{center}\begin{figure}
    \epsfile{file=WWW.eps,scale=0.6}
    \caption{WWWの構成}
    \label{fig:WWW}
\end{figure}\end{center}
WWWには次のような特徴がある．
\begin{enumerate}
\item 分散型：\\
情報を複数のコンピュータに分けて保存する．同じデータを他で持っている必要が
なく，情報の共有が可能，

クライアント／サーバ型システム：\\
WWWサーバに格納されている各種情報を Netscape などのクライアントによりアクセス

\item 異種プラットフォームでの動作：\\
UNIX，Windows95，Windows98，MacOS など各種計算機上で動作

\item シームレスな結合：\\
FTP や Gopher などを用いて公開されているインターネット
上の様々な情報をハイパーテキストを用いて有機的に結合

\item ネットワーク透過性：\\
URL という記述を用いてインターネット上のすべての
資源を一意に名前付けすることによって，利用者はネットワーク上のサーバの場所
を意識することなくサーバ上を渡り歩くことができる．
ネットサーフィンと称している．

\item マルチメディア化：\\
テキスト，イメージ，音声，動画などを活用した，
分かりやすくて魅力的なプレゼンテーションが可能
\end{enumerate}

WWW を構成する技術は，HTTP(HyperText Transfer Protocol)
\index{HTTP}\index{HyperText Transfer Protocol},
HTML(HyperText Markup Language)\index{HTML}
\index{HyperText Markup Language},
URL(Uniform Resource Locator)\index{URL}
\index{Uniform Resource Lacator} などである．

\section{WWWサーバ}
WWW サーバは情報を発信する側で，ここにはホームページといわれるそのサーバの
中で中心となるページがある．各ページは HTML(HyperText Markup Language) 
という言語によって記述されていて，他のページや画像，音声などの資源を
有機的に関連させたハイパーテキスト形式の文書になっている．

一方，情報を受け取る側をクライアントという．HTML を使うと，文字設定
(フォントの大きさ，形など)，レイアウト設定 (文書のレイアウトや作表など)，
リンク設定(他のページやデータへのリンク)により，文書の論理的な構造を
記述できる．論理的な構造なので，クライアント側で表示されるイメージそのもの
は指定できない．

HTTP (HyperText Transfer Protocol) は，WWW サーバとクライ
アントが通信するために用いられるプロトコルであり，HTML で書かれたハイパー
テキストは主にこのプロトコルに従って転送される．WWW ではインターネット上の
すべての資源について，一意に名前付けを行う必要がある．

このための記述方法が URL (Uniform Resource Locator) である．名前の与え方は，
「接続プロトコル://サーバアドレス/パス」のように書く．
例えば，{\tt http://www.nanzan-u.ac.jp/index.html} である．
接続プロトコルとしては，{\tt http} の他に，{\tt ftp} (ファイル転送)， 
{\tt gopher} (メニュー形式の情報提供サービス)， {\tt nntp} (ニュースシステム)，
{\tt telnet} (遠隔計算機の操作) などが指定できる．

\section{WWW クライアント}
WWW クライアントは WWW サーバからの情報を受け取る側で，WWW ブラウザと
もいう．
初期の WWW ブラウザはテキスト表示だけだったが，1993 年にアメリカのイリ
ノイ大学の研究グループが開発した NCSA Mosaic は，グラフィックス表示を含
む使いやすい
ユーザインターフェースによって急激に普及した．その後，表示速度の向上や作表，
セキュリティなどの機能が拡張された Netscape Navigator (Netscape社，
以下 Netscape と略) や Internet Explorer (Microsoft社) などが発表された．

現在の主流ともいえる Netscape の特徴の一つはプラグインソフトの豊富さである．
プラグインソフトとは Netscape の機能を拡張するソフトウェアであり，
ブラウザ自身が表示や再生できないデータをプラグインの側で解釈し，
表示／再生を行う．ホームページに埋め込まれたサウンドを聞いたり
(LiveAudio，RealAudio)，ムービを再生したり (LiveVideo，Shockwave)，
VRML (Virtual Reality Modeling Language) ビューアを用いて 3D 空間の世界を
体験する(Live3D) ことができる．また，電話と同様の会話やグラフィックを共有
しながらのオンライン会議 (CoolTalk) や，インタラクティブ性のあるホームページ
(Java，JavaScript) も登場してきた．
Progressive Networks 社が開発した RealAudio プラグインは，長時間にわたる
ファイル転送を待たなくてもライブ放送やニュース，音楽などの番組を楽しむこと
ができる．
このように WWW クライアントは様々なマルチメディア情報を扱える統合環境へと
発展しつつある．

\section{HTML，HTTP，URL}
WWW は HTML によって記述されるハイパーテキストによって，画像や音声や動画などの
資源を適切に組み合わせて表現力を向上させる．
ハイパーテキストは，簡単にいえば関連した情報をつなぎあわせていく技術である．
HTML の記述例を次に示す．
その結果を画面表示したものが(図\ref{fig:HTML})である．
\begin{verbatim}
<html>
<head>
<title>Welcome to Nanzan Hanako's home page</title>
</head>
<body bgcolor="#EEEEEE">
<h1>南山花子のホームページへようこそ<img src="nanzan.gif"></h1>
<center>
 &lt; 南山花子のマーク &gt;
</center>
<hr>
<ol>
  <li>自己紹介
    <ul>
      <li>名前: 南山花子(なんざんはなこ)
      <li>出身地: 名古屋市昭和区(なごやししょうわく)
      <li>所属: 数理情報学部数理科学科
      <li>学年: 1 年生
      <li>誕生日: 10 月 12 日
    </ul>
  <li>将来つきたい職業
    <ul>
      <li>ソフトウエアエンジニア
      <li>通訳
    </ul>
</ol>
<hr>
<a href="http://www-p.seto.nanzan-u.ac.jp/classes/it/bp1/S-IV">戻る</a>
<address>Nanzan Hanako &lt;00it999@it.nanzan-u.ac.jp &gt;</address>
</body>
</html>
\end{verbatim}

\begin{center}\begin{figure}
  \epsfile{file=wwwsamp.ps,scale=0.7}
  \caption{HTMLによる記述例}
  \label{fig:HTML}
\end{figure}\end{center}
HTTP は WWW サーバとクライアントが通信するために用いられるプロトコルであり，
HTML で書かれたハイパーテキストは主にこの HTTP プロトコルに従って転送される．

ハイパーテキストでは他の資源情報を指示するために，インターネットのすべての
資源について，一意に名前付けを行う必要がある．これに用いられる名前
付けの方法が URL である．

名前の与え方は，{\dg\bf プロトコル}\index{ぷろとこる@プロトコル}
(protocol)\index{protocol}，{\dg\bf サーバネーム}
\index{さーばネーム@サーバネーム}(server name)\index{server name}，
{\dg\bf パスネーム}\index{ぱすねーむ@パスネーム}(path name)という
構成要素を使う．

次の例では {\tt http} というプロトコルを使って
{\tt www-p.seto.nanzan-u.ac.jp} というサーバの
パス {\tt /\verb:~:yas/} にある {\tt index.html} というデータを示すことになる．
\begin{center}
{\large{\tt http://www-p.seto.nanzan-u.ac.jp/\verb:~:yas/index.html}}
\end{center}
さらに，{\tt index.html} というファイル名を省略しても同じ場所に
移動する．つまり，ディレクトリ名を指定した場合は，そのディレクトリ
にある {\tt index.html} というファイルが指定されたことになる．

プロトコルの項目には，HTTP の他に，FTP，telnet，Gopher，WHOIS，WAIS など
さまざまなものが指定可能である．

\section{Netscape Navigator ブラウザの使い方}
Netscape の主な特徴は次の通りである．
\begin{itemize}
\item マウスだけで簡単に操作ができるグラフィカルユーザインターフェース(GUI)
\item ハイパーテキスト・ハイパーメディアを介した情報アクセス
(図\ref{fig:HyperText})\
\item WWW，Gopher，FTP，WHOISなどへアクセスできる統合されたインターフェース
\end{itemize}

\begin{center}\begin{figure}
    \epsfile{file=HyperText.eps,scale=0.8}
    \caption{ハイパーテキストの概要}
    \label{fig:HyperText}
\end{figure}\end{center}

\subsection{Netscape の開始}
Netscape を利用するには，{\tt netscape} コマンドを起動する．
\begin{itembox}[l]{{\tt Netscape}の起動}
\begin{alltt}
prompt\% \underline{netscape \&}\CR
\end{alltt}
\end{itembox}
すると，Netscape のウィンドウが表示されるので，その上でマウスの左ボタン
をクリックすると，あらかじめ設定されているホームページが表示される．
ウインドウシステムの上では，\epsfile{file=neticon.ps,scale=0.9} アイコンを
クリックすればよい．

\subsection{Netscape ウィンドウ操作}
Netscape では，ウィンドウ上部のメニューやボタンなどによって
いろいろな操作を行うことができる．以下では，よく使う主なものを説明する．
\subsubsection{ファイルメニュー(File Menu)}
\begin{itemize}
\item Open\ Location\\
  URL記述を入力して，指定したサーバへ接続する．Openボタンと同様の機能である．
\item Open\ File\\
　現在使用しているホスト上のファイルを表示する．
\item Exit\\
  Netscapeを終了する．
\end{itemize}

\subsubsection{ビューメニュー(View Menu)}
\begin{itemize}
\item Reload\\
  現在表示しているドキュメントを再ロードする．
  HTML 記述を変更した場合には，再ロードする必要がある．
  再ロードしないと，WWW クライアントに保存(キャッシュ)
  された古い情報が表示される．Reload ボタンと同様の機能である．
\item Document\ Source\\
　現在表示しているドキュメントの HTML 記述が別ウィンドウ上に表示される．
\end{itemize}

\subsubsection{Bookmarksメニュー(Bookmarks Menu)}
　よく参照するドキュメントを呼び出すためのメニュー．
\begin{itemize}
\item Add\ Bookmark\\
  現在表示しているドキュメントを，自分の Bookmark に追加する．
\end{itemize}

\subsubsection{Toolbarボタン}

\begin{itemize}
\item Back\\
　直前に表示したドキュメントに戻る．

\item Forward\\
　前のドキュメントに戻っているとき，先のドキュメントに進む．

\item Home\\
　ホームドキュメント(Netscape を起動したときに表示される最初のドキュメント)
を表示する．本学では，南山大学ホームページが表示される．

\item Reload\\
　現在表示しているドキュメントを再表示する．

\item Stop\\
　ドキュメントの転送を中止したいときに使用する．
\end{itemize}

\subsubsection{スクロールバー(Scrollbar)}
マウスの左ボタンでドラッグすることにより，ドキュメントのスクロール
を行う．

\subsection{Netscapeの終了}
ファイルメニューから，`Exit'を選択すると終了する．

\section{検索サービス}
インターネット上には様々な情報が自由に公開されているが，それらの情報を
集中管理している人や組織は存在しない．そこで「分散している情報に関する情報」
を提供するサービス(検索サービス)がある．検索サービスはキーワードを
入力して情報を捜し出す検索エンジンと，情報をカテゴリごとに階層的に分類して
一覧表示するディレクトリ・サーバとに大別できる．

検索エンジンの代表としては，goo({\tt http://goo.ne.jp/}) がある．
使い方は，WWW ブラウザ上でキーワードを入力して検索ボタンを押すだけで，
指定した文字列を含む WWW サーバや FTP サーバなどの情報(タイトルや URL 
など)が表示される．一般にこのような検索だけでは大量の検索結果が表示さ
れてしまうため，
複数の検索条件を組み合わせて絞り込むオプションも提供されている．
検索エンジンの内部では，検索ロボットを使って世界中のサーバにアクセスして，
そのサーバで提供されている情報を自動収集している．

ディレクトリ・サーバの代表は，Yahoo({\tt http://www.yahoo.co.jp/}) である．
ここでは各種サーバで公開している内容が人手でチェックされ，芸術，教育，
コンピュータなどの分野別に分類，整理してあり，関連情報にアクセスしやすい
という特徴がある．なお，Yahoo では検索エンジンも提供されている．

\section{VRML}
VRML (Virtual Reality Modeling Language) は，3次元空間内の物体の構造や
色などの属性を記述するための言語である．WWWクライアント上に 3 次元グラ
フィックス空間を表現するための技術として，1995 年に VRML の1.0 版の仕様が
公開された．マウスを用いて自分の見たい角度から物体を眺めたり，空間の
中を自由に移動できるナビゲーション機能が備わっている．

現在の仕様の VRML ({\tt http://vrml.org/}) では，空間内の物体が
動き出したりマウスでクリックすると色を変えるなどの，動きやインタラクショ
ンを定義できる特徴がある．VRMLだけでは表現できない複雑な動作やユーザイ
ンタフェースは，Java や JavaScript などの別のプログラミング言語によって記
述されている．

HTML と同様に VRML ファイルを表示するには，VRML ブラウザが必要となる．
物体の移動や回転などの 3 次元描画や動作の処理はすべてブラウザ側で行われる
ため，一度 VRML ファイルを取り込めばスムーズな動きが実現できる．
この VRML ブラウザには，三つのタイプ (スタンドアローンアプリケーション型，
ヘルパーアプリケーション型，プラグイン型) がある．

\section{HTML ミニミニ解説}
この節では図 \ref{fig:HTML} の HTML 記述例にそって HTML の解説をする．
HTML 記述においては，書式の制御は，\newline
{\tt <element>...</element>}で囲むものと，
単独で記述するものがある．
HTML 記述は，ヘッダ部とボディ部に分かれる．
{\tt<head>，</head>}で囲まれる{\dg\bf ヘッダ部}には題名(タイトル)が
書かれ，ドキュメントとは別の部分(Netscape ではメニューの上)に表示される．

{\tt <body>，</body>} で囲まれる {\dg\bf ボディ部} は本文を記述する部分で，
表示画面の完全な規定はしていない．
Netscape など使用するクライアントや画面の大きさによって，テキストの折り返し
位置が異なって表示されたりする．

{\dg\bf ヘッディング} は普通の文章よりも大きく太いフォントで表示される．
{\tt <h1>〜<h6>} までの 6 レベル種類がある．

{\tt <h1>\ Text\ of\ heading</h1>}

HTML ではインライン・イメージを扱うことができ，GIF，JPEG ファイル
などが表示できる．表記は {\tt <img\ src="test.gif">} のようにする．
{\tt src} はイメージのパス名で，
{\tt /} で始まれば絶対パス，そうでないものは相対パスとなる．
{\tt <hr>} は横に線を引く．

{\tt <ul>，</ul>} はリスト表記のひとつで，{\tt <li>} からはじまる
要素の先頭に●をつけて表示する．
ハイパーテキストの相互参照を実現する表記が {\dg\bf アンカー}
\index{あんかー@アンカー} である．
\begin{center}
{\tt <a href="riding.jpg">乗馬</A>}
\end{center}
のように記述する．{\tt href} はファイルのパスで，URL の記述が書ける．
\end{document}
