JP5664237B2 - Xml処理装置、xml処理方法およびxml処理プログラム - Google Patents

Xml処理装置、xml処理方法およびxml処理プログラム Download PDF

Info

Publication number
JP5664237B2
JP5664237B2 JP2010511927A JP2010511927A JP5664237B2 JP 5664237 B2 JP5664237 B2 JP 5664237B2 JP 2010511927 A JP2010511927 A JP 2010511927A JP 2010511927 A JP2010511927 A JP 2010511927A JP 5664237 B2 JP5664237 B2 JP 5664237B2
Authority
JP
Japan
Prior art keywords
xml
output
output destination
cache
conversion
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2010511927A
Other languages
English (en)
Other versions
JPWO2009139245A1 (ja
Inventor
木下 聡
聡 木下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2010511927A priority Critical patent/JP5664237B2/ja
Publication of JPWO2009139245A1 publication Critical patent/JPWO2009139245A1/ja
Application granted granted Critical
Publication of JP5664237B2 publication Critical patent/JP5664237B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Description

本発明は、XML処理装置、XML処理方法およびXML処理プログラムに関する。
XML文書のフォーマットの変換などについて、次のような技術文書がある。特許文献1には、クライアントから送信されるXMLをサーバがフォーマットを変換してキャッシュメモリに記憶するという装置が記載されている。特許文献2には、ファイルとして既に存在するXMLのフォーマットを、XSLTによる定義に基づいて変換するという装置が記載されている。
特許文献3には、XSLT管理サーバから取得したXSLTに基づいてXMLのフォーマットを変換してネットワークを介して出力するという装置が記載されている。特許文献4には、XMLのフィルタリング処理で、共有化バッファと外部とにXPath式によって出力を切り替えることのできる処理装置が記載されている。特許文献5には、メモリ内に完全なオブジェクトツリーを構築しないXMLのストリーミング変換を行うという装置が記載されている。
特開2003−271441号公報 特開2006−018449号公報 特開2007−018029号公報 特開2007−034763号公報 特表2005−535982号公報
特許文献1〜5に記載した技術はいずれも、XMLのフォーマットを同期的に変換するものである。同期的とは、一つのXML入力があったときに、そのXML入力に対して変換を行い、一つのXMLを出力するものをいう。同期的なフォーマット変換では、入力と出力が必ず一対一に対応し、入力が行われたタイミングで必ず変換と出力が行われる。ちなみに特許文献5のフォーマット変換はストリーミング的ではあるが、入力と出力が一対一に対応しているので、同期的であることには変わりはない。
しかしながら最近は、XMLのフォーマットを同期的に変換するのみでなく、たとえばセンサから出力される温度、湿度、RFIDなどのように、非同期的に出力されるデータをXMLとしてXML処理装置に入力し、それを所定のルールおよびフォーマットで出力したいという用途も出てきている。より具体的には、XML文書として入力される温度が20度以上の場合に測定された過去3回分の温度値を出力する、もしくは異なるタイミングでXML文書として入力される温度と湿度の両方が所定の範囲である場合に温度と湿度をXML文書として同時に出力する、などのような場合である。
特許文献1〜5に記載されている技術では、そのような非同期的なデータに対して対応することはできない。そのため、非同期的なデータを処理するために、専用のプログラムを記述する必要があった。これではXSLTによって容易に処理方法を記述することができるというXMLの汎用性を損なうことになり、またプログラミングにコストがかかることにもなる。
本発明の目的は、非同期的なXML入力に対しても既存のXML処理言語によって処理方法を記述することのできるXML処理装置、XML処理方法およびXML処理プログラムを提供することにある。
上記目的を達成するため、本発明に係るXML処理装置は、外部から入力されるXMLを変換ルールに従って変換して出力するXML処理装置であって、
XMLの処理に関する条件を含めてXML処理言語で記述された前記変換ルールおよび前記変換ルールに含まれる識別子に対応する変換後の前記XMLの出力先を定義する出力先解決テーブルを記憶する記憶部と、
XMLを一時的に記憶するキャッシュメモリと、
前記キャッシュメモリからXMLを取得するキャッシュ参照手段と、
前記キャッシュメモリへのXMLの追加、及び前記キャッシュメモリからのXMLの削除を行うキャッシュ更新手段と、
前記XMLが入力された際、前記キャッシュ参照手段により前記キャッシュメモリのXMLを参照して、入力された当該XMLを前記記憶部から読み出した前記変換ルールに従って変換するXML変換手段と、
前記XML変換手段で変換された後の前記XMLの属性または要素に記述された識別子に対応する出力先を前記出力先解決テーブルによって定義された内容に基づいて解釈する出力先解釈手段と、
前記変換後のXMLの出力先が前記出力先解決テーブルで定義された前記キャッシュ更新手段である場合、前記変換後のXMLを前記キャッシュ更新手段に出力し、前記変換後のXMLの出力先がXML送信手段である場合に、前記変換後のXMLを前記XML送信手段に出力する出力分配手段とを有することを特徴とするものである。
上記目的を達成するため、本発明に係るXML処理方法は、外部から入力されるXMLを所定のルールに従って変換して出力するXML処理方法であって、
XMLの処理に関する条件を含めてXML処理言語で記述された前記変換ルールおよび前記変換ルールに含まれる識別子に対応する変換後の前記XMLの出力先を定義する出力先解決テーブルを記憶部に記憶させると共に、前記XMLをキャッシュメモリに一時的に記憶させ、
前記XMLが入力された際、前記キャッシュメモリのXMLを参照して、入力された当該XMLをXML変換手段が前記記憶部から読み出した前記変換ルールに従って変換し、
前記変換された後の前記XMLの属性または要素に記述された識別子に対応する出力先を出力先解釈手段が前記出力先解決テーブルによって定義された内容に基づいて解釈し、
前記変換後のXMLの出力先が前記出力先解決テーブルで定義された前記キャッシュメモリである場合、出力分配手段が前記変換後のXMLを前記キャッシュメモリに出力して追加、削除し、
前記変換後のXMLの出力先がXML送信手段である場合に、前記出力分配手段が前記変換後のXMLを前記XML送信手段に出力することを特徴とするものである。
上記目的を達成するため、外部から入力されるXMLを所定のルールに従って変換して出力するXML処理装置を制御するコンピュータに、
XMLの処理に関する条件を含めてXML処理言語で記述された前記変換ルールおよび前記変換ルールに含まれる識別子に対応する変換後の前記XMLの出力先を定義する出力先解決テーブルを記憶部に記憶させると共に、前記XMLをキャッシュメモリに一時的に記憶させる機能と、
前記XMLが入力された際、前記キャッシュメモリのXMLを参照して、入力された当該XMLを前記記憶部から読み出した前記変換ルールに従って変換する機能と、
前記変換された後の前記XMLの属性または要素に記述された識別子に対応する出力先を前記出力先解決テーブルによって定義された内容に基づいて解釈する機能と、
前記変換後のXMLの出力先が前記出力先解決テーブルで定義された前記キャッシュメモリである場合、前記変換後のXMLを前記キャッシュメモリに出力して追加、削除する機能と、
前記変換後のXMLの出力先がXML送信手段である場合に、前記変換後のXMLを前記XML送信手段に出力する機能とを実行させることを特徴とするものである。
本発明は、XMLに記述された出力先に変換されたXMLを出力できるように構成したので、条件に応じて異なる処理を行う出力先にXMLを出力することができる。これによって、非同期的なXML入力に対しても既存のXML処理言語によって処理方法を記述することができるという、従来にない優れたXML処理装置、XML処理方法およびXML処理プログラムを提供することができる。
以下、本発明の実施形態を図に基づいて詳細に説明する。
[第1の実施の形態]
図1は、本発明の第1の実施の形態に係るXML処理装置1の構成を示すブロック図である。XML処理装置1は、制御部11、記憶部12、入出力部13、およびキャッシュメモリ14によって構成されるコンピュータ装置である。制御部11はCPU、RAM、OSなどによって構成され、アプリケーションソフトを実行するコンピュータの中枢である。記憶部12は磁気ディスク装置や光学ディスク装置などの外部記憶装置である。
入出力部13はXML処理装置1に接続された外部の各装置とのデータのやりとりを行う。図1に示した例では、入力装置として温度センサ15、出力装置としてディスプレイ16が入出力部13に接続されているが、もちろん入力装置および出力装置はこの例に限定されるものではない。キャッシュメモリ14は、制御部11が処理するデータを一時的に記憶しておく手段である。
制御部11は、XML受信手段21、XML変換手段22、キャッシュ参照手段23、出力分配手段24、出力先解釈手段25、キャッシュ更新手段26、およびXML送信手段27を有している。なお、図1の例では、制御部11の、XML受信手段21、XML変換手段22、キャッシュ参照手段23、出力分配手段24、出力先解釈手段25、キャッシュ更新手段26、およびXML送信手段27は、CPUにXML処理プログラムを実行させることにより、ソフトウェア上で実現しているが、これらをハードウェアとして構築してもよいものである。
記憶部12には、変換ルール31、および出力先解決テーブル32が記憶されている。
XML受信手段21は、外部から入出力部13を介してHTTPなどのプロトコルによってXMLを受信する。XML変換手段22は、XSLTやXQueryなどのXML処理言語で記述された変換ルール31を記憶部12から読み出し、これに基づいて、XML受信手段21が受信したXMLを変換する。
キャッシュ参照手段23は、XML変換手段22の指示に基づいてキャッシュメモリ14からXMLを取得する。この指示にはXML処理言語による関数記述と、XPathが使用される。出力分配手段24は、XML変換手段22による変換結果をキャッシュ更新手段26またはXML送信手段27に分配する。出力先解釈手段25は、XML変換手段22による変換結果と出力先解決テーブル32を参照して出力先を決定し、出力分配手段24に出力先を指示する。
図2は、図1で示した出力先解決テーブル32のデータ例を示す概念図である。出力先解決テーブル32は、XML中で指定される識別子と、実際の出力先との対応関係を表の形で保持している。識別子には、出力先解決テーブル32の中で一意であれば任意の文字列を使用できる。出力先はキャッシュメモリ14またはXML送信手段27のいずれかである。
図1に戻って、キャッシュ更新手段26は、キャッシュメモリ14へのXMLの追加、およびキャッシュメモリ14からのXMLの削除を行う。キャッシュメモリ14は、出力結果をXMLの形で一時的に保持する。XML送信手段27は、HTTPなどのプロトコルを使用して、入出力部13を介してディスプレイ16などのような外部の出力装置にXMLを送信する。
キャッシュメモリ14の記憶内容は全体として一つのXMLになっており、ルート要素は<cache>とする。キャッシュメモリ14にXMLが追加されると、追加されるXML文書のルート要素が<cache>要素の子要素になる形で要素が追加される。その子要素の名前および内容は、XML変換手段22による変換結果がそのまま使用されるため、ルールや入力XMLによって自由に決めることができる。またキャッシュメモリ14からの削除はXPathの指定によって行うことができる。キャッシュメモリ14からは指定されたXPathにマッチした要素が削除される。
図3は、図1で示したXML処理装置1が実行する処理を表すフローチャートである。まず、XML受信手段21が外部からHTTPなどのプロトコルを使用してXMLを受信し、XML変換手段22に渡す(ステップS101)。XML変換手段22は、記憶部12から変換ルール31を読み出し、変換ルール31中でのキャッシュ参照をキャッシュ参照手段23に問い合わせる。変換ルール中のキャッシュ参照記述はXPathの関数呼び出しの形で記述されている。キャッシュ参照手段23は、キャッシュを読み出してXML要素をXML変換手段22に返すことにより、キャッシュ参照を解決する(ステップS102)。
たとえばキャッシュに<sensor><temperature>20</temperature></sensor>というデータがあった場合、cache()/sensor/temperature[1]/text()という記述によって、最初の<temperature>要素の内容である「20」を参照できる。
続いてXML変換手段22は、記憶部12から読み出した変換ルール31に基づいて、XML受信手段21から受信したXMLを変換して、変換後のXMLを出力分配手段24に渡す(ステップS103)。変換ルール31はXSLTやXQueryなどのXML処理言語で記述されている。
出力分配手段24は、XML変換手段22から渡されたXMLを出力先解釈手段25に渡して出力先を問い合わせる。出力先解釈手段25は以下の手順でXMLから出力先を抽出する。変換されたXMLはたとえば、<result><output to=”cache”><append>(中略)</append></output><output to=”http”>(中略)</output></result>のような形式である。
出力先解釈手段25はまず、XMLから<output>要素を検索する(ステップS104)。次にto属性の内容を確認し、その内容によってXMLの出力先がキャッシュ更新手段26とするか、XML送信手段27とするかを決定する(ステップS105)。この決定は、出力先解決テーブル32を参照して行う。出力先解決テーブル32は、図2に示したように、XML中で指定される識別子と、実際の出力先との対応関係を表の形で保持している。
この結果、出力先がキャッシュ更新手段26であれば、<output>要素の子要素の内容に従ってキャッシュメモリ14を更新する(ステップS106)。子要素が<append>であれば、そのさらに子要素の内容をキャッシュメモリ14に追加する。子要素が<remove>であれば、remove要素のselect属性で指定された要素をキャッシュメモリ14から削除する。 出力先がXML送信手段27であれば、<output>要素の子要素の内容をHTTPなどのプロトコルを使用して外部に出力する(ステップS107)。
以後、ステップS104〜107に示した処理を全てのXML要素に対して繰り返し、処理が完了していないXML要素がなくなれば動作を終了する(ステップS108)。
図4は、図1で示した変換ルール31の一例を示す概念図である。変換ルール31はXSLTで記述されている。ここで、XML受信手段21が温度センサ15から、たとえば「摂氏20度」という温度測定データを<sensor><temperature>20</temperature></sensor>というXML形式で受信するものとする。以後、温度の単位は全て摂氏であり、たとえば「摂氏20度」という温度を単に「20度」というように表記する。
また、キャッシュメモリ14は<cache><temperature>17</temperature><temperature>19</temperature></cache>という形式で、温度センサ15から送信された前回と前々回の温度測定データ(前々回は「17度」、前回は「19度」)を記憶しているものとする。
変換ルール31は、受信した温度情報が20度以上のとき、過去3回分の受信情報を送信する、という動作を意図している。より具体的には、5〜11行目のxsl:if文201で、「センサが関知した温度が20度以上であれば、キャッシュメモリ14に保存されている温度と、現在のセンサが関知した温度とを、<output>要素「http」に出力する」という動作を意図している。
また、13〜17行目のoutput文202で「現在のセンサが関知した温度を、<output>要素「cache」に出力する」という動作を、18〜20行目のoutput文203で「<output>要素「cache」の、3回以上前の記憶データを削除する(過去2回分のデータのみを残す)」という動作をそれぞれ意図している。
XML受信手段21がステップS101で<sensor><temperature>20</temperature></sensor>というXMLを温度センサ15から受信すると、XML変換手段22は変換ルール31とキャッシュメモリ14の内容を使用して、ステップS103でXMLを変換して出力する。
図5は、図4で示した変換ルール31に基づいて、図3のステップS103でXML変換手段22が出力するXMLの例を示す概念図である。受信したXMLの温度情報(temperature要素の内容)が20以上であるため、XSLTのxsl:if命令の判定に従って、2〜8行目のoutput文251で、<output>要素「http」に対して、キャッシュメモリ14に保存されている過去2回分の温度と現在のセンサが関知した温度、つまり過去3回分の温度(前々回、前回、今回の順に17度、19度、20度)が出力される。
また、9〜13行目のoutput文252では現在の温度「20度」が<output>要素「cache」に出力され、14〜16行目のoutput文253で<output>要素「cache」の3回以上前の記憶データが削除される。つまりキャッシュメモリ14には前々回の温度「19度」、前回の温度「20度」が記憶されることになる。
ステップS104で、出力先解釈手段25はXML変換手段22が変換して出力したXMLを参照し、最初の<output>要素の内容である、<sensor><temperature>17</temperature><temperature>19</temperature><temperature>20</temperature></sensor>をXML送信手段27に出力するように指示する。XML送信手段27はこの内容を外部に出力する。
出力先解釈手段25は、次の<output>要素の内容である<append><temperature>20</temperature></append>をキャッシュ更新手段26に出力するように指示する。この結果、キャッシュ更新手段26によってキャッシュメモリ14に新たな<temperature>要素が追加される。
出力先解釈手段25は、さらに、次の<output>要素の内容である<remove select=”/cache/temperature[position() <= last() − 2]” />をキャッシュ更新手段26に出力するように指示する。selectの属性の中身のXPathは、<cache>要素の子要素のうちで最後の2つを除いた<temperature>要素にマッチするので、最後の2つの<temperature>要素を残してキャッシュメモリ14の内容を削除する。XPathをXMLの中で表現するため、小なり記号(「<」)は<に置き換えられている。キャッシュメモリ14の内容は次にXML受信手段21がXMLを受信したときに使用される。
なお、ここまでで示した実施の形態で使用したXMLの要素名や属性名は、一意に識別できれば任意の名称を使用することができる。図に示したoutput、result、append、removeなどの名称は、一例に過ぎないものである。
本実施の形態では、XMLを記憶するキャッシュメモリを有し、XSLTに記載されたルールからキャッシュ参照手段によってキャッシュメモリの参照および更新を可能にしている。そのため、非同期的なXMLに対するフォーマット変換の処理を、XSLTによって記述することができる。ユーザは特別な学習をすることなく、既存のXSLTでルールを記述し、状態を持つXML処理機構を設計できる。XSLTで記述されるルールでは、一つのXPathによってキャッシュメモリの参照および削除を容易に記述できる。
温度における特定の状態を示すXML送信手段27からの出力は、別の装置が受け取って、たとえばディスプレイ16に警報を出す、ブザーや電子メールなどによって警報を出す、データベースにその旨のデータを記録する、温度制御機構にフィードバックを出して温度調整を行わせるなどのような処置を行うことができる。温度の他には、湿度、RFID、衝撃などをXMLで非同期的に出力する装置などに対しても、本実施の形態を適用することができる。
[第2の実施の形態]
図6は、本発明の第2の実施の形態に係るXML処理装置301の構成を示すブロック図である。XML処理装置301のハードウェア構成は第1の実施の形態に係るXML処理装置1と同一であるので説明を省略する。ただし、入出力部13には複数の入力装置である温度センサ315aおよび湿度センサ315bが接続されている。
図6に示す実施形態2では、XML変換手段322a,322bを直列に接続し、前記直列接続のXML変換手段322a,322bに対して共有され、かつ前記各XML変換手段322a,322bによる変換結果を一時的に保存するキャッシュメモリ14を有し、出力先解釈手段325a,325b及び出力分配手段324a、324bを、前記直列接続のXML変換手段322a,322bに対応させて多段に設けたものである。以下、具体的に説明する。
制御部11は、温度センサ315aおよび湿度センサ315bの各々に対応するXML受信手段321aおよび321b、XML変換手段322aおよび322b、変換ルール331aおよび331bを有する。XML変換手段322aおよび322bによる変換後のXMLは出力分配手段324aに出力される。出力分配手段324aは出力先解釈手段325a、出力先解決テーブル332aを有する。そして出力分配手段324aの後段に、XML変換手段322c、変換ルール331c、出力分配手段324b、出力先解釈手段325b、出力先解決テーブル332bが接続される。
各々の機能部は、基本的に第1の実施の形態に係るXML処理装置1に含まれる同一名称の機能部と同一の機能を有する。そのため、ここではその相違点のみを説明し、それ以外については説明を省略する。また、出力先解決テーブル332aおよび332bは、図2で示した出力先解決テーブル32と、特に記述のない限りはそれぞれ同一であるものとする。
図7は、図6で示したXML処理装置301が実行する処理を表すフローチャートである。XML受信手段321a−XML変換手段322a−変換ルール331aと、XML受信手段321b−XML変換手段322b−変換ルール331bの、2つのデータ処理系統は、どちらか一方XMLを受信した側の系統だけが、図3のステップS101〜106および108に示したものと同一の動作を行う。図3に示した第1の実施の形態における動作との相違点は、ステップS105における出力分配手段324aからのXMLの出力先がキャッシュ更新手段26ではない場合に、XML変換手段322cとなることから始まる。
出力分配手段324aからのXMLの出力を受けたXML変換手段322cは、変換ルール331cを参照してステップS102と同様にキャッシュ参照を解決したのち(ステップS401)、ステップS103と同様にXML変換を行う(ステップS402)。変換されたXMLは、出力分配手段324bおよび出力先解釈手段325bによって解釈され、出力先の記述を検索し(ステップS403)、出力先を判断する(ステップS404)。
その結果出力先がキャッシュであればキャッシュメモリ14を更新し(ステップS405)、そうでなければXML送信手段27から外部にXMLを出力する(ステップS406)。以上、XML変換手段322cに渡された2回目の変換結果においても、全てのXML要素に対して繰り返す(ステップS407)。
図8〜9は、図6で示した変換ルール331a〜cの一例を示す概念図である。ここで、XML受信手段321aが温度センサ315aから、たとえば「19度」という温度測定データを<sensor><temperature>19</temperature></sensor>というXML形式で受信するものとする。また、XML受信手段321bが湿度センサ315bから、たとえば「30%」という湿度測定データを<sensor><humidity>30</humidity></sensor>いうXML形式で受信するものとする。以後、湿度の単位は全て%である。
これらの温度および湿度の2つの情報が非同期にそれぞれ受信され、2つの情報が揃った段階で温度と湿度をまとめて一つのXMLとして送信するということをここでは考える。また初期状態ではキャッシュメモリ14に記憶されている情報は無いとする。
図8(a)に示すXML変換手段322aに対する変換ルール331aは、XMLの出力先がXML変換手段322cである場合には<output>要素「henkan3」に出力することが指定される。まず5〜7行目のoutput文501で<output>要素「henkan3」に「dummy」を出力し、8〜10行目のoutput文502で<output>要素「cache」のデータを削除して、11〜15行目のoutput文503で現在のセンサが関知した温度を<output>要素「cache」に出力するという動作を、それぞれ意図している。
図8(b)に示すXML変換手段322bに対する変換ルール331bもやはり、XMLの出力先がXML変換手段322cである場合には<output>要素「henkan3」に出力することが指定される。まず5〜7行目のoutput文511で<output>要素「henkan3」に「dummy」を出力し、8〜10行目のoutput文512で<output>要素「cache」のデータを削除して、11〜15行目のoutput文513で現在のセンサが関知した湿度を<output>要素「cache」に出力するという動作を、それぞれ意図している。
図9(c)に示すXML変換手段322cに対する変換ルール331cは、XML変換手段322aおよびbから「dummy」の出力を受けると動作し、まず5〜15行目のxsl:if文521で、「キャッシュメモリ14に温度および湿度の両方のデータがあればそれらの温度および湿度を出力し、キャッシュメモリ14を消去する」という動作を意図している。より具体的には、6〜11行目のoutput文522でキャッシュメモリ14の温度および湿度データを<output>要素「http」に出力し、12〜14行目のoutput文523でキャッシュメモリ14を消去している。
図10は、図8〜9で示した変換ルール331a〜cに基づいて、図7の各ステップでXML変換手段322a〜cが出力するXMLの例を示す概念図である。まず、XML受信手段321aが<sensor><temperature>19</temperature></sensor>という温度情報を受信したとする。これはXML変換手段322aによって変換され、図10(a)に示すようなXMLがXML変換手段322cに対して出力される。
この結果、キャッシュメモリ14には、<cache><temperature>19</temperature></cache>という内容が記憶される。XML変換手段322cは<dummy />というXMLを受け取り、これを契機に変換処理を行おうとするが、キャッシュメモリ14にはhumidityが含まれていないため、図8(c)の変換ルール331cにあるxsl:if文521の処理は実行されず、出力分配手段324bには空のresult要素が出力される。出力分配手段324bは何もしない。
次に、XML受信手段321bが<sensor><humidity>30</humidity></sensor>という湿度情報を受信したとする。これはXML変換手段322bによって変換され、図10(b)に示すようなXMLがXML変換手段322cに対して出力される。
この結果、キャッシュメモリ14の内容は<cache><temperature>19</temperature><humidity>30</humidity></cache>となる。XML変換手段322cは<dummy />というXMLを受け取り、これを契機に変換処理を行う。キャッシュメモリ14にはtemperatureとhumidityの両方が含まれているため、XML変換手段322cは変換ルール331cにあるxsl:if文521の処理を実行して図10(c)に示すXMLを出力し、それを受けた出力分配手段324bはXML送信手段27とキャッシュ更新手段26の両方にそれぞれ出力を行う。
XML送信手段27には<sensor><temperature>19</temperature><humidity>30</humidity></sensor>が出力され、温度情報と湿度情報が結合したXMLが送信されることとなる。また、キャッシュ更新手段26には<remove select=”/cache/*” />が出力され、キャッシュメモリ14がクリアされる。
本実施の形態は、XML変換手段を多段の構成にすることで、非同期入力された情報をすべてキャッシュに出力するため、それをさらにXML変換することができる。これによって、非同期入力された情報に対する変換ルールを容易に記述することができる。温度と湿度という2つの入力情報がある場合の例について説明したが、温度と湿度以外にさらに多くの入力がある場合にも、同じ方法を容易に拡張して適用することができる。
[第3の実施の形態]
図11は、本発明の第3の実施の形態に係るXML処理装置601の構成を示すブロック図である。XML処理装置601のハードウェア構成は、2つのキャッシュメモリ614aおよび614bを持つ以外は同一である。
また制御部11は、図1にある第1の実施の形態に係るXML処理装置1にある各機能部と比較して、キャッシュ参照手段23の代わりに名前付きキャッシュ参照手段628を、キャッシュ更新手段26の代わりに名前付きキャッシュ更新手段629を、それぞれ実行する。記憶部12は、XML処理装置1にある各データに加えて、キャッシュ名テーブル633を記憶する。また変換ルール31に代わって、後述の変換ルール631が記憶されている。これらの点以外の要素は、第1の実施の形態に係るXML処理装置1と同一であるので、同一の要素には同一の参照番号と名称を付けて説明を省略する。
図12は、図11で示したキャッシュ名テーブル633のデータ例を示す概念図である。キャッシュメモリ614aおよび614bは、それぞれ1つずつのXML文書を保持することができるキャッシュメモリであり、各々<output>要素「temp1」および「temp2」として指定することができる。また、名前付きキャッシュ参照手段628は、キャッシュ名テーブル633を参照して、識別子「temp1」が指定された場合にはキャッシュメモリ614aを、識別子「temp2」が指定された場合にはキャッシュメモリ614bを、それぞれ参照する。名前付きキャッシュ更新手段629は、これと同様にキャッシュメモリ614aおよび614bの記憶内容をそれぞれ更新する。
図13は、図11で示したXML処理装置601が実行する処理を表すフローチャートである。実行される処理は概ね図3のステップS101〜108に示したものと同一の動作であるが、本実施の形態では、XML処理言語で記述された変換ルールの中にキャッシュ名が記述されており、ステップS101でXML受信手段21がXMLを受信した後で、名前付きキャッシュ参照手段628がキャッシュ名テーブル633を参照して、キャッシュメモリ614aおよび614bのうちのどちらを参照するかを決定して(ステップS701)、決定された方のキャッシュメモリを参照してステップS102の処理を行う。
そして、ステップS105でXMLの出力先がキャッシュメモリである場合にも、名前付きキャッシュ更新手段629がキャッシュ名テーブル633を参照して、キャッシュメモリ614aおよび614bのうちのどちらを更新するかを決定して(ステップS702)、決定された方のキャッシュメモリに対してステップS106の処理を行う。他は図3の処理と同一であるので説明を省略する。
図14は、図11で示した変換ルール631の一例を示す概念図である。XML受信手段21が温度センサ15から、たとえば「20度」という温度測定データを<sensor><temperature>20</temperature></sensor>というXML形式で受信するものとする。変換ルール631は、温度情報を入力として受け取り、20度以上の入力が3回、もしくは5度以下の入力が3回連続した場合にその3回分の温度情報を出力することを意図したものである。キャッシュメモリ614aには20度以上の温度情報が連続した場合の履歴情報を、キャッシュメモリ614bには5度以下の温度情報が連続した場合の履歴情報をそれぞれ保存する。
変換ルール631では、まず5〜45行目のxsl:choose文801で、受信した温度情報によって場合分けを行う。20度以上の場合は6〜20行目の処理を、5度以下の場合は21〜35行目の処理を、20度以上でも5度以下でもない場合は36〜44行目の処理をそれぞれ実行する。
20度以上の場合の6〜20行目の処理は、まず7〜14行目のxsl:if文802で「キャッシュメモリ614aに記憶されているデータの個数が2以上であれば、キャッシュメモリ614aに保存されている温度と、現在のセンサが関知した温度とを、<output>要素「http」に出力する」ことを意図している。その後、キャッシュメモリ614aに記憶されているデータの個数に関係なく、15〜19行目のoutput文803で「現在のセンサが関知した温度を、<output>要素「temp1」(キャッシュメモリ614a)に出力する」という動作を意図している。
5度以下の場合の21〜35行目の処理は、まず22〜29行目のxsl:if文811で「キャッシュメモリ614aに記憶されているデータの個数が2以上であれば、キャッシュメモリ614bに保存されている温度と、現在のセンサが関知した温度とを、<output>要素「http」に出力する」ことを意図している。その後、キャッシュメモリ614bに記憶されているデータの個数に関係なく、30〜34行目のoutput文812で「現在のセンサが関知した温度を、<output>要素「temp2」(キャッシュメモリ614b)に出力する」という動作を意図している。
20度以上でも5度以下でもない場合の36〜44行目の処理は、37〜39行目のoutput文821でキャッシュメモリ614aを消去し、40〜42行目のoutput文822でキャッシュメモリ614bを消去している。
今、キャッシュメモリ614aが保持するXMLが空(<cache/>)で、キャッシュメモリ614bが保持するXMLが<cache><temperature>3</temperature><temperature>4</temperature></cache>となっていたとする。これは、5度以下の温度情報を2回連続して受信した後のキャッシュ状態である。ここでXML受信手段21が温度センサ15から、<sensor><temperature>−3</temperature></sensor>というXMLを受信した。
図15は、図14で示した変換ルール631に基づいて、図13のステップS103でXML変換手段22が出力するXMLの例を示す概念図である。キャッシュメモリ614bの持つ<temperature>要素がちょうど2つであるため、XML変換手段22はxsl:if文811に従って、キャッシュメモリ614bに保存されている温度と、現在のセンサが関知した温度とを<output>要素「http」に対して出力する。そしてoutput文812で、<output>要素「temp2」に対して現在のセンサが関知した温度を出力する。
cache関数に渡されている引数「temp2」は、名前付きキャッシュ参照手段628によって解釈され、キャッシュ名テーブル633を参照することでアクセス先としてキャッシュメモリ614bを得る。そしてoutput文812の持つ属性値temp2は、名前付きキャッシュ更新手段629によって解釈され、キャッシュ名テーブル633を参照することでアクセス先としてキャッシュメモリ614bを得る。この結果キャッシュメモリ614bにtemperature要素が追加される。
XML受信手段21が温度センサ15から20度以上の温度情報を受信した場合も、上記で説明したものと同一の動作が、キャッシュメモリ614a(<output>要素「temp1」、引数「temp1」)に対して行われる。そして、20度以上でも5度以下でもない温度情報を受信した場合には、キャッシュメモリ614aおよび614bはいずれも消去される。
本実施の形態は、複数のキャッシュメモリに状態を格納することができる。これによって、5度以下、または20度以上、といった異なる目的を持つ複数の情報を生成することができる。本実施の形態では2つのキャッシュメモリがある場合の例について説明したが、キャッシュメモリが3つ以上の場合にも同じ方法を容易に拡張して適用することができる。
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。
この出願は2008年5月13日に出願された日本出願特願2008−126515を基礎とする優先権を主張し、その開示の全てをここに取り込む。
XMLのフォーマットを非同期的に変換することが必要な装置において利用できる。
本発明の第1の実施の形態に係るXML処理装置の構成を示すブロック図である。 図1で示した出力先解決テーブルのデータ例を示す概念図である。 図1で示したXML処理装置が実行する処理を表すフローチャートである。 図1で示した変換ルールの一例を示す概念図である。 図4で示した変換ルールに基づいて、図3のステップS103でXML変換手段が出力するXMLの例を示す概念図である。 本発明の第2の実施の形態に係るXML処理装置の構成を示すブロック図である。 図6で示したXML処理装置が実行する処理を表すフローチャートである。 図6で示した変換ルールの一例を示す概念図である。 図8の続きである。 図8〜9で示した変換ルールに基づいて、図7の各ステップでXML変換手段が出力するXMLの例を示す概念図である。 本発明の第3の実施の形態に係るXML処理装置の構成を示すブロック図である。 図11で示したキャッシュ名テーブルのデータ例を示す概念図である。 図11で示したXML処理装置が実行する処理を表すフローチャートである。 図11で示した変換ルールの一例を示す概念図である。 図14で示した変換ルールに基づいて、図13のステップS103でXML変換手段が出力するXMLの例を示す概念図である。
1,301,601 XML処理装置
11 制御部
12 記憶部
13 入出力部
14,614a,614b キャッシュメモリ
15,315a 温度センサ
16 ディスプレイ
21,321a,321b XML受信手段
22,322a,322b,322c XML変換手段
23 キャッシュ参照手段
24,324a,324b 出力分配手段
25,325a,325b 出力先解釈手段
26 キャッシュ更新手段
27 XML送信手段
31,331a,331b,331c,631 変換ルール
32,332a,332b 出力先解決テーブル
315b 湿度センサ
628 名前付きキャッシュ参照手段
629 名前付きキャッシュ更新手段
633 キャッシュ名テーブル

Claims (6)

  1. 外部から入力されるXMLを変換ルールに従って変換して出力するXML処理装置であって、
    XMLの処理に関する条件を含めてXML処理言語で記述された前記変換ルールおよび前記変換ルールに含まれる識別子に対応する変換後の前記XMLの出力先を定義する出力先解決テーブルを記憶する記憶部と、
    XMLを一時的に記憶するキャッシュメモリと、
    前記キャッシュメモリからXMLを取得するキャッシュ参照手段と、
    前記キャッシュメモリへのXMLの追加、及び前記キャッシュメモリからのXMLの削除を行うキャッシュ更新手段と、
    前記XMLが入力された際、前記キャッシュ参照手段により前記キャッシュメモリのXMLを参照して、入力された当該XMLを前記記憶部から読み出した前記変換ルールに従って変換するXML変換手段と、
    前記XML変換手段で変換された後の前記XMLの属性または要素に記述された識別子に対応する出力先を前記出力先解決テーブルによって定義された内容に基づいて解釈する出力先解釈手段と、
    前記変換後のXMLの出力先が前記出力先解決テーブルで定義された前記キャッシュ更新手段である場合、前記変換後のXMLを前記キャッシュ更新手段に出力し、前記変換後のXMLの出力先がXML送信手段である場合に、前記変換後のXMLを前記XML送信手段に出力する出力分配手段とを有することを特徴とするXML処理装置。
  2. 前記キャッシュメモリを複数有し、
    前記XMLに記述された出力先と前記複数個のキャッシュメモリとを対応づける名前付きキャッシュ参照手段を有することを特徴とする、請求項1に記載のXML処理装置。
  3. 前記キャッシュメモリを複数有し、
    前記出力分配手段からの出力に記述された出力先と前記複数個のキャッシュメモリとを対応づけて前記複数個のキャッシュメモリへのXMLの追加および削除を行う名前付きキャッシュ更新手段を有することを特徴とする、請求項1に記載のXML処理装置。
  4. 前記XML変換手段を直列に接続し、
    前記直列接続のXML変換手段に対して共有され、前記各XML変換手段による変換結果を一時的に保存するキャッシュメモリを有し、
    前記出力先解釈手段及び前記出力分配手段を、前記直列接続のXML変換手段に対応させて多段に設けた請求項1に記載のXML処理装置。
  5. 外部から入力されるXMLを所定のルールに従って変換して出力するXML処理方法であって、
    XMLの処理に関する条件を含めてXML処理言語で記述された前記変換ルールおよび前記変換ルールに含まれる識別子に対応する変換後の前記XMLの出力先を定義する出力先解決テーブルを記憶部に記憶させると共に、前記XMLをキャッシュメモリに一時的に記憶させ、
    前記XMLが入力された際、前記キャッシュメモリのXMLを参照して、入力された当該XMLをXML変換手段が前記記憶部から読み出した前記変換ルールに従って変換し、
    前記変換された後の前記XMLの属性または要素に記述された識別子に対応する出力先を出力先解釈手段が前記出力先解決テーブルによって定義された内容に基づいて解釈し、
    前記変換後のXMLの出力先が前記出力先解決テーブルで定義された前記キャッシュメモリである場合、出力分配手段が前記変換後のXMLを前記キャッシュメモリに出力して追加、削除し、
    前記変換後のXMLの出力先がXML送信手段である場合に、前記出力分配手段が前記変換後のXMLを前記XML送信手段に出力することを特徴とするXML処理方法。
  6. 外部から入力されるXMLを所定のルールに従って変換して出力するXML処理装置を制御するコンピュータに、
    XMLの処理に関する条件を含めてXML処理言語で記述された前記変換ルールおよび前記変換ルールに含まれる識別子に対応する変換後の前記XMLの出力先を定義する出力先解決テーブルを記憶部に記憶させると共に、前記XMLをキャッシュメモリに一時的に記憶させる機能と、
    前記XMLが入力された際、前記キャッシュメモリのXMLを参照して、入力された当該XMLを前記記憶部から読み出した前記変換ルールに従って変換する機能と、
    前記変換された後の前記XMLの属性または要素に記述された識別子に対応する出力先を前記出力先解決テーブルによって定義された内容に基づいて解釈する機能と、
    前記変換後のXMLの出力先が前記出力先解決テーブルで定義された前記キャッシュメモリである場合、前記変換後のXMLを前記キャッシュメモリに出力して追加、削除する機能と、
    前記変換後のXMLの出力先がXML送信手段である場合に、前記変換後のXMLを前記XML送信手段に出力する機能とを実行させることを特徴とするXML処理プログラム。
JP2010511927A 2008-05-13 2009-04-10 Xml処理装置、xml処理方法およびxml処理プログラム Expired - Fee Related JP5664237B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010511927A JP5664237B2 (ja) 2008-05-13 2009-04-10 Xml処理装置、xml処理方法およびxml処理プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008126515 2008-05-13
JP2008126515 2008-05-13
JP2010511927A JP5664237B2 (ja) 2008-05-13 2009-04-10 Xml処理装置、xml処理方法およびxml処理プログラム
PCT/JP2009/057330 WO2009139245A1 (ja) 2008-05-13 2009-04-10 Xml処理装置、xml処理方法およびxml処理プログラム

Publications (2)

Publication Number Publication Date
JPWO2009139245A1 JPWO2009139245A1 (ja) 2011-09-15
JP5664237B2 true JP5664237B2 (ja) 2015-02-04

Family

ID=41318618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010511927A Expired - Fee Related JP5664237B2 (ja) 2008-05-13 2009-04-10 Xml処理装置、xml処理方法およびxml処理プログラム

Country Status (3)

Country Link
US (1) US8612945B2 (ja)
JP (1) JP5664237B2 (ja)
WO (1) WO2009139245A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043366B2 (en) * 2010-10-01 2015-05-26 International Business Machines Corporation High performance map editor for business analysts
EP2479892B1 (en) * 2011-01-19 2013-08-28 Sensirion AG Input device
US9098558B2 (en) * 2013-04-01 2015-08-04 Oracle International Corporation Enhanced flexibility for users to transform XML data to a desired format

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH052417A (ja) * 1991-06-25 1993-01-08 Toshiba Corp デイジタル制御装置
JPH11298520A (ja) * 1998-04-15 1999-10-29 Nippon Telegr & Teleph Corp <Ntt> 電子メール転送装置、電子メール転送プログラムを記録した記録媒体、並びに、メールサーバシステム
JPH11338794A (ja) * 1998-05-25 1999-12-10 Nec Software Kobe Ltd 電子メール受信処理装置
JP2002006942A (ja) * 2000-06-22 2002-01-11 Hitachi Ltd 遠隔監視診断システム、及び遠隔監視診断方法
JP2006259928A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> データ収集装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3478725B2 (ja) 1997-07-25 2003-12-15 株式会社リコー 文書情報管理システム
EP1194851A1 (en) * 1999-06-30 2002-04-10 Microsoft Corporation Restoration of a computer to a previous working state
US7590644B2 (en) * 1999-12-21 2009-09-15 International Business Machine Corporation Method and apparatus of streaming data transformation using code generator and translator
JP4366040B2 (ja) 2002-03-07 2009-11-18 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワークサービスシステム、サーバ及びプログラム
WO2003093964A1 (en) * 2002-05-01 2003-11-13 Bea Systems, Inc. Enterprise application platform
US7721202B2 (en) 2002-08-16 2010-05-18 Open Invention Network, Llc XML streaming transformer
US7716632B2 (en) * 2002-11-01 2010-05-11 Vertafore, Inc. Automated software robot generator
US7519948B1 (en) * 2002-12-26 2009-04-14 Judson Ames Cornish Platform for processing semi-structured self-describing data
EP1609061A2 (de) * 2003-04-01 2005-12-28 Siemens Aktiengesellschaft Verfahren und anordnung zur veränderung von software oder quellcode
US20050010896A1 (en) * 2003-07-07 2005-01-13 International Business Machines Corporation Universal format transformation between relational database management systems and extensible markup language using XML relational transformation
TWI237767B (en) * 2003-12-23 2005-08-11 High Tech Comp Corp Serial/parallel data transformer module and related computer systems
US7945903B1 (en) * 2004-04-16 2011-05-17 At&T Intellectual Property Ii, L.P. System and method for converting graphical call flows into finite state machines
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
JP4220439B2 (ja) 2004-06-30 2009-02-04 株式会社東芝 構造化データ変換装置及び方法
US7467149B2 (en) * 2005-03-14 2008-12-16 Microsoft Corporation Complex syntax validation and business logic validation rules, using VAXs (value-added XSDs) compliant with W3C-XML schema specification
JP4690798B2 (ja) 2005-07-05 2011-06-01 株式会社リコー ネットワーク装置
JP4519028B2 (ja) 2005-07-28 2010-08-04 日本電信電話株式会社 XPath式処理装置
US8286075B2 (en) * 2006-03-07 2012-10-09 Oracle International Corporation Reducing resource requirements when transforming source data in a source markup language to target data in a target markup language using transformation rules
US20080104579A1 (en) * 2006-10-31 2008-05-01 Sap Ag Systems and methods of transforming XML schemas
GB2443846B (en) * 2006-11-15 2011-12-07 Joseph Timothy Poole Computing system
US8056062B2 (en) * 2007-05-14 2011-11-08 General Electric Company Methods and systems for converting application code in turbine control systems
US20080306986A1 (en) * 2007-06-08 2008-12-11 Accenture Global Services Gmbh Migration of Legacy Applications
US8032826B2 (en) * 2008-02-21 2011-10-04 International Business Machines Corporation Structure-position mapping of XML with fixed length data
US8397222B2 (en) * 2008-12-05 2013-03-12 Peter D. Warren Any-to-any system for doing computing
US8645936B2 (en) * 2009-09-30 2014-02-04 Zynga Inc. Apparatuses, methods and systems for an a API call abstractor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH052417A (ja) * 1991-06-25 1993-01-08 Toshiba Corp デイジタル制御装置
JPH11298520A (ja) * 1998-04-15 1999-10-29 Nippon Telegr & Teleph Corp <Ntt> 電子メール転送装置、電子メール転送プログラムを記録した記録媒体、並びに、メールサーバシステム
JPH11338794A (ja) * 1998-05-25 1999-12-10 Nec Software Kobe Ltd 電子メール受信処理装置
JP2002006942A (ja) * 2000-06-22 2002-01-11 Hitachi Ltd 遠隔監視診断システム、及び遠隔監視診断方法
JP2006259928A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> データ収集装置

Also Published As

Publication number Publication date
JPWO2009139245A1 (ja) 2011-09-15
US8612945B2 (en) 2013-12-17
US20110066809A1 (en) 2011-03-17
WO2009139245A1 (ja) 2009-11-19

Similar Documents

Publication Publication Date Title
Hofacker R NA Secondary Structure Analysis Using the Vienna RNA Package
JP5664237B2 (ja) Xml処理装置、xml処理方法およびxml処理プログラム
JP2008003721A (ja) 情報検索システムおよび情報検索方法およびプログラムおよび記録媒体
WO2004061713A1 (ja) 構造化文書の構造変換装置、構造変換方法、記録媒体
JP6977925B2 (ja) 帳票処理システム及び帳票処理プログラム
JP2009225441A (ja) 通信装置におけるデータ検索装置及びゲートウェイ装置
US8655928B2 (en) Device and method for storing file
JP5541102B2 (ja) 言語変換装置および言語変換プログラム
WO2022188103A1 (zh) 数据采集方法、装置、计算设备以及存储介质
JP2006065467A5 (ja)
JP2012059212A (ja) 抽出装置、抽出方法及び抽出プログラム
US20140025696A1 (en) Method, Program and System for Generating RDF Expressions
JP2004348341A (ja) 構造化文書処理システム、構造化文書処理方法及びプログラム
JP4868733B2 (ja) 構造化文書処理装置及び構造化文書処理方法、プログラム
JP5696280B1 (ja) 用語統一システム及び用語統一プログラム、並びに用語統一方法
JP2003140960A (ja) Xmlデータのデータ変換方法及びプログラム
JP2009245196A (ja) コンテンツ管理装置及び方法及びプログラム
JP5428316B2 (ja) 識別子短縮表示プログラム,識別子短縮表示装置および識別子短縮表示方法
JP2019200631A (ja) Kpiツリー作成支援システムおよびkpiツリー作成支援方法
JP4205603B2 (ja) 可変長マルチフォーマット変換装置及び方法並びにこれを用いたファイル転送システム
JP4411994B2 (ja) 情報処理装置
JP4134824B2 (ja) 情報処理装置及びプログラム
JP2020115246A (ja) 生成装置、ソフトウェアロボットシステム、生成方法及び生成プログラム
JP6376138B2 (ja) 情報変換装置、情報変換システム及び情報変換方法
JP5619930B2 (ja) 対話スクリプト操作命令実行装置、対話スクリプト操作命令実行方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140520

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140708

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141124

R150 Certificate of patent or registration of utility model

Ref document number: 5664237

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees