米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> キヤノン株式会社

発明の名称 構造化文書作成装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2007−11473(P2007−11473A)
公開日 平成19年1月18日(2007.1.18)
出願番号 特願2005−188302(P2005−188302)
出願日 平成17年6月28日(2005.6.28)
代理人 【識別番号】100090538
【弁理士】
【氏名又は名称】西山 恵三
発明者 清水 渉
要約 課題
SVGやXHTMLなどXMLを基にした言語の多くは、外部のデータをリンク参照する機能を持つが、その記述の方法は言語ごとに異なっている。そのため、XMLファイルと参照されたファイルをパッケージして単一のファイルとするにはその言語専用のツールが必要であった。

解決手段
リンク参照の記述を指定してパッケージを行なう方法を用いることで、汎用的なXMLパッケージ処理を実現する。
特許請求の範囲
【請求項1】
構造化文書のリンク参照を意味するノードの識別情報を保持しておく識別情報保持手段と、
前記識別情報保持手段に対して新たに識別情報を追加する識別情報追加手段と、
構造化文書のノード情報を受け取る手段と、
受け取ったノードの情報と前記識別情報保持手段によって格納された識別情報とを比較する手段と、
比較の結果一致している場合にはそのノードに記述された情報を構造化文書がリンク参照しているデータの場所とみなし、その場所にあるデータを読み出す手段と、
構造化文書のノード情報から構造化文書を生成する手段と、
前記生成手段によって生成した構造化文書と前記読み出し手段によって読み込んだデータとを単一データ実体として結合する手段と、
を有することを特徴とする構造化文書作成装置。
【請求項2】
前記構造化文書作成装置は構造化文書のフォーマットとしてXMLを用い、ノードの識別情報として要素名、属性名、名前空間を用いることを特徴とした請求項1に記載の構造化文書作成装置。
【請求項3】
前記構造化文書作成装置は、構造化文書の出力の際に、単一データからのデータ復元に必要な情報を埋め込む処理を行うことを特徴とした請求項1に記載の構造化文書作成装置。
【請求項4】
前記構造化文書作成装置は、構造化文書がリンク参照しているデータを受け取り、構造化文書と該データとを単一のデータにまとめる手段をもつことを特徴とした請求項1に記載の構造化文書作成装置。
【請求項5】
前記構造化文書作成装置は、あらかじめ一つまたは複数種類のノードを指定しておき、その指定に該当するノードに記述されたデータを取り出して単一のデータにまとめることを特徴とした請求項1に記載の構造化文書作成装置。
【請求項6】
前記構造化文書作成装置は、ネットワークの送信機能を持ち、作成した単一データをネットワーク上の他の機器に送信することを特徴とした請求項1に記載の構造化文書作成装置。
発明の詳細な説明
【技術分野】
【0001】
本発明は構造化文書の処理に関する。
【背景技術】
【0002】
構造化文書とは、計算機での管理や処理のために文書中に文書の構造を示すタグを入れたものであり、その例としてHTML(Hyper Text Markup Language, http://www.w3.org/MarkUp/)、XML(Extensible Markup Language, http://www.w3.org/XML/)などがある。HTMLでは"<"と">"で囲まれたものを開始タグ、"</"と">"で囲まれたものを終了タグとして用いており、例えば「これは<b>HTML</b>の例です」、という記述は"HTML"という文字列を太字で出力することを意味している。
【0003】
XMLもHTMLと同様に"<"と">"で囲まれたものを開始タグ、"</"と">"で囲まれたものを終了タグとして扱うが、HTMLと異なりタグの名前と意味は自由に定義することができる。このXMLを用いて規定された言語としてSVG(Scalable Vector Graphics, http://www.w3.org/Graphics/SVG/)やXHTML(http://www.w3.org/MarkUp/)などがある。
【0004】
これらの構造化文書の多くは、外部のデータをリンク参照する機能を持っている。例えばHTMLでは、「<a ="">図1に示す。CPU101はシステム制御部であり装置全体を制御する。ROM102はCPUの制御プログラムや各種固定データを格納するものである。RAM103はSRAM、DRAMなどで構成され、プログラム変数などを格納するものである。記憶部104はハードディスクなどで構成され、ファイルデータを格納するものである。XML作成部105はXMLの要素名や属性名、属性値といったXMLのノードの情報を受け取り、その情報を基に実際のXML文書を生成するものである。ノード情報格納部106はリンク参照を示すノードの情報を格納するものである。データ読み出し部107は、XML文書のノードで指定されたファイルやその一部を記憶部104などから読み出すものである。パッケージデータ作成部108は複数のデータから単一のデータを生成するものである。SVG作成部108とXHTML作成部109はそれぞれSVGやXHTMLのデータを生成するものである。ただし、これらはSVGやXHTMLを作成する基となるデータ、例えばSVG作成部であればベクトルデータ情報を作成するものであり、実際にXML文書としてのSVGデータを作成する際は、作成したい要素名や属性名、属性値の情報をXML作成部105に渡すことでXMLの作成を行う。例えばSVG作成部やXHTML作成部はそれぞれベクトル画像やウェブサイトを作成するアプリケーション、XML作成部はXMLを作成するC言語のライブラリやJava(登録商標)のクラスとして実装される。
【0019】
本例ではノード情報格納部にはあらかじめ、図18に示すデータが格納されているものとする。これはSVGのデータはimage要素のxlink:href属性が外部ファイルへのリンク参照を示し、XHTMLのデータはimg要素のsrc属性がリンク参照を示していることを表す。
【0020】
この機器においてJPEGやPNGなどのラスタ画像を含むSVGやXHTMLを、単一のファイルとして出力する。
【0021】
SVG作成部108において図2に示す画像データを作成したものとする。これは一つの矩形とJPEGのラスタ画像からなり、この矩形とラスタ画像の情報がRAM103上に格納される。またこのラスタ画像は記憶部104に保持されているJPEGファイルであり、ビットマップのデータではなくJPEGファイルのファイル名(fig.jpg)を保持している。実際に出力するSVGデータは図5のようになるが、この段階ではまだRAM103上に図4に示すデータが、アプリケーションや機器、オペレーティングシステムに応じた内部情報として保持されている。またSVG作成108は実際に出力する要素名や属性名の情報を持っており、XML作成部105に出力したい要素名や属性名、画像の内部情報を渡すことで実際のSVGデータを作成する。
【0022】
XML作成部105の処理の流れを図3に示す。まずリンク参照を示すノードの情報を受け取る。XML作成部は空のパッケージデータを出力する(301)。次に出力したいXMLデータのノード情報(ノードの種類、要素名、属性名、属性値など)を受け取り(302)、受け取ったノードの情報とリンク参照情報格納部106に格納されているデータとを比べる(303)。最初に受け取るデータは要素名:svgというデータであり、これは一致しないためそのままXMLの要素、つまり"<svg>"という文字列として出力される。次に受け取るデータは要素名:rectと属性としてx, y, width, heightの情報だが、これも一致しないためそのままXMLの要素として出力される。次に要素名:image, 属性x=100, 属性y=60, 属性xlink:="">図6のデータを出力する。次にリンク参照しているデータがあるかを調べ(307)、それらを読み出して(308)出力する(309)。この例ではfig.jpgをリンクしていることがわかっているため、このファイルを読み出して出力する。結果として図7に示すデータを出力し、SVGのデータとリンク参照しているデータを単一のデータとしてまとめたファイルを生成することができる。
【0023】
SVG作成部と同様XHTML作成部も外部のデータをリンクするXMLデータを作成する。例として図8に示す文書を出力するものとすると、実際に出力するXHTMLは図9のようになる。XHTMLでは外部ファイルをリンクするノードして、画像のリンクを示すimg要素のsrc属性があり、このXHTMLにおいてはabc.pngというファイルを参照している。このような場合でも、img要素のsrc属性が外部リンクへの参照を表す、という情報を持っているため、まったく同じ手順を踏むことでXHTMLと画像データをまとめた単一のファイルを出力することができる。
【0024】
以上の処理を行うことで、簡単設定をノード情報格納部に置くことのみで、複数のXMLボキャブラリに対応したXMLパッケージデータの作成を行うことが可能となる。
【0025】
(実施例2)
次に本発明の第二の実施形態を説明する。これはXMLデータとそのデータに含むべきバイナリデータをパッケージしてネットワーク上の別の機器に送信するものである。
【0026】
第二の実施形態の構造化文書作成装置の構成を図10に示す。1001から1008は図1における101から108と同様のものである。ネットワークインタフェース1009はLANなどのネットワークに接続し、他の機器とのデータの送受信を行うインタフェースである。XMLアプリケーション1010は、XMLを作成して他の機器に送信を行うアプリケーションである。またデータのパッケージ方法としてMIME Multipart/Related方式を用いるものとする。MIME Multipart/Relatedのデータは複数のパートからなり、それぞれのパートにはContent-IDという識別子が付いている。
【0027】
この構造化文書作成装置は図11に示すネットワークに接続されている。1101がこの構造化文書作成装置であり、ネットワーク1102を通して受信機器1103に送信する。
【0028】
この装置が図12に示すXMLデータを他の機器に送信するものとする。このデータは一般に仕様が公開されているデータではなく、独自のフォーマットである。このため、XML作成装置はどのノードがリンク参照を示すかについての情報をもっていない。このXMLデータではbinData要素のhref属性がリンク参照をあらわすものとする。つまりこのデータはabc.datというファイルを参照している。
【0029】
この構造化文書処理装置の処理の流れを図13(XMLデータ作成処理)と図14(MIMEデータ作成処理)に示す。まずXML作成部はリンク参照を示すノードを受け取る(1301)。ここではbinData要素のhref属性となる。次に空のMIMEデータを作成し(1302)、XMLデータ部分用のパートを作成する(1303)。次にアプリケーションからノードの情報を受け取り、リンク参照のノードでなければそのままXMLのノードとして出力する(1305、1308)。ノード1202はリンク参照を示すノードのため、このノードを受け取ったときは、まず一意のIDを生成する(1306)。これはMIMEのパートのContent-IDになるものである。ここでは"cid:cid001"というIDが生成されたものとする。さらに生成したIDを利用して、このノードの変換を行う。これはこのノードがMIME内のどのパートを参照しているかを示すためのものである。この場合は="">図15に示す。MIMEのデータ中にパート(150)が一つ存在し、そのデータ部分1502にXMLデータがある。このXMLデータは図12に示す元のXMLデータとは異なり、ファイル名をあらわす部分がID名に変換されている。
【0031】
またこの段階で、図16に示すデータを保持している。これはXMLデータが参照しているデータのファイル名と、それを格納するMIMEのパートのID名のデータである。
【0032】
次にリンク参照されているデータの出力を図14に従って行う。処理していないファイルがある場合には、新規にMIMEのパートを作成し(1403)、保持していたIDである"cid001"をつける。次に保持していたファイル名abc.datのデータを読み出し(1404)、作成したパートのデータとして出力する(1405)。これを保持していたデータすべてについて行う。
【0033】
このようにして作成された結果を図17に示す。MIMEデータは3つのパート170、171、172からなり、変換されたXMLデータ、abc.dat、def.datが格納されている。
【0034】
このデータをネットワークインタフェース1007を用いて他の機器に送信する。受信側の機器は通常どおりXMLデータを処理し、リンク参照の部分については記述されているContent-IDのデータを用いることで、参照しているデータを正しく処理することが可能である。
【0035】
以上の処理を行うことで、新たなXMLボキャブラリを作成しても、リンク参照を示すノードの情報を伝えるだけで、パッケージ処理が可能になる。
【0036】
なお、本実施例では説明の簡略化のために、ノードの識別に要素名と属性名のみを用いたが、より正確に行うにはXML名前空間(http://www.w3.org/TR/REC-xml-names/)を用い、要素の名前空間URI,要素名、属性の名前空間URI,属性名の4つの情報を用いるのが望ましい。
【0037】
また本実施例ではパッケージの方式としてMIMEを用いたが、本発明はMIMEだけでなく、Zipやtarなどの方式を用いることも可能である。
【図面の簡単な説明】
【0038】
【図1】第一の実施例における構造化文書作成装置の構造を示すブロック図。
【図2】第一の実施例で作成するSVG。
【図3】第一の実施例の構造化文書作成装置の処理の流れを示す流れ図。
【図4】SVG処理装置が持つ内部データの概念図。
【図5】出力するSVGデータ。
【図6】SVGデータ処理時のパッケージデータの概念図。
【図7】第一の実施例における出力結果。
【図8】第一の実施例で作成するXHTMLデータ。
【図9】出力するXHTMLデータ。
【図10】第二の実施例における構造化文書作成装置の構造を示すブロック図。
【図11】ネットワーク図。
【図12】作成するXMLデータ。
【図13】XMLデータの出力処理を示す流れ図。
【図14】リンク参照データの出力処理を示す流れ図。
【図15】XMLデータ出力段階でのパッケージデータの概念図。
【図16】XMLデータ出力段階で保持しているファイル名とIDのデータ。
【図17】第二の実施例における出力結果の概念図。
【図18】第一の実施例のノードデータ保持部が保持しているデータ。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013