libwww

libwww (Library World Wide Web) は、Unix系およびWindows向けの高度にモジュール化されたクライアントサイドウェブAPIであり、そのAPIのリファレンス実装の名前でもある。

libwww
作者 ティム・バーナーズ=リー、ジャン=フランソワ・グロフ[1]
開発元 ヘンリク・F・ニールセン
初版 1.0(1992年11月)[2]
最新版
5.4.1[3] / 2006年12月4日 (2006-12-04)
リポジトリ
プログラミング
言語
C
対応OS FreeBSD[4], Solaris[4], Linux[4], Mac OS X[4], Microsoft Windows[4]
サポート状況 不活発
種別 インターネットアプリケーション用API
ライセンス W3C Software Notice and License
公式サイト www.w3.org/Library/

ウェブブラウザ/エディタインターネットボット、バッチツールなど各種アプリケーションに利用可能。完全なHTTP/1.1のキャッシングパイプライニングPOSTDigest認証deflateなど、libwwwにはプラグイン可能なモジュールがある。

libwwwには、プロトコルに関する実験の叩き台としての役割と[5]車輪の再発明を防ぐ役割がある[6]

libcurlはlibwwwの後継とみなされている[7]

歴史

1991年から1992年、ティム・バーナーズ=リーCERNにいた学生ジャン=フランソワ・グロフは World Wide Web の可能性を示すため、オペレーティングシステムNeXTstep向けに書かれた最初のブラウザ WorldWideWeb の各種コンポーネントを移植性の高いC言語で書き直す作業を行った[8]。当初libwwwは Common Library と呼ばれ、独立したソフトウェアとなってはいなかった[9]。一般公開される前にlibwwwは CERN program library (CERNLIB) に組み込まれた[10]。1992年7月、このライブラリはDECnetに移植された[11]。1993年5月の World Wide Web Newsletter でバーナーズ=リーは、ウェブブラウザ開発を促進するため Common Library をlibwwwと改称し、パブリックドメインで提供すると発表した[12]。当初パブリックドメインではなく GNU General Public License で公開するつもりだったが、GPLにするとIBMのような大企業が利用をためらう可能性があると考え断念した[13][14]。急いで開発したため、ロバート・カイリューがこれをMacWWWに組み込もうとしたときに問題が生じた[15]

1994年11月25日 (version 2.17) からヘンリク・F・ニールセンがlibwwwの責任者となった[16]。1995年3月21日、version 3.0 のリリースと共に、CERNが完全に手を引き World Wide Web Consortium (W3C) がlibwwwの全責任を負うことになった[2]。1995年以降、Line Mode Browser が独立してリリースされることはなくなり、libwwwのパッケージの一部となった[17]

W3Cは、HTML3/CSS/PNGといった標準やlibwwwの提供する機能の叩き台兼評価ツールとしてArenaというウェブブラウザを開発し[18]、beta 3 リリース後にAmayaで置換した[19]。2003年9月2日、W3Cはリソース不足からlibwwwの開発を停止し、その後の開発はオープンソース・コミュニティに期待するとした[16][20]

機能と特徴

libwwwは、以下の通信プロトコルをサポートしている[21]

他に以下の機能を有する。

libwwwは各種プラグインをサポートしている[6]

libwww を利用しているアプリケーション

19以上のアプリケーションがlibwwwを使用している(いた)[30]

libwwwには次のアプリケーションが含まれている。

  • Command Line Tool - ウェブアクセス用の単純なバッチツール。libwwwの使い方を示すためのアプリケーション。[6][47]
  • Line Mode Browser[48]
  • Webbot - libwwwを使ったボットの作り方を示すための単純なアプリケーション[6][49]
  • Mini Server - libwwwを使ったサーバまたはプロキシの作り方を示すための小さなアプリケーション[6]

批判

libcurlの開発者らは、libwwwは移植性が低く、スレッドセーフではないし、HTTP認証方式のいくつかも実装していないと批判している[50]。また、プロジェクトによってはlibcurlもlibwwwも重過ぎるという批判もある[51]

脚注

  1. WEB HISTORY DAY: PIONEERING SOFTWARE AND SITES”. The World Wide Web History Project. 2010年3月28日閲覧。
  2. Kahan, José (2002年6月7日). Change History of libwww”. World Wide Web Consortium. 2010年5月30日閲覧。
  3. Bancroft, Vic (2006年12月4日). Changes with libwww 5.4.1”. World Wide Web Consortium. 2010年5月30日閲覧。
  4. W3C libwww libraries”. PhysioNet. Cambridge, MA: University of São Paulo (2008年3月19日). 2010年5月30日閲覧。
  5. libwww”. ROS. 2010年6月2日閲覧。
  6. Nielsen, Henrik Frystyk (1998年5月14日). W3C Reference Library”. World Wide Web Consortium. 2010年6月27日閲覧。
  7. Moody, George B. (July, 14 2010). WFDB Programmer's Guide: E. Sources”. 2010年8月4日閲覧。
  8. Kesan, Jay; Rajiv Shah (2003). “Deconstructing Code”. Yale Journal of Law & Technology 6: p. 291. http://papers.ssrn.com/sol3/papers.cfm?abstract_id=597543.
  9. Berners-Lee, Tim (1992年11月3日). Common Library”. World Wide Web Consortium. 2010年6月3日閲覧。
  10. How the web began”. CERN (2008年). 2010年7月25日閲覧。
  11. Crémel, Nicole (2001年4月5日). A Little History of the World Wide Web”. CERN. 2010年6月2日閲覧。
  12. Berners-Lee, Tim (1993年5月). May World-Wide Web News”. World Wide Web Consortium. 2010年6月7日閲覧。
  13. History of Libwww (PDF). GoverningWithCode.org. p. 3. 2012年6月15日閲覧。
  14. Berners-Lee, Tim. Policy”. World Wide Web Consortium. 2010年9月1日閲覧。
  15. Interview Robert Cailliau on the WWW Proposal: "How It Really Happened."”. Institute of Electrical and Electronics Engineers (1997年11月). 2010年8月18日閲覧。
  16. Kahan, José (2003年9月2日). Libwww - the W3C Protocol Library”. World Wide Web Consortium. 2010年6月2日閲覧。
  17. Kreutzmann, Dr. Helge (2010年1月6日). WWW-Browsers for Linux”. 2010年6月3日閲覧。
  18. Lie, Håkon Wium (1996年6月15日). Arena: Frequently Answered Questions”. World Wide Web Consortium. 2010年6月2日閲覧。
  19. Welcome to Arena beta-3”. World Wide Web Consortium (1996年9月16日). 2010年6月2日閲覧。
  20. Kahan, José (2003年9月2日). Future of Libwww Survey”. World Wide Web Consortium. 2010年6月2日閲覧。
  21. Nielsen, Henrik Frystyk (2000年7月12日). W3C Library Packages and Interfaces”. World Wide Web Consortium. 2010年7月27日閲覧。
  22. W3C Sample Code Library libwww SSL Transport Wrapper”. World Wide Web Consortium (2000年6月9日). 2010年6月28日閲覧。
  23. W3C Sample Code Library libwww ZLib Streams”. World Wide Web Consortium (1998年5月24日). 2010年6月28日閲覧。
  24. Simple HTML Parser With Text Object Converter”. World Wide Web Consortium (1999年1月6日). 2010年6月28日閲覧。
  25. Declaration of W3C Sample Code HTML MODULE”. World Wide Web Consortium (1999年2月22日). 2010年6月28日閲覧。
  26. Declaration of W3C Sample Code XML/RDF Module”. World Wide Web Consortium (1999年4月18日). 2010年6月28日閲覧。
  27. SGML Parser”. World Wide Web Consortium (1999年4月2日). 2010年6月28日閲覧。
  28. Stylesheet Manager”. World Wide Web Consortium (1999年1月6日). 2010年6月28日閲覧。
  29. W3C Sample Code Library libwww SQL Interface”. World Wide Web Consortium (1998年5月24日). 2010年6月28日閲覧。
  30. Kahan, José (2004年1月29日). Results of the future of libwww survey”. World Wide Web Consortium. 2010年6月2日閲覧。
  31. Secret, Arthur (1996年11月12日). Agora”. World Wide Web Consortium. 1996年6月6日時点のオリジナルよりアーカイブ。2010年6月20日閲覧。
  32. Nielsen, Henrik Frystyk (2002年6月7日). Libwww Hackers”. World Wide Web Consortium. 2010年5月29日閲覧。
  33. Kahan, José (1999年8月5日). Why Libwww?”. 2010年6月15日閲覧。
  34. Quint, Vincent (2009年12月10日). Amaya Release history”. World Wide Web Consortium. 2010年5月29日閲覧。
  35. HTTP Request fields”. Protocols. World Wide Web Consortium (1994年5月3日). 2010年3月28日閲覧。
  36. Nielsen, Henrik Frystyk (1998年12月1日). www-lib”. Yahoo! Groups. 2001年4月18日時点のオリジナルよりアーカイブ。2010年6月15日閲覧。
  37. Kahan, José (1999年8月5日). Libwww - the W3C Sample Code Library”. World Wide Web Consortium. 2010年6月15日閲覧。
  38. Gallagher, James (2002年5月10日). libwww replacement”. OPeNDAP. 2010年6月1日閲覧。
  39. Gallagher, James (2002年6月19日). libwww v versus libcurl”. OPeNDAP. 2010年6月1日閲覧。
  40. Paoli, Jean (11–14 December 1995). Rules for extending a WWW client: The Symposia API”. World Wide Web Consortium. 2010年8月15日閲覧。
  41. Luotonen, Ari. Ari Luotonen”. World Wide Web Consortium. 2010年8月15日閲覧。
  42. Berners-Lee, Tim (1992年11月3日). Macintosh Browser”. World Wide Web Consortium. 2010年6月2日閲覧。
  43. Ball, Steve (10–13 July 1996). SurfIt! - A WWW Browser (PostScript). Proceedings of the Fourth USENIX Tcl/Tk Workshop. Monterey, CA: USENIX. 2010年11月28日閲覧。
  44. Wang, Joseph (1993年5月1日). tkWWW Version 0.7 alpha”. 2010年11月16日閲覧。
  45. WorldWideWeb Source Files”. World Wide Web Consortium. 2010年6月21日閲覧。
  46. Readme”. evolt.org. 2010年7月5日閲覧。
  47. Nielsen, Henrik Frystyk (1999年5月4日). WebCon - the Libwww Command Line Tool”. World Wide Web Consortium. 2010年6月27日閲覧。
  48. Krol, Ed, The Whole Internet Catalog User's Guide & Catalog, O'Reilly & Associates, Inc., 1992, Third Printing, February 1993, p. 227.
  49. Nielsen, Henrik Frystyk (1999年5月4日). Webbot - the Libwww Robot”. World Wide Web Consortium. 2010年6月27日閲覧。
  50. Stenberg, Daniel (2010年5月1日). Notes About Libwww compared to libcurl”. Haxx. 2010年6月1日閲覧。
  51. Smith, Timothy B. (2007年9月11日). Simple HTTP Client without 'libcurl' or 'libwww'”. μClinux. 2010年6月1日閲覧。

関連項目

外部リンク

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.