JP6900956B2 - Verification program, verification device, verification method, index generation program, index generation device and index generation method - Google Patents
Verification program, verification device, verification method, index generation program, index generation device and index generation method Download PDFInfo
- Publication number
- JP6900956B2 JP6900956B2 JP2018552379A JP2018552379A JP6900956B2 JP 6900956 B2 JP6900956 B2 JP 6900956B2 JP 2018552379 A JP2018552379 A JP 2018552379A JP 2018552379 A JP2018552379 A JP 2018552379A JP 6900956 B2 JP6900956 B2 JP 6900956B2
- Authority
- JP
- Japan
- Prior art keywords
- index
- property
- item
- data
- value
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Description
本発明は、検証プログラムなどに関する。 The present invention relates to a verification program and the like.
世界各国で、XBRL(eXtensible Business Reporting Language)文書による財務情報の報告が行われている。XBRLとは、各種財務報告用の情報を作成、流通、利用できるように標準化されたXMLベースの言語である。XBRL文書とは、例えば財務会計報告に関して、XBRL等のXMLで記述された文書である。 Financial information is reported in XBRL (eXtensible Business Reporting Language) documents around the world. XBRL is an XML-based language that is standardized so that information for various financial reports can be created, distributed, and used. The XBRL document is a document described in XML such as XBRL for financial accounting reporting, for example.
XBRLで記述されたデータを抽出する抽出条件は、例えば、項目(プロパティ名)と値による個別条件を複数組み合わせた形で規定される。 The extraction conditions for extracting the data described in XBRL are defined, for example, in the form of a combination of a plurality of individual conditions based on items (property names) and values.
XBRLで記述されたデータを抽出する方法の開示例について説明する(例えば、特許文献1参照)。抽出装置は、抽出条件における複数の個別条件それぞれについて、抽出データの該当数を予め取得しておき、取得した複数の個別条件それぞれについての該当数に基づき複数の個別条件の適用順序を決定する。そして、抽出装置は、決定した適用順序に応じて抽出条件を適用し、入力データからXBRLスキーマを参照し、該当するデータを抽出する。複数の個別条件の適用順序を決定するのは、適用する個別条件の順番が異なると、演算量が大きくなる場合があるからである。
また、個別条件が項目と値との組み合わせとなる開示では(例えば、特許文献2参照)、項目と値との組に対して、位置をインデックス化し、生成したインデックス情報を用いて複数の個別条件でデータを抽出することも考えられる。A disclosure example of a method for extracting data described in XBRL will be described (see, for example, Patent Document 1). The extraction device acquires in advance the corresponding number of extraction data for each of the plurality of individual conditions in the extraction condition, and determines the application order of the plurality of individual conditions based on the corresponding number for each of the acquired plurality of individual conditions. Then, the extraction device applies the extraction conditions according to the determined application order, refers to the XBRL schema from the input data, and extracts the corresponding data. The reason for determining the application order of the plurality of individual conditions is that if the order of the individual conditions to be applied is different, the amount of calculation may be large.
Further, in the disclosure in which the individual condition is a combination of the item and the value (see, for example, Patent Document 2), the position is indexed for the set of the item and the value, and a plurality of individual conditions are used by using the generated index information. It is also conceivable to extract the data with.
ところで、XBRLスキーマをもとに、該当データを抽出する場合、演算量が問題となる場合がある。例えば、XBRLスキーマを参照し、入力データを先頭から、XBRLタグで該当データを抽出する従来の方法では、複数の個別条件の関係によっては、適用順序の決定が適切でない。例えば、複数の個別条件それぞれについて、抽出データの該当数が全て大きい場合である。かかる場合には、該当数による適用順序の決定が適切でない場合に相当し、演算量が大きくなる。また、適用順序の決定のためには、そもそも、予め、該当数を取得する演算が必要となる。 By the way, when the corresponding data is extracted based on the XBRL schema, the amount of calculation may become a problem. For example, in the conventional method of referring to the XBRL schema and extracting the corresponding data from the beginning of the input data with the XBRL tag, the determination of the application order is not appropriate depending on the relationship of a plurality of individual conditions. For example, there is a case where the corresponding number of extracted data is large for each of a plurality of individual conditions. In such a case, it corresponds to the case where the determination of the application order based on the corresponding number is not appropriate, and the amount of calculation becomes large. Further, in order to determine the application order, it is necessary to perform an operation to acquire the corresponding number in advance.
一方、項目と値との組に対して、位置をインデックス化し、生成したインデックス情報を用いて複数の個別条件でデータを抽出する場合について、かかるインデックス情報の参考例を、図20を参照して説明する。 On the other hand, in the case where the position is indexed for the set of the item and the value and the data is extracted under a plurality of individual conditions using the generated index information, a reference example of the index information is referred to with reference to FIG. explain.
図20は、インデックス情報の参考例を示す図である。図20に示すように、インデックス情報900は、プロパティ名(項目名)と値との組に対するビット列であって組に対する入力データ内の各データ位置での存否を示すビットを連結したビット列である。インデックス情報900のX軸はデータ位置を表し、Y軸はプロパティ名および値の組を表す。プロパティ名および値が入力データ内のあるデータ位置に存在しない場合には、データ位置の存否としてOFF、すなわち2進数の「0」が設定される。プロパティ名および値が入力データ内のあるデータ位置に存在する場合には、データ位置の存否としてON、すなわち2進数の「1」が設定される。ここでは、一例として、プロパティ名が「P1」、値が「Val1」である場合に、データ1の存否として「1」が設定され、データ100000の存否として「0」が設定されている。
FIG. 20 is a diagram showing a reference example of index information. As shown in FIG. 20, the
しかしながら、入力データ内の項目と値との組み合わせの数は非常に多くなるため、項目と値との組み合わせに対するインデックス情報を生成することが難しいという問題がある。また、項目と値との組み合わせに対するインデックス情報を用いて複数の個別条件でデータを抽出することが難しいという問題がある。 However, since the number of combinations of items and values in the input data is very large, there is a problem that it is difficult to generate index information for the combinations of items and values. Further, there is a problem that it is difficult to extract data under a plurality of individual conditions by using index information for a combination of an item and a value.
1つの側面では、XBRLで記述されたデータを抽出する際、項目と値に対するインデックス情報を用いて項目と値による複数の条件でデータを抽出することを目的とする。 In one aspect, when extracting the data described in XBRL, it is intended to extract the data under a plurality of conditions according to the item and the value by using the index information for the item and the value.
第1の案では、コンピュータに、入力された検証条件を、項目および値により規定される変換検証条件に変換し、対象データより生成された、前記対象データに含まれる項目および値それぞれについての出現位置に関するインデックス情報を参照し、前記変換検証条件に対応する項目および値の検証を行う、処理を実行させる。 In the first plan, the verification conditions input to the computer are converted into conversion verification conditions defined by the items and values, and the appearance of each of the items and values included in the target data generated from the target data. Refer to the index information related to the position, and execute the process to verify the items and values corresponding to the conversion verification condition.
一つの態様によれば、XBRLで記述されたデータを抽出する際、項目と値に対するインデックス情報を用いて項目と値による複数の条件でデータを抽出することができる。 According to one aspect, when extracting the data described in XBRL, the data can be extracted under a plurality of conditions depending on the item and the value by using the index information for the item and the value.
以下に、本願の開示する検証プログラム、検証装置、検証方法、インデックス生成プログラム、インデックス生成装置およびインデックス生成方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。 Hereinafter, examples of the verification program, the verification device, the verification method, the index generation program, the index generation device, and the index generation method disclosed in the present application will be described in detail with reference to the drawings. The present invention is not limited to this embodiment.
[実施例1に係るインデックス生成装置の構成]
図1は、実施例1に係るインデックス生成装置の構成を示す機能ブロック図である。インデックス生成装置100は、入力データ300を入力し、入力データ300に含まれる項目および値それぞれについて、項目および値それぞれの出現位置に関するインデックス情報を生成する。この生成されたインデックス情報を用いて、後述する検証装置200は、入力される後述する検証ルール310から得られる抽出条件に合致するXBRLデータを抽出する。[Configuration of Index Generator According to Example 1]
FIG. 1 is a functional block diagram showing a configuration of an index generator according to the first embodiment. The
ここでいう「XBRLデータ」とは、XBRLで記述されたデータである。XBRLとは、各種財務報告用の情報を作成、流通、利用できるように標準化されたXMLベースの言語である。XBRLデータの一例として、財務データが挙げられる。XBRLデータはデータ値と、データ値を補足する付加情報とからなる。付加情報のことをアスペクトという場合がある。付加情報は、データ値を含む要素と関連付けられる、別の独立した要素で指定される情報であり、プロパティの項目名とプロパティの項目値とを1組とした複数のプロパティの情報から構成される。なお、実施例では、XBRLデータを単にデータという場合があったり、データ値という場合があったりする。また、実施例では、XBRLデータのデータ値に関連付けられる付加情報を含む要素である「コンテキスト(Context)」を主に説明する。 The "XBRL data" referred to here is data described in XBRL. XBRL is an XML-based language that is standardized so that information for various financial reports can be created, distributed, and used. Financial data is an example of XBRL data. The XBRL data consists of a data value and additional information that supplements the data value. Additional information may be referred to as an aspect. The additional information is information specified by another independent element associated with the element containing the data value, and is composed of the information of a plurality of properties in which the item name of the property and the item value of the property are a set. .. In the embodiment, the XBRL data may be simply referred to as data or may be referred to as a data value. Further, in the embodiment, the “context”, which is an element including additional information associated with the data value of the XBRL data, will be mainly described.
図2は、XBRLデータの一例を示す図である。図2に示すように、1つのXBRLデータは、データ値と、データ値を補足する付加情報からなる。付加情報は、名前がcontextとunitである要素に複数定義されるが、ここでは、それぞれを区別するための識別子として、「context_1」、「JPY」が付与されている。データ値を補足する付加情報として、「context_1」に対応する付加情報と、「JPY」に対応する付加情報が定義されている。そして、例えば、「context_1」に対応する付加情報には、プロパティの項目名として「dim:A1」、プロパティの項目値として「A:x1」を1組とするプロパティの情報が定義されている。プロパティの項目名として「dim:B1」、プロパティの項目値として「B:x1」を1組とするプロパティの情報が定義されている。プロパティの項目名として「dim:C1」、プロパティの項目値として「C:x2」を1組とするプロパティの情報が定義されている。 FIG. 2 is a diagram showing an example of XBRL data. As shown in FIG. 2, one XBRL data includes a data value and additional information that supplements the data value. A plurality of additional information is defined in the elements whose names are context and unit, but here, "context_1" and "JPY" are given as identifiers for distinguishing each of them. As additional information that supplements the data value, additional information corresponding to "context_1" and additional information corresponding to "JPY" are defined. Then, for example, in the additional information corresponding to "context_1", the property information having "dim: A1" as the property item name and "A: x1" as the property item value is defined. Property information is defined with "dim: B1" as the property item name and "B: x1" as the property item value. Property information is defined with "dim: C1" as the property item name and "C: x2" as the property item value.
図1に示すように、インデックス生成装置100は、制御部110および記憶部120を有する。
As shown in FIG. 1, the
記憶部120は、例えばフラッシュメモリ(Flash Memory)やFRAM(登録商標)(Ferroelectric Random Access Memory)等の不揮発性の半導体メモリ素子等の記憶装置に対応する。記憶部120は、プロパティ定義情報121、インデックス情報122およびコンテキスト位置情報123を有する。
The storage unit 120 corresponds to a storage device such as a non-volatile semiconductor memory element such as a flash memory (Flash Memory) or an FRAM (registered trademark) (Ferroelectric Random Access Memory). The storage unit 120 has
プロパティ定義情報121は、プロパティの項目名およびプロパティの項目値を定義する。なお、プロパティの項目名を「プロパティ名」という場合がある。プロパティの項目値を「プロパティ値」という場合がある。
The
ここで、プロパティ定義情報121の一例を、図3を参照して説明する。図3は、プロパティ定義情報の一例を示す図である。図3に示すように、プロパティ定義情報121には、プロパティ種の定義およびプロパティ値の定義が含まれる。プロパティ種とは、プロパティの項目に対応する。プロパティ値とは、プロパティの項目値に対応する。各プロパティ種は、値として該当するプロパティ値と対応付けられる。プロパティ定義情報121には、入力データ300に出現する可能性のあるプロパティ種およびプロパティ値が定義される。例えば、XBRLの付加情報には、「Dimension」と呼ばれるカテゴリに属するプロパティ種があり、ユーザが予め任意に定義できる。プロパティ種が「Dimension」である場合のプロパティ項目およびプロパティ値が定義されている。一例として、プロパティ項目が「dim:A1」である場合に、値として該当するプロパティ値が「m:m1」、「m:m2」・・・「m:m8」であることが示されている。
Here, an example of the
図1に戻って、インデックス情報122は、入力データ300に含まれるプロパティの項目名およびプロパティの項目値それぞれについて、プロパティの項目名およびプロパティの項目値それぞれの出現位置を表す情報である。すなわち、インデックス情報122とは、入力データ300に含まれるプロパティの項目名およびプロパティの項目値について、それぞれ、オフセット(出現位置)ごとの存否をインデックス化したビットマップのことをいう。
Returning to FIG. 1, the
ここで、インデックス情報122の一例を、図4を参照して説明する。図4は、実施例1に係るインデックス情報の一例を示す図である。図4に示すように、インデックス情報122のX軸はコンテキストごとの出現位置を表し、Y軸はプロパティ名とプロパティ値とを表す。また、インデックス情報122は、プロパティ名のインデックス情報の領域と、プロパティ値のインデックス情報の領域を持つ。プロパティ名のインデックス情報は、それぞれのプロパティの項目名について、コンテキスト(Context)内の出現位置に関するインデックスの束の情報である。また、プロパティ値のインデックス情報は、それぞれのプロパティの項目値について、コンテキスト(Context)内の出現位置に関するインデックスの束の情報である。各プロパティ名および各プロパティ値について、コンテキスト内に出現する出現位置には、ONすなわち2進数の「1」が設定される。一例として、プロパティ名が「P1」である場合に、Context1内の1番目の出現位置に「1」が設定されている。プロパティ値が「Val1」である場合に、Context1内の2番目の出現位置に「1」が設定されている。
Here, an example of the
図1に戻って、コンテキスト位置情報123は、コンテキスト(Context)に関連付けられるXBRLデータの情報である。
Returning to FIG. 1, the
ここで、コンテキスト位置情報123の一例を、図5を参照して説明する。図5は、実施例1に係るコンテキスト位置情報の一例を示す図である。図5に示すように、コンテキスト位置情報123は、コンテキスト(Context)ごとに、各コンテキストが関連付けられるXBRLデータを対応付ける情報である。ここでいう各XBRLデータは、図2で示した各データ値に対応する。一例として、コンテキストが「Context1」である場合に、このコンテキストが関連付けられるXBRLデータとして「データ3、データ10、データ18」が設定されている。すなわち、「Context1」は、「データ3」に関連付けられる。「Context1」は、「データ10」に関連付けられる。「Context1」は、「データ18」に関連付けられる。
Here, an example of the
図1に戻って、制御部110は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。そして、制御部110は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路の電子回路に対応する。または、制御部110は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。制御部110は、コンテキスト選択部111、コンテキスト解析部112およびインデックス情報生成部113を有する。 Returning to FIG. 1, the control unit 110 has an internal memory for storing programs and control data that define various processing procedures, and executes various processing by these. The control unit 110 corresponds to, for example, an electronic circuit of an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). Alternatively, the control unit 110 corresponds to an electronic circuit such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit). The control unit 110 includes a context selection unit 111, a context analysis unit 112, and an index information generation unit 113.
コンテキスト選択部111は、入力データ300を入力し、入力した入力データ300に含まれるXBRLデータファイルから当該XBRLデータファイルに含まれるコンテキストを順次選択する。
The context selection unit 111 inputs the
コンテキスト解析部112は、コンテキスト選択部111によって選択されたコンテキストを解析する。例えば、コンテキスト解析部112は、コンテキスト選択部111によって選択されたコンテキストを字句解析する。コンテキスト解析部112は、字句解析した結果、プロパティの項目名およびプロパティの項目値の組を出現順に一時領域に保持する。 The context analysis unit 112 analyzes the context selected by the context selection unit 111. For example, the context analysis unit 112 lexically analyzes the context selected by the context selection unit 111. As a result of the lexical analysis, the context analysis unit 112 holds the set of the item name of the property and the item value of the property in the temporary area in the order of appearance.
インデックス情報生成部113は、入力データ300に含まれるプロパティの項目名およびプロパティの項目値それぞれについて、プロパティの項目名およびプロパティの項目値それぞれの出現位置に関するインデックス情報122を生成する。例えば、インデックス情報生成部113は、コンテキスト解析部112によって解析されたコンテキストについて、一時領域に保持された組ごとに、以下の生成処理を行う。すなわち、インデックス情報生成部113は、各組に含まれるプロパティの項目名に対して、当該プロパティの項目名の出現位置にビットを立てる。インデックス情報生成部113は、各組に含まれるプロパティの項目値に対して、当該プロパティの項目値の出現位置にビットを立てる。インデックス情報生成部113は、選択されたコンテキストと、対象のXBRLデータとを対応付けてコンテキスト位置情報123に設定する。インデックス情報生成部113は、コンテキスト解析部112によって解析された全てのコンテキストについて、インデックス情報生成処理を行うことで、インデックス情報122を生成する。なお、インデックス情報122のコンテキスト名、プロパティ名およびプロパティ値は、予め設定されるようにしても良い。あるいは、インデックス情報生成部113が、前処理として、プロパティ定義情報121を参照して、インデックス情報122のプロパティ名およびプロパティ値を設定しても良い。
The index information generation unit 113 generates
これにより、インデックス情報生成部113は、プロパティの項目名およびプロパティ値それぞれの出現位置に関するインデックスを生成することで、プロパティの項目名およびプロパティ値の組み合わせのインデックスを生成する場合と比べて、インデックス情報122のサイズ爆発を抑制できる。また、インデックス情報生成部113は、プロパティの項目名およびプロパティ値それぞれの出現位置に関するインデックスを生成することで、仮に入力データ300に新たなプロパティ値が有ったとしても、インデックス情報122のプロパティ値の領域に1行追加するだけで、インデックス情報122を更新することができる。インデックス情報生成部113は、プロパティの項目名およびプロパティ値それぞれの出現位置に関するインデックスを生成することで、仮に入力データ300に新たなプロパティの項目名が有ったとしても、インデックス情報122のプロパティの項目名の領域に1行追加するだけで、インデックス情報122を更新することができる。
As a result, the index information generation unit 113 generates the index related to the appearance position of each of the property item name and the property value, as compared with the case of generating the index of the combination of the property item name and the property value. The size explosion of 122 can be suppressed. Further, the index information generation unit 113 generates an index related to the appearance position of each of the property item name and the property value, so that even if the
[インデックス生成処理の一例]
ここで、インデックス生成処理の一例を、図6を参照して説明する。図6は、実施例1に係るインデックス生成処理の一例を示す図である。[Example of index generation processing]
Here, an example of the index generation process will be described with reference to FIG. FIG. 6 is a diagram showing an example of the index generation process according to the first embodiment.
図6に示すように、入力データ300には、複数のXBRLデータファイルが含まれる。各XBRLデータファイルには、複数のコンテキスト(Context)が含まれる。コンテキスト選択部111は、入力データ300に含まれるXBRLデータファイルから当該XBRLデータファイルに含まれるコンテキストを順次選択する。ここでは、コンテキスト選択部111は、コンテキストとして「Context1」を選択したとする。
As shown in FIG. 6, the
すると、コンテキスト解析部112は、コンテキストとして選択された「Context1」を字句解析する。一例として、コンテキスト解析部112は、特定の要素(xbrldi:explicitMember)の行に含まれるプロパティの項目名およびプロパティの項目値の組を検知する。ここでは、符号r1で示される行には、プロパティの項目名として「dim:B1」、プロパティの項目値として「m:m2」の組が検知される。また、符号r2で示される行には、プロパティの項目名として「dim:A1」、プロパティの項目値として「m:m1」の組が検知される。符号r3で示される行には、プロパティの項目名として「dim:C1」、プロパティの項目値として「m:m3」の組が検知される。
Then, the context analysis unit 112 lexically analyzes "
そして、コンテキスト解析部112は、プロパティの項目名およびプロパティの項目値の組を出現順に一時領域に保持する。ここでは、コンテキスト解析部112は、符号r1で示される行で検知した組の出現順に応じて、1番目の一時領域に「dim:B1」、2番目の一時領域に「m:m2」を保持する。コンテキスト解析部112は、符号r2で示される行で検知した組の出現順に応じて、3番目の一時領域に「dim:A1」、4番目の一時領域に「m:m1」を保持する。コンテキスト解析部112は、符号r3で示される行で検知した組の出現順に応じて、5番目の一時領域に「dim:C1」、6番目の一時領域に「m:m3」を保持する。 Then, the context analysis unit 112 holds the set of the item name of the property and the item value of the property in the temporary area in the order of appearance. Here, the context analysis unit 112 holds "dim: B1" in the first temporary area and "m: m2" in the second temporary area according to the order of appearance of the pairs detected by the line indicated by the code r1. To do. The context analysis unit 112 holds "dim: A1" in the third temporary area and "m: m1" in the fourth temporary area according to the order of appearance of the pairs detected by the line indicated by the code r2. The context analysis unit 112 holds "dim: C1" in the fifth temporary area and "m: m3" in the sixth temporary area according to the order of appearance of the pairs detected by the line indicated by the code r3.
そして、インデックス情報生成部113は、「Context1」について、一時領域に保持された組に含まれるプロパティの項目名に対して、当該プロパティの項目名の出現位置にビットを立てる。インデックス情報生成部113は、「Context1」について、一時領域に保持された組に含まれるプロパティの項目値に対して、当該プロパティの項目値の出現位置にビットを立てる。ここでは、インデックス情報生成部113は、プロパティの項目名「dim:B1」に対して、1番目の出現位置にビット「1」を設定する(e1)。インデックス情報生成部113は、プロパティの項目値「m:m2」に対して、2番目の出現位置にビット「1」を設定する(e2)。インデックス情報生成部113は、プロパティの項目名「dim:A1」に対して、3番目の出現位置にビット「1」を設定する(e3)。インデックス情報生成部113は、プロパティの項目値「m:m1」に対して、4番目の出現位置にビット「1」を設定する(e4)。インデックス情報生成部113は、プロパティの項目名「dim:C1」に対して、5番目の出現位置にビット「1」を設定する(e5)。インデックス情報生成部113は、プロパティの項目値「m:m3」に対して、6番目の出現位置にビット「1」を設定する(e6)。 Then, the index information generation unit 113 sets a bit at the appearance position of the item name of the property with respect to the item name of the property included in the set held in the temporary area for "Conext1". The index information generation unit 113 sets a bit at the appearance position of the item value of the property with respect to the item value of the property included in the set held in the temporary area for "Conext1". Here, the index information generation unit 113 sets the bit “1” at the first occurrence position with respect to the property item name “dim: B1” (e1). The index information generation unit 113 sets the bit “1” at the second occurrence position with respect to the property item value “m: m2” (e2). The index information generation unit 113 sets the bit “1” at the third occurrence position with respect to the property item name “dim: A1” (e3). The index information generation unit 113 sets the bit “1” at the fourth occurrence position with respect to the property item value “m: m1” (e4). The index information generation unit 113 sets the bit “1” at the fifth occurrence position with respect to the property item name “dim: C1” (e5). The index information generation unit 113 sets the bit “1” at the sixth appearance position with respect to the property item value “m: m3” (e6).
[インデックス情報の具体例]
ここで、Context1以外のContext10とContext100のインデックス生成処理が行われた後のインデックス情報122の具体例を、図7に表す。図7は、実施例1に係るインデックス情報の具体例を示す図である。[Specific example of index information]
Here, a specific example of the
図7に示すように、Context1、Context10およびContext100が定義されている。Context1についてのインデックス生成処理が行われた後のインデックス情報122は、符号E1の範囲内に示される。各プロパティの項目名、各プロパティの項目値に対するビットの設定位置は、図6で説明したとおりであるので、その説明を省略する。
As shown in FIG. 7, Context1, Context10 and Context100 are defined. The
Context10についてのインデックス生成処理が行われた後のインデックス情報122は、符号E2の範囲内に示される。すなわち、プロパティの項目名「dim:C1」に対して、Context10の1番目の出現位置にビット「1」が設定される(e7)。プロパティの項目名「m:m1」に対して、Context10の2番目の出現位置にビット「1」が設定される(e8)。プロパティの項目名「dim:A1」に対して、Context10の3番目の出現位置にビット「1」が設定される(e9)。プロパティの項目名「m:m1」に対して、Context10の4番目の出現位置にビット「1」が設定される(e10)。
The
Context100についてのインデックス生成処理が行われた後のインデックス情報122は、符号E3の範囲内に示される。すなわち、プロパティの項目名「dim:A1」に対して、Context100の1番目の出現位置にビット「1」が設定される(e11)。プロパティの項目名「m:m3」に対して、Context100の2番目の出現位置にビット「1」が設定される(e12)。プロパティの項目名「dim:B1」に対して、Context100の3番目の出現位置にビット「1」が設定される(e13)。プロパティの項目名「m:m3」に対して、Context100の4番目の出現位置にビット「1」が設定される(e14)。プロパティの項目名「dim:C1」に対して、Context100の5番目の出現位置にビット「1」が設定される(e15)。プロパティの項目名「m:m1」に対して、Context100の6番目の出現位置にビット「1」が設定される(e16)。
The
このようにして、インデックス生成装置100は、入力データ300の中の未処理のコンテキストがなくなるまで、コンテキスト選択部111、コンテキスト解析部112およびインデックス情報生成部113によるインデックス生成処理を繰り返させる。この結果、入力データ300におけるインデックス情報122が完成する。
In this way, the
[インデックス生成処理のフローチャート]
図8は、実施例1に係るインデックス生成処理のフローチャートを示す図である。なお、図8では、XBRLデータを「データ」というものとする。[Flowchart of index generation process]
FIG. 8 is a diagram showing a flowchart of the index generation process according to the first embodiment. In FIG. 8, the XBRL data is referred to as “data”.
図8に示すように、コンテキスト選択部111は、入力データ300を受け取ったか否かを判定する(ステップS10)。入力データ300を受け取っていないと判定した場合には(ステップS10;No)、コンテキスト選択部111は、入力データ300を受け取るまで、判定処理を繰り返す。
As shown in FIG. 8, the context selection unit 111 determines whether or not the
一方、入力データ300を受け取ったと判定した場合には(ステップS10;Yes)、コンテキスト選択部111は、入力データ300から対象のファイルを読み出す(ステップS11)。そして、コンテキスト選択部111は、読み出した対象のファイルからコンテキストを選択する(ステップS12)。
On the other hand, when it is determined that the
続いて、コンテキスト解析部112は、選択したコンテキストを字句解析する(ステップS13)。そして、コンテキスト解析部112は、プロパティの項目名およびプロパティの項目値を出現順に一時領域に保持する(ステップS14)。 Subsequently, the context analysis unit 112 lexically analyzes the selected context (step S13). Then, the context analysis unit 112 holds the item name of the property and the item value of the property in the temporary area in the order of appearance (step S14).
続いて、インデックス情報生成部113は、保持した各プロパティの項目名に対応するインデックスの、選択したコンテキスト内の出現位置に対するビットに「1」を書き込む(ステップS15)。インデックス情報生成部113は、保持した各プロパティの項目値に対応するインデックスの、選択したコンテキスト内の出現位置に対するビットに「1」を書き込む(ステップS16)。インデックス情報生成部113は、選択したコンテキストと対象のデータとを対応付けて、コンテキスト位置情報123に設定する(ステップS17)。 Subsequently, the index information generation unit 113 writes “1” to the bit of the index corresponding to the item name of each held property with respect to the appearance position in the selected context (step S15). The index information generation unit 113 writes “1” to the bit of the index corresponding to the item value of each held property with respect to the occurrence position in the selected context (step S16). The index information generation unit 113 associates the selected context with the target data and sets the context position information 123 (step S17).
そして、インデックス情報生成部113は、未処理のコンテキストは有るか否かを判定する(ステップS18)。未処理のコンテキストが有ると判定した場合には(ステップS18;Yes)、コンテキスト選択部111は、次のコンテキストを選択する(ステップS19)。そして、コンテキスト選択部111は、コンテキスト解析部112に遷移すべく、ステップS13に移行する。 Then, the index information generation unit 113 determines whether or not there is an unprocessed context (step S18). If it is determined that there is an unprocessed context (step S18; Yes), the context selection unit 111 selects the next context (step S19). Then, the context selection unit 111 shifts to step S13 in order to transition to the context analysis unit 112.
一方、未処理のコンテキストが無いと判定した場合には(ステップS18;No)、インデックス情報生成部113は、入力データ300に未処理の対象のファイルは有るか否かを判定する(ステップS20)。未処理の対象のファイルが有ると判定した場合には(ステップS20;Yes)、インデックス情報生成部113は、コンテキスト選択部111に遷移すべく、ステップS11に移行する。 On the other hand, when it is determined that there is no unprocessed context (step S18; No), the index information generation unit 113 determines whether or not there is an unprocessed target file in the input data 300 (step S20). .. When it is determined that there is an unprocessed target file (step S20; Yes), the index information generation unit 113 shifts to step S11 in order to transition to the context selection unit 111.
一方、未処理の対象のファイルが無いと判定した場合には(ステップS20;No)、インデックス情報生成部113は、インデックス生成処理を終了する。 On the other hand, when it is determined that there is no unprocessed target file (step S20; No), the index information generation unit 113 ends the index generation process.
[実施例1に係る検証装置の構成]
図9は、実施例1に係る検証装置の構成を示す機能ブロック図である。検証装置200は、入力される検証ルール310を、項目および値により規定される変換抽出条件に変換し、入力データ300より生成されたインデックス情報122を参照し、変換抽出条件に対応する項目および値の検証を行う。すなわち、検証装置200は、インデックス情報122を用いて、入力される検証ルール310から得られる変換抽出条件に合致するXBRLデータを抽出する。[Configuration of verification device according to Example 1]
FIG. 9 is a functional block diagram showing the configuration of the verification device according to the first embodiment. The
ここでいう「変換抽出条件」とは、項目および値により規定される抽出条件が1つである場合には、抽出条件と一致するが、項目および値により規定される抽出条件が複数である場合には、複数の抽出条件を論理演算子で結合した条件のことをいう。 The "conversion extraction condition" referred to here is the same as the extraction condition when there is one extraction condition defined by the item and the value, but when there are a plurality of extraction conditions defined by the item and the value. Refers to a condition in which multiple extraction conditions are combined by a logical operator.
ここでいう検証ルール310とは、XBRLデータの内容の検証や計算を行うためのルールである。検証ルール310は、XBRLフォーミュラを用いて記述される。XBRLフォーミュラとは、XBRLデータの内容の検証や計算を行うためのルールを定義する記述言語であり、検証ルール310を定義する。
The
図10は、検証ルールの構造の一例を示す図である。図10に示すように、検証ルール310には、一例として、「変数」と、「変数個別の抽出条件」と、「変数共通の抽出条件」と、「検証式」とが定義される。「変数共通の抽出条件」は、検証ルール310内の全ての「変数個別の抽出条件」で定義される「変数」の共通の抽出条件である。ここでは、「変数」は、a1、a2、a3に対応する。「変数個別の抽出条件」は、b1、b2、b3に対応する。「変数共通の抽出条件」は、c0に対応する。「検証式」は、d0に対応する。
FIG. 10 is a diagram showing an example of the structure of the verification rule. As shown in FIG. 10, in the
「変数共通の抽出条件」c0により、入力データ300の全体から検証ルール310で検証されるXBRLデータが絞り込まれる。さらに、「変数」a1では、「変数個別の抽出条件」b1によりXBRLデータが絞り込まれ、「変数」a1に絞り込まれたXBRLデータが割り当てられる。「変数」a2では、同様に「変数個別の抽出条件」b2によりXBRLデータが絞り込まれ、「変数」a2に絞り込まれたXBRLデータが割り当てられる。「変数」a3では、同様に「変数個別の抽出条件」b3によりXBRLデータが絞り込まれ、「変数」a3に絞り込まれたXBRLデータが割り当てられる。そして、割り当てられたXBRLデータの組み合わせ毎に、「検証式」d0が検証される。図10の例では、「変数共通の抽出条件」c0における1つ目の条件指定であるプロパティの項目名は、Dimensionで定義されるプロパティである「dim:CS」であり、その項目値は、「m:x26」である。2つ目の条件指定であるプロパティの項目名は、Dimensionで定義されるプロパティである「dim:VS」であり、その項目値は、「m:x80」である。3つ目の条件指定であるプロパティの項目名は、Dimensionで定義されるプロパティである「dim:D0」であり、その項目値は、「m:x0」である。
According to the "variable common extraction condition" c0, the XBRL data to be verified by the
図9に示すように、検証装置200は、制御部210および記憶部220を有する。
As shown in FIG. 9, the
記憶部220は、例えばフラッシュメモリ(Flash Memory)やFRAM(登録商標)(Ferroelectric Random Access Memory)等の不揮発性の半導体メモリ素子等の記憶装置に対応する。記憶部220は、インデックス情報122およびコンテキスト位置情報123を有する。
The
インデックス情報122は、入力データ300に含まれるプロパティの項目名およびプロパティ値それぞれについて、プロパティの項目名およびプロパティ値それぞれの出現位置を表す情報である。すなわち、インデックス情報122とは、入力データ300に含まれるプロパティの項目名およびプロパティ値について、それぞれ、オフセット(出現位置)ごとの存否をインデックス化したビットマップのことをいう。なお、インデックス情報122は、インデックス生成装置100によって生成される情報であり、例えば、ネットワークを介して取得され、記憶部220に記憶される。
The
コンテキスト位置情報123は、コンテキスト(Context)に関連付けられるXBRLデータの情報である。なお、コンテキスト位置情報123は、インデックス生成装置100によって生成される情報であり、例えば、ネットワークを介して取得され、記憶部220に記憶される。
The context position
制御部210は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。そして、制御部210は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路の電子回路に対応する。または、制御部210は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。制御部210は、抽出条件変換部211、データ抽出部212および抽出結果出力部213を有する。なお、抽出条件変換部211は、変換部の一例である。データ抽出部212は、検証部の一例である。
The
抽出条件変換部211は、検証ルール310を入力し、入力した検証ルール310をプロパティの項目名およびプロパティの項目値により規定される変換抽出条件に変換する。例えば、抽出条件変換部211は、検証ルール310の「変数共通の抽出条件」を解釈し、プロパティの項目およびプロパティの項目値を抽出する。抽出条件変換部211は、抽出した結果、1組のプロパティの項目およびプロパティの項目値を1個の抽出条件として、1個または複数個の抽出条件から変換抽出条件を生成する。
The extraction condition conversion unit 211 inputs the
データ抽出部212は、インデックス情報122を参照し、抽出条件変換部211によって検証ルール310から変換された変換抽出条件に対応するXBRLデータを抽出する。
The data extraction unit 212 refers to the
例えば、データ抽出部212は、変換抽出条件から1個の抽出条件を選択する。データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。また、データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するビットマップをインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。そして、データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。
For example, the data extraction unit 212 selects one extraction condition from the conversion extraction conditions. The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
抽出条件が1個である場合には、データ抽出部212は、AND結果のビットマップについて、各コンテキストに対応するビット区間に「1」が設定されたビット区間を検出する。データ抽出部212は、検出したビット区間に対応するコンテキストを検出する。そして、データ抽出部212は、コンテキスト位置情報123を参照し、検出したコンテキストに関連付けられるXBRLデータを絞り込む。
When there is only one extraction condition, the data extraction unit 212 detects a bit interval in which "1" is set in the bit interval corresponding to each context in the bitmap of the AND result. The data extraction unit 212 detects the context corresponding to the detected bit interval. Then, the data extraction unit 212 refers to the
抽出条件が複数個である場合には、データ抽出部212は、それぞれの抽出条件に対して、AND結果を算出する。データ抽出部212は、複数の抽出条件に対するそれぞれのAND結果をOR演算する。データ抽出部212は、OR結果を参照し、変換抽出条件に含まれる複数の抽出条件を結合するために用いられる論理演算子に応じて該当するコンテキストを検出する。一例として、複数の抽出条件を結合する論理演算子がANDである場合には、データ抽出部212は、OR結果のビットマップについて、各コンテキストに対応するビット区間に「1」が抽出条件の数分設定されたビット区間を検出する。そして、データ抽出部212は、抽出したビット区間に対応するコンテキストを検出する。複数の抽出条件を結合する論理演算子がORである場合には、データ抽出部212は、OR結果のビットマップについて、各コンテキストに対応するビット区間に「1」が1つ以上設定されたビット区間を検出する。そして、データ抽出部212は、抽出したビット区間に対応するコンテキストを検出する。そして、データ検出部212は、コンテキスト位置情報123を参照し、検出したコンテキストに関連付けられるXBRLデータを絞り込む。
When there are a plurality of extraction conditions, the data extraction unit 212 calculates an AND result for each extraction condition. The data extraction unit 212 performs an OR operation on each AND result for a plurality of extraction conditions. The data extraction unit 212 refers to the OR result and detects the corresponding context according to the logical operator used to combine the plurality of extraction conditions included in the conversion extraction condition. As an example, when the logical operator that combines a plurality of extraction conditions is AND, the data extraction unit 212 sets "1" as the number of extraction conditions in the bit interval corresponding to each context for the bitmap of the OR result. Detects the bit interval set for minutes. Then, the data extraction unit 212 detects the context corresponding to the extracted bit interval. When the logical operator that combines a plurality of extraction conditions is OR, the data extraction unit 212 sets a bit in which one or more "1" s are set in the bit interval corresponding to each context in the bitmap of the OR result. Detect the interval. Then, the data extraction unit 212 detects the context corresponding to the extracted bit interval. Then, the data detection unit 212 refers to the
抽出結果出力部213は、データ抽出部212によって抽出されたXBRLデータを出力する。この後、検証装置200は、出力されたXBRLデータを用いて、検証ルール310の検証式d0を検証する。
The extraction result output unit 213 outputs the XBRL data extracted by the data extraction unit 212. After that, the
[抽出条件変換処理の一例]
ここで、抽出条件変換処理の一例を、図11を参照して説明する。図11は、実施例1に係る抽出条件変換処理の一例を示す図である。[Example of extraction condition conversion process]
Here, an example of the extraction condition conversion process will be described with reference to FIG. FIG. 11 is a diagram showing an example of the extraction condition conversion process according to the first embodiment.
図11に示すように、検証ルール310の「変数共通の抽出条件」には、3種のプロパティの条件が含まれる。すなわち、「変数共通の抽出条件」には、対象のXBRLデータが満たすべき3種のプロパティの条件が含まれる。
As shown in FIG. 11, the “variable common extraction condition” of the
抽出条件変換部211は、このような検証ルール310の「変数共通の抽出条件」を解釈し、プロパティの項目名およびプロパティの項目値をプロパティの条件(抽出条件)として抽出する。ここでは、プロパティの項目名として「dim:A1」、プロパティの項目値として「m:m1」が抽出され、[dim:A1、m:m1]が1つの抽出条件となる。プロパティの項目名として「dim:B1」、プロパティの項目値として「m:m2」が抽出され、[dim:B1、m:m2]が1つの抽出条件となる。プロパティの項目名として「dim:C1」、プロパティの項目値として「m:m3」が抽出され、[dim:C1、m:m3]が1つの抽出条件となる。
The extraction condition conversion unit 211 interprets the “variable common extraction condition” of the
抽出条件変換部211は、複数の抽出条件から変換抽出条件を生成する。ここでは、SQL文で示されるコマンドを用いて変換抽出条件が生成されている。すなわち、変換抽出条件は、「(dim:A1=m:m1) and (dim:B1=m:m2) and (dim:C1=m:m3)」であり、抽出条件を結合する論理識別子がANDの場合である。 The extraction condition conversion unit 211 generates a conversion extraction condition from a plurality of extraction conditions. Here, the conversion extraction condition is generated by using the command indicated by the SQL statement. That is, the conversion extraction condition is "(dim: A1 = m: m1) and (dim: B1 = m: m2) and (dim: C1 = m: m3)", and the logical identifier that combines the extraction conditions is AND. This is the case.
[データ抽出処理の一例]
ここで、データ抽出処理の一例を、図12を参照して説明する。図12は、実施例1に係るデータ抽出処理の一例を示す図である。なお、図12で示すデータ抽出処理は、1個のプロパティを持つXBRLデータを抽出する場合である。ここでは、変換抽出条件は、「dim:A1=m:m1」であるとする。[Example of data extraction process]
Here, an example of the data extraction process will be described with reference to FIG. FIG. 12 is a diagram showing an example of the data extraction process according to the first embodiment. The data extraction process shown in FIG. 12 is a case of extracting XBRL data having one property. Here, it is assumed that the conversion extraction condition is "dim: A1 = m: m1".
データ抽出部212は、変換抽出条件から1個の抽出条件を選択する。ここでは、抽出条件として「dim:A1=m:m1」が選択される。 The data extraction unit 212 selects one extraction condition from the conversion extraction conditions. Here, "dim: A1 = m: m1" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:A1」に対応するビットマップを抽出する(s1)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m1」に対応するビットマップを抽出し、1ビットだけ左シフトする(s2)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:A1」に対応するビットマップと「m:m1」に対応するシフトしたビットマップとをAND演算する(s3)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: A1” and the shifted bitmap corresponding to “m: m1” (s3).
抽出条件が1個である場合であるので、データ抽出部212は、AND結果のビットマップについて、各コンテキストに対応するビット区間に「1」が設定されたビット区間を検出し、検出したビット区間に対応するコンテキストを検出する(s4)。ここでは、コンテキスト1およびコンテキスト10が検出される。
Since there is only one extraction condition, the data extraction unit 212 detects a bit interval in which "1" is set in the bit interval corresponding to each context in the bitmap of the AND result, and the detected bit interval. Detect the context corresponding to (s4). Here,
データ抽出部212は、コンテキスト位置情報123を参照し、検出したコンテキストを含むXBRLデータを絞り込む(s5)。ここでは、コンテキスト位置情報123が図5に示される内容であるとすると、コンテキスト1は、データ3とデータ10に関連付けられる。コンテキスト10は、データ13に関連付けられる。したがって、データ3、データ10およびデータ13がXBRLデータとして絞り込まれる。
The data extraction unit 212 refers to the
[データ抽出処理の別の例]
ここで、データ抽出処理の別の例を、図13を参照して説明する。図13は、実施例1に係るデータ抽出処理の別の例を示す図である。なお、図13で示すデータ抽出処理は、複数のプロパティのいずれも持つXBRLデータを抽出する場合である。ここでは、変換抽出条件は、「(dim:A1=m:m1) and (dim:B1=m:m2) and (dim:C1=m:m3)」であるとする。[Another example of data extraction processing]
Here, another example of the data extraction process will be described with reference to FIG. FIG. 13 is a diagram showing another example of the data extraction process according to the first embodiment. The data extraction process shown in FIG. 13 is a case of extracting XBRL data having any of a plurality of properties. Here, it is assumed that the conversion extraction condition is "(dim: A1 = m: m1) and (dim: B1 = m: m2) and (dim: C1 = m: m3)".
データ抽出部212は、変換抽出条件から1個の抽出条件を選択する。ここでは、抽出条件として「dim:A1=m:m1」が選択される。 The data extraction unit 212 selects one extraction condition from the conversion extraction conditions. Here, "dim: A1 = m: m1" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:A1」に対応するビットマップを抽出する(s10)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m1」に対応するビットマップを抽出し、1ビットだけ左シフトする(s11)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:A1」に対応するビットマップと「m:m1」に対応するシフトしたビットマップとをAND演算する(s12)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: A1” and the shifted bitmap corresponding to “m: m1” (s12).
データ抽出部212は、変換抽出条件から次の1個の抽出条件を選択する。ここでは、抽出条件として「dim:B1=m:m2」が選択される。 The data extraction unit 212 selects the next one extraction condition from the conversion extraction conditions. Here, "dim: B1 = m: m2" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:B1」に対応するビットマップを抽出する(s13)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m2」に対応するビットマップを抽出し、1ビットだけ左シフトする(s14)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:B1」に対応するビットマップと「m:m2」に対応するシフトしたビットマップとをAND演算する(s15)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: B1” and the shifted bitmap corresponding to “m: m2” (s15).
データ抽出部212は、変換抽出条件から次の1個の抽出条件を選択する。ここでは、抽出条件として「dim:C1=m:m3」が選択される。 The data extraction unit 212 selects the next one extraction condition from the conversion extraction conditions. Here, "dim: C1 = m: m3" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:C1」に対応するビットマップを抽出する(s16)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m3」に対応するビットマップを抽出し、1ビットだけ左シフトする(s17)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:C1」に対応するビットマップと「m:m3」に対応するシフトしたビットマップとをAND演算する(s18)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: C1” and the shifted bitmap corresponding to “m: m3” (s18).
抽出条件が複数個である場合であるので、データ抽出部212は、複数の抽出条件に対するそれぞれのAND結果をOR演算する。ここでは、データ抽出部212は、「dim:A1」のプロパティのAND結果、「dim:B1」のプロパティのAND結果および「dim:C1」のプロパティのAND結果をOR演算する(s19)。 Since there are a plurality of extraction conditions, the data extraction unit 212 performs an OR operation on each AND result for the plurality of extraction conditions. Here, the data extraction unit 212 performs an OR operation on the AND result of the property of "dim: A1", the AND result of the property of "dim: B1", and the AND result of the property of "dim: C1" (s19).
抽出条件を結合する論理識別子はANDの場合であるので、データ抽出部212は、以下の処理を行う。すなわち、データ抽出部212は、OR結果のビットマップについて、各コンテキストに対応するビット区間に「1」が抽出条件の数分設定されたビット区間を検出し、検出したビット区間に対応するコンテキストを検出する。ここでは、抽出条件の数は3であるので、抽出条件の数分「1」が設定されたビット区間であるコンテキスト1が検出される(s20)。
Since the logical identifier that combines the extraction conditions is the case of AND, the data extraction unit 212 performs the following processing. That is, the data extraction unit 212 detects a bit interval in which "1" is set for the number of extraction conditions in the bit interval corresponding to each context in the OR result bitmap, and determines the context corresponding to the detected bit interval. To detect. Here, since the number of extraction conditions is 3,
この後、データ抽出部212は、コンテキスト位置情報123を参照し、検出したコンテキストに関連付けられるXBRLデータを絞り込む。
After that, the data extraction unit 212 refers to the
[データ抽出処理のさらに別の例]
ここで、データ抽出処理のさらに別の例を、図14を参照して説明する。図14は、実施例1に係るデータ抽出処理のさらに別の例を示す図である。なお、図14で示すデータ抽出処理は、複数のプロパティのうちいずれかを持つXBRLデータを抽出する場合である。ここでは、変換抽出条件は、「(dim:B1=m:m1) or (dim:B1=m:m2) or (dim:B1=m:m3)」であるとする。[Another example of data extraction processing]
Here, yet another example of the data extraction process will be described with reference to FIG. FIG. 14 is a diagram showing still another example of the data extraction process according to the first embodiment. The data extraction process shown in FIG. 14 is a case of extracting XBRL data having any one of a plurality of properties. Here, it is assumed that the conversion extraction condition is "(dim: B1 = m: m1) or (dim: B1 = m: m2) or (dim: B1 = m: m3)".
データ抽出部212は、変換抽出条件から1個の抽出条件を選択する。ここでは、抽出条件として「dim:B1=m:m1」が選択される。 The data extraction unit 212 selects one extraction condition from the conversion extraction conditions. Here, "dim: B1 = m: m1" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:B1」に対応するビットマップを抽出する(s30)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m1」に対応するビットマップを抽出し、1ビットだけ左シフトする(s31)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:B1」に対応するビットマップと「m:m1」に対応するシフトしたビットマップとをAND演算する(s32)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: B1” and the shifted bitmap corresponding to “m: m1” (s32).
データ抽出部212は、変換抽出条件から次の1個の抽出条件を選択する。ここでは、抽出条件として「dim:B1=m:m2」が選択される。 The data extraction unit 212 selects the next one extraction condition from the conversion extraction conditions. Here, "dim: B1 = m: m2" is selected as the extraction condition.
データ抽出部212は、プロパティの項目名「dim:B1」に対応するビットマップを既に抽出したので(s30)、この処理を省略する。 Since the data extraction unit 212 has already extracted the bitmap corresponding to the property item name “dim: B1” (s30), this process is omitted.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m2」に対応するビットマップを抽出し、1ビットだけ左シフトする(s33)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:B1」に対応するビットマップと「m:m2」に対応するシフトしたビットマップとをAND演算する(s34)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: B1” and the shifted bitmap corresponding to “m: m2” (s34).
データ抽出部212は、変換抽出条件から次の1個の抽出条件を選択する。ここでは、抽出条件として「dim:B1=m:m3」が選択される。 The data extraction unit 212 selects the next one extraction condition from the conversion extraction conditions. Here, "dim: B1 = m: m3" is selected as the extraction condition.
データ抽出部212は、プロパティの項目名「dim:B1」に対応するビットマップを既に抽出したので(s30)、この処理を省略する。 Since the data extraction unit 212 has already extracted the bitmap corresponding to the property item name “dim: B1” (s30), this process is omitted.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出し、抽出したビットマップを1ビットだけ左シフトする。ここでは、データ抽出部212は、プロパティの項目値「m:m3」に対応するビットマップを抽出し、1ビットだけ左シフトする(s35)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するシフトした結果のビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:B1」に対応するビットマップと「m:m3」に対応するシフトしたビットマップとをAND演算する(s36)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap of the shifted result corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: B1” and the shifted bitmap corresponding to “m: m3” (s36).
抽出条件が複数個である場合であるので、データ抽出部212は、複数の抽出条件に対するそれぞれのAND結果をOR演算する。ここでは、データ抽出部212は、3個の「dim:B1」のプロパティのAND結果をOR演算する(s37)。 Since there are a plurality of extraction conditions, the data extraction unit 212 performs an OR operation on each AND result for the plurality of extraction conditions. Here, the data extraction unit 212 performs an OR operation on the AND results of the three “dim: B1” properties (s37).
抽出条件を結合する論理識別子がORの場合であるので、データ抽出部212は、以下の処理を行う。すなわち、データ抽出部212は、OR結果のビットマップについて、各コンテキストに対応するビット区間に「1」が1つ以上設定されたビット区間を検出し、検出したビット区間に対応するコンテキストを検出する。ここでは、「1」が1つ以上設定されたビット区間であるコンテキスト1、コンテキスト100が検出される(s38)。
Since the logical identifier that combines the extraction conditions is OR, the data extraction unit 212 performs the following processing. That is, the data extraction unit 212 detects a bit interval in which one or more "1" s are set in the bit interval corresponding to each context in the OR result bitmap, and detects the context corresponding to the detected bit interval. .. Here,
この後、データ抽出部212は、コンテキスト位置情報123を参照し、検出したコンテキストに関連付けられるXBRLデータを絞り込む。
After that, the data extraction unit 212 refers to the
[検証処理のフローチャート]
図15は、実施例1に係る検証処理のフローチャートを示す図である。なお、図15では、XBRLデータを「データ」というものとする。[Flowchart of verification process]
FIG. 15 is a diagram showing a flowchart of the verification process according to the first embodiment. In FIG. 15, XBRL data is referred to as “data”.
図15に示すように、抽出条件変換部211は、検証ルール310を受け取ったか否かを判定する(ステップS21)。検証ルール310を受け取っていないと判定した場合には(ステップS21;No)、抽出条件変換部211は、検証ルール310を受け取るまで、判定処理を繰り返す。
As shown in FIG. 15, the extraction condition conversion unit 211 determines whether or not the
一方、検証ルール310を受け取ったと判定した場合には(ステップS21;Yes)、抽出条件変換部211は、検証ルール310を1個又は複数の抽出条件を含む変換抽出条件に変換する(ステップS22)。例えば、抽出条件変換部211は、検証ルール310の「変数共通の抽出条件」を解釈し、プロパティの項目名およびプロパティの項目値を抽出する。抽出条件変換部211は、抽出した結果、1組のプロパティの項目名およびプロパティの項目値を1個の抽出条件として、1個または複数個の抽出条件から変換抽出条件を生成する。
On the other hand, when it is determined that the
続いて、データ抽出部212は、変換抽出条件から1個の抽出条件を選択する(ステップS23)。そして、データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名とプロパティの項目値に対応するそれぞれのインデックスを抽出する(ステップS24)。 Subsequently, the data extraction unit 212 selects one extraction condition from the conversion extraction conditions (step S23). Then, the data extraction unit 212 extracts each index corresponding to the item name of the property and the item value of the property included in the selected extraction condition (step S24).
データ抽出部212は、プロパティの項目値に対するインデックスを1ビットだけ左シフトする(ステップS25)。そして、データ抽出部212は、プロパティの項目名に対するインデックスとプロパティの項目値に対するインデックスとをAND演算する(ステップS26)。 The data extraction unit 212 shifts the index with respect to the item value of the property by one bit to the left (step S25). Then, the data extraction unit 212 performs an AND operation on the index for the item name of the property and the index for the item value of the property (step S26).
そして、データ抽出部212は、変換抽出条件に、未処理の抽出条件が存在するか否かを判定する(ステップS27)。未処理の抽出条件が存在すると判定した場合には(ステップS27;Yes)、データ抽出部212は、次の抽出条件を選択すべく、ステップS23に移行する。 Then, the data extraction unit 212 determines whether or not there is an unprocessed extraction condition in the conversion extraction condition (step S27). When it is determined that the unprocessed extraction condition exists (step S27; Yes), the data extraction unit 212 proceeds to step S23 in order to select the next extraction condition.
一方、未処理の抽出条件が存在しないと判定した場合には(ステップS27;No)、データ抽出部212は、変換抽出条件に含まれる抽出条件の数が複数であるか否かを判定する(ステップS28)。抽出条件の数が複数でないと判定した場合には(ステップS28;No)、データ抽出部212は、ステップS30に移行する。 On the other hand, when it is determined that there is no unprocessed extraction condition (step S27; No), the data extraction unit 212 determines whether or not the number of extraction conditions included in the conversion extraction condition is plural (step S27; No). Step S28). If it is determined that the number of extraction conditions is not plural (step S28; No), the data extraction unit 212 proceeds to step S30.
一方、抽出条件の数が複数であると判定した場合には(ステップS28;Yes)、データ抽出部212は、プロパティごとにAND演算した複数のAND結果をOR演算する(ステップS29)。そして、データ抽出部212は、ステップS30に移行する。 On the other hand, when it is determined that the number of extraction conditions is plural (step S28; Yes), the data extraction unit 212 performs an OR operation on the plurality of AND results obtained by ANDing each property (step S29). Then, the data extraction unit 212 shifts to step S30.
ステップS30において、データ抽出部212は、演算結果に基づいて、変換抽出条件に合致するコンテキストを検出する(ステップS30)。例えば、データ抽出部212は、抽出条件が1個である場合には、AND結果のインデックスについて、各コンテキストに対応するビット区間に「1」が設定されたビット区間を検出し、検出したビット区間に対応するコンテキストを検出する。データ抽出部212は、抽出条件が複数個である場合には、OR結果のインデックスについて、変換抽出条件に含まれる複数の抽出条件を結合するために用いられる論理演算子に応じて該当するコンテキストを検出する。 In step S30, the data extraction unit 212 detects a context that matches the conversion extraction condition based on the calculation result (step S30). For example, when the extraction condition is one, the data extraction unit 212 detects a bit interval in which "1" is set in the bit interval corresponding to each context for the index of the AND result, and the detected bit interval. Detect the context corresponding to. When there are a plurality of extraction conditions, the data extraction unit 212 sets the corresponding context for the index of the OR result according to the logical operator used to combine the plurality of extraction conditions included in the conversion extraction condition. To detect.
そして、データ抽出部212は、コンテキスト位置情報123を用いて、検出したコンテキストに関連付けられるデータを抽出する(ステップS31)。この後、検証装置200は、抽出されたデータを用いて、検証ルール310の検証式d0を検証する。そして、データ抽出部212は、検証処理を終了する。
Then, the data extraction unit 212 extracts the data associated with the detected context by using the context position information 123 (step S31). After that, the
[実施例1の効果]
上記実施例1によれば、検証装置200は、入力された検証ルール310を、項目および値により規定される変換抽出条件に変換する。検証装置200は、入力データ300より生成された、入力データ300に含まれる項目および値それぞれについての出現位置に関するインデックス情報122を参照し、変換抽出条件に対応する項目および値の検証を行う。かかる構成によれば、検証装置200は、項目および値それぞれについての出現位置に関するインデックス情報122を用いることで項目および値による複数の条件でデータを抽出することが可能となる。この結果、検証装置200は、項目および値による複数の条件であっても、データの抽出に関する演算量を抑制し、高速にデータを抽出することが可能となる。[Effect of Example 1]
According to the first embodiment, the
また、上記実施例1によれば、検証装置200は、インデックス情報122を参照し、変換抽出条件に含まれる項目および値に対応するそれぞれのインデックスを取得する。検証装置200は、取得した値に対応するインデックスを1ビット分左シフトする。検証装置200は、項目に対応するインデックスと値に対応するシフトした結果のインデックスとの論理演算により、変換抽出条件に対応する項目および値の検証を行う。かかる構成によれば、検証装置200は、インデックス情報122について論理演算を用いることで、項目および値による変換抽出条件に合致するデータを抽出することができる。
Further, according to the first embodiment, the
また、上記実施例1によれば、検証装置200は、変換抽出条件に項目および値の組が複数存在する場合には、各組に含まれる項目に対応するインデックスと同一の組に含まれる値に対応するシフトした結果のインデックスとをAND演算する。検証装置200は、各組のAND演算結果をOR演算する。検証装置200は、OR演算結果を用いて変換抽出条件に対応する項目および値の検証を行う。かかる構成によれば、検証装置200は、インデックス情報122について論理演算を用いることで、項目および値による複数の条件に合致するデータを抽出することができる。
Further, according to the first embodiment, when there are a plurality of sets of items and values in the conversion extraction condition, the
また、上記実施例1によれば、インデックス生成装置100は、項目および値の組み合わせにより記述された入力データ300を入力する。インデックス生成装置100は、入力データ300に含まれる項目および値それぞれについて、項目および値それぞれの出現位置に関するインデックス情報122を生成する。かかる構成によれば、インデックス生成装置100は、入力データ300に含まれる項目および値それぞれについてインデックス情報122を生成することで、効率的なインデックス情報122を生成することができる。また、インデックス生成装置100は、入力データ300に含まれる項目および値の組み合わせでなく、項目および値それぞれについてインデックス情報122を生成することで、インデックスのサイズ爆発を抑制できる。また、インデックス生成装置100は、項目および値それぞれの出現位置に関するインデックスを生成することで、仮に入力データ300に新たな値が有ったとしても、インデックス情報122の値の領域に1行追加するだけで、同様に、インデックス情報122を生成することができる。インデックス生成装置100は、項目名および値それぞれの出現位置に関するインデックスを生成することで、仮に入力データ300に新たな項目名が有ったとしても、インデックス情報122の項目の領域に1行追加するだけで、同様に、インデックス情報122を生成することができる。
Further, according to the first embodiment, the
ところで、実施例1に係るインデックス生成装置100は、入力データ300に含まれる項目および値それぞれの出現位置に関するインデックス情報122を生成すると説明した。しかしながら、インデックス生成装置100は、これに限定されず、入力データ300に含まれる項目および値の組について、同一の組の値を項目と同じ出現位置とする、出現位置に関するインデックス情報を生成しても良い。
By the way, it has been explained that the
そこで、実施例2では、インデックス生成装置100が、入力データ300に含まれる項目および値の組について、同一の組の値を項目と同じ出現位置とする、出現位置に関するインデックス情報を生成する場合を説明する。
Therefore, in the second embodiment, the
ここで、実施例2に係るインデックス情報122Aの一例を、図16を参照して説明する。図16は、実施例2に係るインデックス情報の一例を示す図である。図16に示すように、インデックス情報122AのX軸はコンテキストごとの出現位置を表し、Y軸はプロパティ名とプロパティ値とを表す。また、インデックス情報122Aは、プロパティ名のインデックス情報の領域と、プロパティ値のインデックス情報の領域を有する。プロパティ名のインデックス情報は、それぞれのプロパティの項目名について、コンテキスト(Context)内の出現位置に関するインデックスの束の情報である。また、プロパティ値のインデックス情報は、それぞれのプロパティの項目値について、コンテキスト(Context)内の出現位置に関するインデックスの束の情報である。プロパティの項目値についての出現位置は、当該プロパティの項目値と同一の組のプロパティの項目名と同じとする。各プロパティ名および各プロパティ値について、コンテキスト内に出現する出現位置には、ONすなわち2進数の「1」が設定される。一例として、プロパティ名として「dim:A1」、プロパティ値として「m:m1」が同一の組であるとする。このプロパティ名の出現位置がContext1内の2番目である場合に、Context1内の2番目に「1」が設定される。このプロパティ値の出現位置は、同じ組のプロパティ名と同じ出現位置であるContext1内の2番目に「1」が設定される。
Here, an example of the
[インデックス生成処理の一例]
ここで、インデックス生成処理の一例を、図17を参照して説明する。図17は、実施例2に係るインデックス生成処理の一例を示す図である。なお、図17では、コンテキスト選択部111が、コンテキストとして「Context1」を選択した場合について説明する。[Example of index generation processing]
Here, an example of the index generation process will be described with reference to FIG. FIG. 17 is a diagram showing an example of the index generation process according to the second embodiment. Note that FIG. 17 describes a case where the context selection unit 111 selects “
すると、コンテキスト解析部112は、コンテキストとして選択された「Context1」を字句解析する。一例として、コンテキスト解析部112は、特定の要素(xbrldi:explicitMember)の行に含まれるプロパティの項目名およびプロパティの項目値の組を検知する。ここでは、符号r1で示される行には、プロパティの項目名として「dim:B1」、プロパティの項目値として「m:m2」の組が検知される。また、符号r2で示される行には、プロパティの項目名として「dim:A1」、プロパティの項目値として「m:m1」の組が検知される。符号r3で示される行には、プロパティの項目名として「dim:C1」、プロパティの項目値として「m:m3」の組が検知される。
Then, the context analysis unit 112 lexically analyzes "
そして、コンテキスト解析部112は、プロパティの項目名およびプロパティの項目値の組を出現順に一時領域に保持する。プロパティの項目値についての出現位置は、当該プロパティの項目値と同一の組のプロパティの項目名と同じとする。ここでは、コンテキスト解析部112は、符号r1で示される行で検知した組の出現順に応じて、1番目の一時領域に「dim:B1」および「m:m2」を保持する。コンテキスト解析部112は、符号r2で示される行で検知した組の出現順に応じて、2番目の一時領域に「dim:A1」および「m:m1」を保持する。コンテキスト解析部112は、符号r3で示される行で検知した組の出現順に応じて、3番目の一時領域に「dim:C1」および「m:m3」を保持する。 Then, the context analysis unit 112 holds the set of the item name of the property and the item value of the property in the temporary area in the order of appearance. The appearance position of the item value of the property is the same as the item name of the same set of property as the item value of the property. Here, the context analysis unit 112 holds "dim: B1" and "m: m2" in the first temporary area according to the order of appearance of the pairs detected by the line indicated by the symbol r1. The context analysis unit 112 holds "dim: A1" and "m: m1" in the second temporary area according to the order of appearance of the pairs detected by the line indicated by the symbol r2. The context analysis unit 112 holds "dim: C1" and "m: m3" in the third temporary area according to the order of appearance of the pairs detected by the line indicated by the symbol r3.
そして、インデックス情報生成部113は、「Context1」について、一時領域に保持された組に含まれるプロパティの項目名に対して、当該プロパティの項目名の出現位置にビットを立てる。インデックス情報生成部113は、「Context1」について、一時領域に保持された組に含まれるプロパティの項目値に対して、当該プロパティの項目値の出現位置にビットを立てる。ここでは、インデックス情報生成部113は、プロパティの項目名「dim:B1」に対して、1番目の出現位置にビット「1」を設定する(e1’)。インデックス情報生成部113は、プロパティの項目値「m:m2」に対して、1番目の出現位置にビット「1」を設定する(e2’)。インデックス情報生成部113は、プロパティの項目名「dim:A1」に対して、2番目の出現位置にビット「1」を設定する(e3’)。インデックス情報生成部113は、プロパティの項目値「m:m1」に対して、2番目の出現位置にビット「1」を設定する(e4’)。インデックス情報生成部113は、プロパティの項目名「dim:C1」に対して、3番目の出現位置にビット「1」を設定する(e5’)。インデックス情報生成部113は、プロパティの項目値「m:m3」に対して、3番目の出現位置にビット「1」を設定する(e6’)。 Then, the index information generation unit 113 sets a bit at the appearance position of the item name of the property with respect to the item name of the property included in the set held in the temporary area for "Conext1". The index information generation unit 113 sets a bit at the appearance position of the item value of the property with respect to the item value of the property included in the set held in the temporary area for "Conext1". Here, the index information generation unit 113 sets the bit “1” at the first occurrence position with respect to the property item name “dim: B1” (e1 ′). The index information generation unit 113 sets the bit “1” at the first occurrence position with respect to the property item value “m: m2” (e2 ′). The index information generation unit 113 sets the bit “1” at the second occurrence position with respect to the property item name “dim: A1” (e3 ′). The index information generation unit 113 sets the bit “1” at the second occurrence position with respect to the property item value “m: m1” (e4 ′). The index information generation unit 113 sets the bit “1” at the third occurrence position with respect to the property item name “dim: C1” (e5 ′). The index information generation unit 113 sets the bit “1” at the third occurrence position with respect to the property item value “m: m3” (e6 ′).
[データ抽出処理の一例]
ここで、データ抽出処理の一例を、図18を参照して説明する。図18は、実施例2に係るデータ抽出処理の一例を示す図である。なお、図18で示すデータ抽出処理は、複数のプロパティのいずれも持つXBRLデータを抽出する場合である。ここでは、変換抽出条件は、「(dim:A1=m:m1) and (dim:B1=m:m2) and (dim:C1=m:m3)」であるとする。[Example of data extraction process]
Here, an example of the data extraction process will be described with reference to FIG. FIG. 18 is a diagram showing an example of the data extraction process according to the second embodiment. The data extraction process shown in FIG. 18 is a case of extracting XBRL data having any of a plurality of properties. Here, it is assumed that the conversion extraction condition is "(dim: A1 = m: m1) and (dim: B1 = m: m2) and (dim: C1 = m: m3)".
データ抽出部212は、変換抽出条件から1個の抽出条件を選択する。ここでは、抽出条件として「dim:A1=m:m1」が選択される。 The data extraction unit 212 selects one extraction condition from the conversion extraction conditions. Here, "dim: A1 = m: m1" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:A1」に対応するビットマップを抽出する(s40)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目値「m:m1」に対応するビットマップを抽出する(s41)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:A1」に対応するビットマップと「m:m1」に対応するビットマップとをAND演算する(s42)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: A1” and the bitmap corresponding to “m: m1” (s42).
データ抽出部212は、変換抽出条件から次の1個の抽出条件を選択する。ここでは、抽出条件として「dim:B1=m:m2」が選択される。 The data extraction unit 212 selects the next one extraction condition from the conversion extraction conditions. Here, "dim: B1 = m: m2" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:B1」に対応するビットマップを抽出する(s43)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目値「m:m2」に対応するビットマップを抽出する(s44)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:B1」に対応するビットマップと「m:m2」に対応するビットマップとをAND演算する(s45)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: B1” and the bitmap corresponding to “m: m2” (s45).
データ抽出部212は、変換抽出条件から次の1個の抽出条件を選択する。ここでは、抽出条件として「dim:C1=m:m3」が選択される。 The data extraction unit 212 selects the next one extraction condition from the conversion extraction conditions. Here, "dim: C1 = m: m3" is selected as the extraction condition.
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目名に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目名「dim:C1」に対応するビットマップを抽出する(s46)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item name of the property included in the selected extraction condition from the
データ抽出部212は、選択した抽出条件に含まれるプロパティの項目値に対応するインデックス(ビットマップ)をインデックス情報122から抽出する。ここでは、データ抽出部212は、プロパティの項目値「m:m3」に対応するビットマップを抽出する(s47)。
The data extraction unit 212 extracts an index (bitmap) corresponding to the item value of the property included in the selected extraction condition from the
データ抽出部212は、プロパティの項目名に対応するビットマップと、プロパティの項目値に対応するビットマップとをAND演算する。ここでは、データ抽出部212は、「dim:C1」に対応するビットマップと「m:m3」に対応するビットマップとをAND演算する(s48)。 The data extraction unit 212 performs an AND operation on the bitmap corresponding to the item name of the property and the bitmap corresponding to the item value of the property. Here, the data extraction unit 212 performs an AND operation on the bitmap corresponding to “dim: C1” and the bitmap corresponding to “m: m3” (s48).
抽出条件が複数個である場合であるので、データ抽出部212は、複数の抽出条件に対するそれぞれのAND結果をOR演算する。ここでは、データ抽出部212は、「dim:A1」のプロパティのAND結果、「dim:B1」のプロパティのAND結果および「dim:C1」のプロパティのAND結果をOR演算する(s49)。 Since there are a plurality of extraction conditions, the data extraction unit 212 performs an OR operation on each AND result for the plurality of extraction conditions. Here, the data extraction unit 212 performs an OR operation on the AND result of the property of "dim: A1", the AND result of the property of "dim: B1", and the AND result of the property of "dim: C1" (s49).
抽出条件を結合する論理識別子がANDの場合であるので、データ抽出部212は、以下の処理を行う。すなわち、データ抽出部212は、OR結果のビットマップについて、各コンテキストに対応するビット区間に「1」が抽出条件の数分設定されたビット区間を検出し、検出したビット区間に対応するコンテキストを検出する。ここでは、抽出条件の数は3であるので、抽出条件の数分「1」が設定されたビット区間であるコンテキスト1が検出される(s50)。
Since the logical identifier that combines the extraction conditions is AND, the data extraction unit 212 performs the following processing. That is, the data extraction unit 212 detects a bit interval in which "1" is set for the number of extraction conditions in the bit interval corresponding to each context in the OR result bitmap, and determines the context corresponding to the detected bit interval. To detect. Here, since the number of extraction conditions is 3,
この後、データ抽出部212は、コンテキスト位置情報123を参照し、検出したコンテキストに関連付けられるXBRLデータを絞り込む。
After that, the data extraction unit 212 refers to the
[実施例2の効果]
上記実施例2によれば、検証装置200は、出現位置に関するインデックス情報122Aを参照し、変換抽出条件に含まれる項目および値に対応するそれぞれのインデックスを取得する。検証装置200は、取得した項目に対応するインデックスと取得した値に対応するインデックスとの論理演算により、変換抽出条件に対応する項目および値の検証を行う。インデックス情報122Aは、入力データ300に含まれる項目および値の組について、同一の組の値を項目と同じ出現位置とするインデックス情報である。かかる構成によれば、検証装置200は、項目および値それぞれについての出現位置に関するインデックス情報122Aを用いて項目および値による複数の条件でデータを抽出することが可能となる。[Effect of Example 2]
According to the second embodiment, the
また、上記実施例2によれば、インデックス生成装置100は、入力データ300に含まれる項目および値の組について、同一の組の値を項目と同じ出現位置とする、出現位置に関するインデックス情報122Aを生成する。かかる構成によれば、インデックス生成装置100は、インデックス情報122Aを生成する際に、項目および値の組について、同一の組の値を項目と同じ出現位置とすることで、インデックスのサイズ爆発をさらに抑制することができる。
Further, according to the second embodiment, the
[その他]
なお、実施例では、インデックス生成処理をインデックス生成装置100により実現し、検証処理を検証装置200により実現すると説明した。しかしながら、1つの情報処理装置が、インデックス生成処理および検証処理を実現しても良い。[Other]
In the embodiment, it has been described that the index generation process is realized by the
また、図示した装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、インデックス情報生成部113を、プロパティ名およびプロパティ値をインデックス情報122に設定する設定部と、プロパティ名およびプロパティ値の出現位置に応じてインデックス情報122にビットを立てる生成部とに分離しても良い。また、データ抽出部212および抽出結果出力部213を併合しても良い。また、記憶部120をインデックス生成装置100の外部装置としてネットワーク経由で接続するようにしても良い。記憶部220を検証装置200の外部装置としてネットワーク経由で接続するようにしても良い。
Further, each component of the illustrated device does not necessarily have to be physically configured as shown in the figure. That is, the specific mode of distribution / integration of the device is not limited to the one shown in the figure, and all or part of the device is functionally or physically distributed / integrated in an arbitrary unit according to various loads and usage conditions. Can be configured. For example, the index information generation unit 113 is separated into a setting unit that sets the property name and the property value in the
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図1に示したインデックス生成装置100と同様の機能を実現するインデックス生成プログラムおよび図9に示した検証装置200と同様の機能を実現する検証プログラムを実行するコンピュータの一例を説明する。図19は、インデックス生成プログラムおよび検証プログラムを実行するコンピュータの一例を示す図である。
Further, the various processes described in the above embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. Therefore, in the following, an example of a computer that executes an index generation program that realizes the same function as the
図19に示すように、コンピュータ500は、各種演算処理を実行するCPU503と、ユーザからのデータの入力を受け付ける入力装置515と、表示装置509を制御する表示制御部507とを有する。また、コンピュータ500は、記憶媒体からプログラムなどを読取るドライブ装置513と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部517とを有する。また、コンピュータ500は、各種情報を一時記憶するメモリ501と、HDD505を有する。そして、メモリ501、CPU503、HDD505、表示制御部507、ドライブ装置513、入力装置515、通信制御部517は、バス519で接続されている。
As shown in FIG. 19, the
ドライブ装置513は、例えばリムーバブルディスク511用の装置である。HDD205は、検証プログラム505a、インデックス生成プログラム505bおよび処理関連情報505cを記憶する。
The
CPU503は、検証プログラム505aを読み出して、メモリ501に展開し、プロセスとして実行する。かかるプロセスは、検証装置200の各機能部に対応する。CPU503は、インデックス生成プログラム505bを読み出して、メモリ501に展開し、プロセスとして実行する。かかるプロセスは、インデックス生成装置100の各機能部に対応する。処理関連情報505cは、プロパティ定義情報121、インデックス情報122およびコンテキスト位置情報123に対応する。そして、例えばリムーバブルディスク511が、検証プログラム505a、インデックス生成プログラム505bなどの各情報を記憶する。
The
なお、検証プログラム505aおよびインデックス生成プログラム505bについては、必ずしも最初からHDD505に記憶させておかなくても良い。例えば、コンピュータ500に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカード等の「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ500がこれらから検証プログラム505aおよびインデックス生成プログラム505bを読み出して実行するようにしても良い。
The
100 インデックス生成装置
111 コンテキスト選択部
112 コンテキスト解析部
113 インデックス情報生成部
121 プロパティ定義情報
122 インデックス情報
123 コンテキスト位置情報
200 検証装置
210 制御部
211 抽出条件変換部
212 データ抽出部
213 抽出結果出力部
220 記憶部
300 入力データ
310 検証ルール100 Index generator 111 Context selection unit 112 Context analysis unit 113 Index
Claims (8)
入力された検証条件を、項目および値により規定される変換検証条件に変換し、
対象データより生成された、前記対象データに含まれる項目および値それぞれについての出現位置に関するインデックス情報を参照し、前記変換検証条件に含まれる項目および値に対応するそれぞれのインデックスを取得し、取得した前記値に対応するインデックスを1ビット分左シフトし、前記項目に対応するインデックスと前記値に対応するシフトした結果のインデックスとの論理演算により、前記変換検証条件に対応する項目および値の検証を行う
処理を実行させる検証プログラム。 On the computer
Converts the entered verification conditions into conversion verification conditions specified by items and values,
The index information regarding the appearance position for each of the items and values included in the target data generated from the target data is referred to, and the respective indexes corresponding to the items and values included in the conversion verification condition are acquired and acquired. The index corresponding to the value is shifted to the left by one bit, and the item and value corresponding to the conversion verification condition are verified by a logical operation between the index corresponding to the item and the index as a result of the shift corresponding to the value. A verification program that executes the processing to be performed.
処理を実行させる請求項1に記載の検証プログラム。 The process of performing the verification is the result of shifting corresponding to the value included in the same set as the index corresponding to the item included in each set when there are a plurality of sets of items and values in the conversion verification condition. The verification program according to claim 1, wherein an AND operation is performed on the index, an OR operation is performed on the AND operation result of each set, and a process of verifying an item and a value corresponding to the conversion verification condition is executed using the OR operation result. ..
前記検証を行う処理は、前記インデックス情報を参照し、前記変換検証条件に含まれる項目および値に対応するそれぞれのインデックスを取得し、取得した前記項目に対応するインデックスと取得した前記値に対応するインデックスとの論理演算により、前記変換検証条件に対応する項目および値の検証を行う
処理を実行させる請求項1に記載の検証プログラム。 The index information is index information relating to an appearance position in which the same set of values is set to the same appearance position as the item for the item and value set included in the target data.
The process of performing the verification refers to the index information, acquires each index corresponding to the item and the value included in the conversion verification condition, and corresponds to the index corresponding to the acquired item and the acquired value. The verification program according to claim 1, wherein a process of verifying an item and a value corresponding to the conversion verification condition is executed by a logical operation with an index.
対象データより生成された、前記対象データに含まれる項目および値それぞれについての出現位置に関するインデックス情報を参照し、前記変換検証条件に含まれる項目および値に対応するそれぞれのインデックスを取得し、取得した前記値に対応するインデックスを1ビット分左シフトし、前記項目に対応するインデックスと前記値に対応するシフトした結果のインデックスとの論理演算により、前記変換検証条件に対応する項目および値の検証を行う検証部と、
を有することを特徴とする検証装置。 A conversion unit that converts the input verification conditions into conversion verification conditions specified by items and values,
With reference to the index information regarding the appearance position for each of the items and values included in the target data generated from the target data, each index corresponding to the items and values included in the conversion verification condition was acquired and acquired. The index corresponding to the value is shifted to the left by one bit, and the item and value corresponding to the conversion verification condition are verified by a logical operation between the index corresponding to the item and the index as a result of the shift corresponding to the value. Verification department to perform and
A verification device characterized by having.
入力された検証条件を、項目および値により規定される変換検証条件に変換し、
対象データより生成された、前記対象データに含まれる項目および値それぞれについての出現位置に関するインデックス情報を参照し、前記変換検証条件に含まれる項目および値に対応するそれぞれのインデックスを取得し、取得した前記値に対応するインデックスを1ビット分左シフトし、前記項目に対応するインデックスと前記値に対応するシフトした結果のインデックスとの論理演算により、前記変換検証条件に対応する項目および値の検証を行う
各処理を実行することを特徴とする検証方法。 The computer
Converts the entered verification conditions into conversion verification conditions specified by items and values,
With reference to the index information regarding the appearance position for each of the items and values included in the target data generated from the target data, each index corresponding to the items and values included in the conversion verification condition was acquired and acquired. The index corresponding to the value is shifted to the left by one bit, and the item and value corresponding to the conversion verification condition are verified by a logical operation between the index corresponding to the item and the index as a result of the shift corresponding to the value. A verification method characterized by executing each process to be performed.
項目および値の組み合わせにより記述されたデータに含まれる項目および値それぞれについて、前記項目および値それぞれに対応するインデックスであって前記データ内での出現位置に関するインデックスに対して、前記項目および値の組における同一の組の値を項目と同じ出現位置として前記データでの出現位置にビットを立てることにより、前記インデックスの束の情報である、出現位置に関するインデックス情報を生成する
処理を実行させるインデックス生成プログラム。 On the computer
For each item and items and values contained in the data described by a combination of values, the index relating to the occurrence position in the items and values in the data an index corresponding to each of the items and value pairs An index generation program that executes a process of generating index information related to the appearance position, which is information of a bundle of the indexes, by setting a bit at the appearance position in the data with the same set of values in the above as the same appearance position as the item. ..
を有することを特徴とするインデックス生成装置。 For each item and items and values contained in the data described by a combination of values, the index relating to the occurrence position in the items and values in the data an index corresponding to each of the items and value pairs It is characterized by having a generation unit that generates index information regarding the appearance position, which is information of a bundle of the indexes, by setting a bit at the appearance position in the data with the same set of values in the above as the same appearance position as the item. Index generator.
項目および値の組み合わせにより記述されたデータに含まれる項目および値それぞれについて、前記項目および値それぞれに対応するインデックスであって前記データ内での出現位置に関するインデックスに対して、前記項目および値の組における同一の組の値を項目と同じ出現位置として前記データでの出現位置にビットを立てることにより、前記インデックスの束の情報である、出現位置に関するインデックス情報を生成する
各処理を実行することを特徴とするインデックス生成方法。 The computer
For each item and items and values contained in the data described by a combination of values, the index relating to the occurrence position in the items and values in the data an index corresponding to each of the items and value pairs By setting a bit at the appearance position in the data with the same set of values in the above as the same appearance position as the item, each process of generating index information regarding the appearance position, which is the information of the bundle of the indexes, is executed. Characteristic index generation method.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/085228 WO2018096686A1 (en) | 2016-11-28 | 2016-11-28 | Verification program, verification device, verification method, index generation program, index generation device, and index generation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018096686A1 JPWO2018096686A1 (en) | 2019-08-08 |
JP6900956B2 true JP6900956B2 (en) | 2021-07-14 |
Family
ID=62194963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018552379A Active JP6900956B2 (en) | 2016-11-28 | 2016-11-28 | Verification program, verification device, verification method, index generation program, index generation device and index generation method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6900956B2 (en) |
WO (1) | WO2018096686A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3608800A4 (en) * | 2017-04-06 | 2020-04-01 | Fujitsu Limited | Index generation program, index generation device, index generation method, search program, search device, and search method |
JP7140284B2 (en) * | 2019-05-31 | 2022-09-21 | 富士通株式会社 | Verification method, information processing device and verification program |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4860416B2 (en) * | 2006-09-29 | 2012-01-25 | 株式会社ジャストシステム | Document search apparatus, document search method, and document search program |
JP2009048351A (en) * | 2007-08-17 | 2009-03-05 | Nippon Telegr & Teleph Corp <Ntt> | Information retrieval device, information retrieval method and information retrieval program |
US9454597B2 (en) * | 2007-11-15 | 2016-09-27 | Nec Corporation | Document management and retrieval system and document management and retrieval method |
WO2009066501A1 (en) * | 2007-11-19 | 2009-05-28 | Nippon Telegraph And Telephone Corporation | Information search method, device, and program, and computer-readable recording medium |
JP2014089646A (en) * | 2012-10-31 | 2014-05-15 | Hitachi Solutions Ltd | Electronic data processor and electronic data processing method |
-
2016
- 2016-11-28 JP JP2018552379A patent/JP6900956B2/en active Active
- 2016-11-28 WO PCT/JP2016/085228 patent/WO2018096686A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2018096686A1 (en) | 2018-05-31 |
JPWO2018096686A1 (en) | 2019-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10592672B2 (en) | Testing insecure computing environments using random data sets generated from characterizations of real data sets | |
US10614312B2 (en) | Method and apparatus for determining signature actor and identifying video based on probability of appearance of signature actor | |
JP6900956B2 (en) | Verification program, verification device, verification method, index generation program, index generation device and index generation method | |
CN104077527B (en) | The generation method and device and method for detecting virus and device of Viral diagnosis machine | |
US20170345102A1 (en) | Computer readable recording medium, extraction apparatus, and extraction method | |
Dharmawan et al. | Book recommendation using Neo4j graph database in BibTeX book metadata | |
KR102367859B1 (en) | Appratus and method for classifying data using feature vector | |
JP6331756B2 (en) | Test case generation program, test case generation method, and test case generation apparatus | |
JP2019204246A (en) | Learning data creation method and learning data creation device | |
JPWO2016063502A1 (en) | Knowledge management device, knowledge management method, and program recording medium | |
JP6551131B2 (en) | Index generation program, index generation device, index generation method, search program, search device and search method | |
JP6079780B2 (en) | Program, mapping apparatus and mapping method | |
US20220035791A1 (en) | Verification method, information processing apparatus, and non-transitory computer-readable storage medium for storing verification program | |
JP6344185B2 (en) | Evaluation result output program, evaluation result output method, and information processing apparatus | |
Brunner et al. | Toward a human-readable state machine extraction | |
JP6790905B2 (en) | Detection method, detection device and detection program | |
US11113314B2 (en) | Similarity calculating device and method, and recording medium | |
RU2794162C1 (en) | Verification method, information processing device and long-term computer readable storage medium for storing verification program | |
JP4558369B2 (en) | Information extraction system, information extraction method, and computer program | |
JPWO2017199309A1 (en) | Evaluation program, evaluation apparatus, and evaluation method | |
Bano et al. | Database-Less Extraction of Event Logs from Redo Logs | |
JP2016042263A (en) | Document management apparatus, document management program, and document management method | |
JP6354501B2 (en) | Comparison program, comparison method, and information processing apparatus | |
JP6563549B1 (en) | Data trend analysis method, data trend analysis system, and narrowing and restoring device | |
JP6623040B2 (en) | Butt processing device, butt processing method and butt processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190328 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200602 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200730 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20201215 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210312 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20210312 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20210323 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20210330 |
|
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: 20210518 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210531 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6900956 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |