[PR]今日のニュースは
「Infoseek モバイル」
RDF研究
XUL Templateは便利だし、RDFは高機能のようですが、概念がつかみにくく、とっかかりを探すのも一苦労の様なので、自分で必要になって調べた点についてぼちぼちまとめてみます。
2002/9/20
かなりしばらくの間お休みしていましたが、心機一転調べてみたところ、<tree>でRDFを弄る方法の当たりがつきました。
- nsIXULTreeBuilder@nsIXULTemplateBuilder.idlのgetResourceAtIndex()でツリーのリソースを取得します。
- それを起点に親要素となるリソースを取得します。
- 1で取得した親要素でnsIRDFContainerをInit()し、AppendElement()/RemoveElement()などを利用してRDFを弄ることができます。
- 変更した後はnsIRemoteDataSourceのFlush()を呼び出すと、RDFファイルに書き出されます。(今のところfileスキームでしか有効ではないそうです。)
2002/8/27
某プロジェクトで必要になってRDFについて調べているのですが、RDFの操作関連がさっぱりです。mozilla.orgにドキュメントがあるのをやっとみつけたので少しずつ読みながらメモしていきます。
まず、RDF関連のInterfaceを漁ってみました。mozilla/rdf/base/idl/にある、idlファイルがそれでしょう。
- nsIRDFCompositeDataSource
- 合成データソース。個々のデータソースを構成して、互いに結びついた一つのRDFグラフのように見せかける。
- nsIRDFContainer
- RDFコンテナ。何を入れるコンテナなのかは把握してない(ぉ
- nsIRDFContainerUtils
- RDFコンテナに関するUtility…そのまんまだな
- nsIRDFDataSource
- nsIRDFDelegeteFactory
- 代理オブジェクトを生成?何に使うのか。
- nsIRDFInMemoryDataSource
- メモリ上にあるデータソース
- nsIRDFLiteral
- nsIRDFNode
- nsIRDFObserver
- nsIRDFPurgeableDataSource
- 不要になったら消去できるデータソース、かな。Mark&Sweep法らしき。
- nsIRDFRemoteDataSource
- nsIRDFResource
- nsIRDFService
- nsIRDFXMLParser
- nsIRDFXMLSerializer
- nsIRDFXMLSink
- nsIRDFXMLSource
※適当な訳です。オリジナルは http://www.mozilla.org/rdf/back-end-architecture.html です。
この文章ではRDFの"コア"実装、すなわち、MozillaにおけるRDFモデルの実装についての概要を説明します。RDF Model and Syntax Specifacationで記述されているRDFモデルについてある程度理解していることを仮定しています。データソースを記述することについて詳しくは、Datasource HOWTOも参照してください。
MozillaのRDFモデルの実装はRDF Model and Syntax Specificationに基づいています。この章ではそのモデルの数学的っぽい概略をあたえようと思います[1]。
戻る
(C) Copyright 2002 KENZ@GELSOFT. All Rights Reserved.