ホーム › System.Search › STRUCTURED_QUERY_RESOLVE_OPTION
STRUCTURED_QUERY_RESOLVE_OPTION
列挙型フラグメンバー 11
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| SQRO_DEFAULT | 0 | 0x0 | Windows 7 以降。 既定のフラグです。 |
| SQRO_DONT_RESOLVE_DATETIME | 1 | 0x1 | このフラグが設定されていない場合、pConditionTree 内の相対的な日付/時刻式は、pstReferenceTime が指す基準日時に対して解決された絶対的な日付/時刻の範囲に置き換えられます。たとえば、AQS クエリに相対的な日付/時刻式 "date:this month" が含まれ、基準日時が 9/19/2006 10:28:33 であった場合、解決後の条件ツリーには 9/1/2006 00:00:00 から 10/1/2006 00:00:00 まで (UTC タイム ゾーン) の日付/時刻範囲が含まれます。 |
| SQRO_ALWAYS_ONE_INTERVAL | 2 | 0x2 | このフラグが設定されていない場合、相対的な日付/時刻式の解決結果は複数の期間の OR になることがあります。たとえば、AQS クエリに "date:Monday" が含まれ、基準日時が 9/19/2006 10:28:33 (火曜日) であった場合、どの月曜日が参照されているのかが明確でないため、解決後の条件ツリーには 9/11/2006、9/18/2006、9/25/2006 の各月曜日に対応する 3 つの 24 時間範囲の OR が含まれます。このフラグが設定されている場合、結果は常に単一の日付/時刻範囲になります (この例では、9/18/2006 00:00:00 から 9/19/2006 00:00:00 までの日付/時刻範囲になります)。 |
| SQRO_DONT_SIMPLIFY_CONDITION_TREES | 4 | 0x4 | このフラグが設定されていない場合、結果の条件ツリーには可能なかぎりの単純化が適用されます。 |
| SQRO_DONT_MAP_RELATIONS | 8 | 0x8 | このフラグが true でない場合、複数のプロパティにマップされる仮想プロパティを持つリーフ ノードは、実際のプロパティを含むリーフ ノードの OR に置き換えられます。たとえば、AQS クエリ "to:Bill" では、System.StructuredQuery.Virtual.To という名前のプロパティが実際には System.Message.ToAddress と System.Message.ToName の 2 つのプロパティにマップされるリーフ ノードになることがあり、解決後の条件ツリーはこれら 2 つのプロパティで "Bill" を検索する OR を持つことになります。 |
| SQRO_DONT_RESOLVE_RANGES | 16 | 0x10 | 日付/時刻式や "20..40" のような式から生じる範囲は、まず punkVal メンバーが IInterval インターフェイスを実装する VT_UNKNOWN 値を持つリーフ ノードへ解決されます。このフラグが設定されていない場合、返される条件ツリーはさらに COP_GREATERTHANOREQUAL や COP_LESSTHAN といった単純な比較の AND へ解決されます。たとえば、AQS クエリ "date:this month" を 9/19/2006 10:28:33 に対して解決した場合、このフラグが設定されていなければ、結果の条件ツリーは System.ItemDate COP_GREATERTHANOREQUAL 9/1/2006 00:00:00 と System.ItemDate COP_LESSTHAN 10/1/2006 00:00:00 の AND になります。このフラグが設定されている場合、結果の条件ツリーは System.ItemDate を IInterval に関連付け、その IInterval::GetLimits メソッドが ILK_EXPLICIT_INCLUDED、9/1/2006 00:00:00、ILK_EXPLICIT_EXCLUDED、10/1/2006 00:00:00 を返すようになります。 |
| SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS | 32 | 0x20 | 制限のないキーワードとは、条件を完成させる値が関連付けられていないキーワードのことです。たとえば、次の AQS クエリでは "From" が示すプロパティが制限のないキーワードと見なされます: "Kind:email Subject:"My Resume" From:"。このフラグが設定されている場合、そのようなプロパティは、COP_IMPLICIT 演算、空の文字列値、および System.StructuredQueryType.Value のセマンティック型を持つリーフ ノードとして結果の条件ツリーに含まれます。設定されていない場合は完全に削除されます。 |
| SQRO_DONT_SPLIT_WORDS | 64 | 0x40 | このフラグが設定されている場合、空白で区切られていない単語のグループは 1 つのリーフ ノードにまとめて保持されます。このフラグが設定されていない場合、そのグループは複数のリーフ ノードに分割されます。結果のツリーが、追加の単語分割を行うコードによってさらに処理される場合、アプリケーションは条件ツリーの解決時にこのフラグを設定するとよいでしょう。 |
| SQRO_IGNORE_PHRASE_ORDER | 128 | 0x80 | AQS クエリ内のフレーズが二重引用符で囲まれている場合、そのフレーズ内の単語は (SQRO_DONT_SPLIT_WORDS が設定されているかどうかにかかわらず) 単一のリーフ ノードに入りますが、このフラグが設定されている場合は別々のリーフ ノードに入り、その順序は問われなくなります。複数の単語を含むリーフ ノードを正しく処理できないアプリケーションは、このフラグを設定できます。 |
| SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES | 256 | 0x100 | |
| SQRO_ADD_ROBUST_ITEM_NAME | 512 | 0x200 | ワード ブレーカーの既知の問題を回避し、必要に応じて PKEY_ItemNameDisplay に対する条件を追加します。 - SQRO_NULL_VALUE_TYPE_FOR_PLAIN_VALUESWindows 7 以降。 下位互換性をサポートします。このフラグが設定されていない場合、クエリ エンジンは、名前のないエンティティである解決済みのリーフに値の型を生成します。値の型は情報を追加しないため、このフラグを設定することが推奨されます。 |
公式ドキュメント
データを条件ツリーへ解決する際のオプションです。
解説(Remarks)
STRUCTURED_QUERY_RESOLVE_OPTION 型は、StructuredQuery.h で次のように定義されています。
typedef int STRUCTURED_QUERY_RESOLVE_OPTION;
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum STRUCTURED_QUERY_RESOLVE_OPTION : int {
SQRO_DEFAULT = 0,
SQRO_DONT_RESOLVE_DATETIME = 1,
SQRO_ALWAYS_ONE_INTERVAL = 2,
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 4,
SQRO_DONT_MAP_RELATIONS = 8,
SQRO_DONT_RESOLVE_RANGES = 16,
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 32,
SQRO_DONT_SPLIT_WORDS = 64,
SQRO_IGNORE_PHRASE_ORDER = 128,
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 256,
SQRO_ADD_ROBUST_ITEM_NAME = 512
} STRUCTURED_QUERY_RESOLVE_OPTION;[Flags]
public enum STRUCTURED_QUERY_RESOLVE_OPTION : int
{
SQRO_DEFAULT = 0,
SQRO_DONT_RESOLVE_DATETIME = 1,
SQRO_ALWAYS_ONE_INTERVAL = 2,
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 4,
SQRO_DONT_MAP_RELATIONS = 8,
SQRO_DONT_RESOLVE_RANGES = 16,
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 32,
SQRO_DONT_SPLIT_WORDS = 64,
SQRO_IGNORE_PHRASE_ORDER = 128,
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 256,
SQRO_ADD_ROBUST_ITEM_NAME = 512,
}<Flags>
Public Enum STRUCTURED_QUERY_RESOLVE_OPTION As Integer
SQRO_DEFAULT = 0
SQRO_DONT_RESOLVE_DATETIME = 1
SQRO_ALWAYS_ONE_INTERVAL = 2
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 4
SQRO_DONT_MAP_RELATIONS = 8
SQRO_DONT_RESOLVE_RANGES = 16
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 32
SQRO_DONT_SPLIT_WORDS = 64
SQRO_IGNORE_PHRASE_ORDER = 128
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 256
SQRO_ADD_ROBUST_ITEM_NAME = 512
End Enumimport enum
class STRUCTURED_QUERY_RESOLVE_OPTION(enum.IntFlag):
SQRO_DEFAULT = 0
SQRO_DONT_RESOLVE_DATETIME = 1
SQRO_ALWAYS_ONE_INTERVAL = 2
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 4
SQRO_DONT_MAP_RELATIONS = 8
SQRO_DONT_RESOLVE_RANGES = 16
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 32
SQRO_DONT_SPLIT_WORDS = 64
SQRO_IGNORE_PHRASE_ORDER = 128
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 256
SQRO_ADD_ROBUST_ITEM_NAME = 512// STRUCTURED_QUERY_RESOLVE_OPTION (flags)
pub const SQRO_DEFAULT: i32 = 0;
pub const SQRO_DONT_RESOLVE_DATETIME: i32 = 1;
pub const SQRO_ALWAYS_ONE_INTERVAL: i32 = 2;
pub const SQRO_DONT_SIMPLIFY_CONDITION_TREES: i32 = 4;
pub const SQRO_DONT_MAP_RELATIONS: i32 = 8;
pub const SQRO_DONT_RESOLVE_RANGES: i32 = 16;
pub const SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS: i32 = 32;
pub const SQRO_DONT_SPLIT_WORDS: i32 = 64;
pub const SQRO_IGNORE_PHRASE_ORDER: i32 = 128;
pub const SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES: i32 = 256;
pub const SQRO_ADD_ROBUST_ITEM_NAME: i32 = 512;// STRUCTURED_QUERY_RESOLVE_OPTION
const (
SQRO_DEFAULT int32 = 0
SQRO_DONT_RESOLVE_DATETIME int32 = 1
SQRO_ALWAYS_ONE_INTERVAL int32 = 2
SQRO_DONT_SIMPLIFY_CONDITION_TREES int32 = 4
SQRO_DONT_MAP_RELATIONS int32 = 8
SQRO_DONT_RESOLVE_RANGES int32 = 16
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS int32 = 32
SQRO_DONT_SPLIT_WORDS int32 = 64
SQRO_IGNORE_PHRASE_ORDER int32 = 128
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES int32 = 256
SQRO_ADD_ROBUST_ITEM_NAME int32 = 512
)const
SQRO_DEFAULT = 0;
SQRO_DONT_RESOLVE_DATETIME = 1;
SQRO_ALWAYS_ONE_INTERVAL = 2;
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 4;
SQRO_DONT_MAP_RELATIONS = 8;
SQRO_DONT_RESOLVE_RANGES = 16;
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 32;
SQRO_DONT_SPLIT_WORDS = 64;
SQRO_IGNORE_PHRASE_ORDER = 128;
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 256;
SQRO_ADD_ROBUST_ITEM_NAME = 512;// STRUCTURED_QUERY_RESOLVE_OPTION
pub const SQRO_DEFAULT: i32 = 0;
pub const SQRO_DONT_RESOLVE_DATETIME: i32 = 1;
pub const SQRO_ALWAYS_ONE_INTERVAL: i32 = 2;
pub const SQRO_DONT_SIMPLIFY_CONDITION_TREES: i32 = 4;
pub const SQRO_DONT_MAP_RELATIONS: i32 = 8;
pub const SQRO_DONT_RESOLVE_RANGES: i32 = 16;
pub const SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS: i32 = 32;
pub const SQRO_DONT_SPLIT_WORDS: i32 = 64;
pub const SQRO_IGNORE_PHRASE_ORDER: i32 = 128;
pub const SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES: i32 = 256;
pub const SQRO_ADD_ROBUST_ITEM_NAME: i32 = 512;const
SQRO_DEFAULT* = 0
SQRO_DONT_RESOLVE_DATETIME* = 1
SQRO_ALWAYS_ONE_INTERVAL* = 2
SQRO_DONT_SIMPLIFY_CONDITION_TREES* = 4
SQRO_DONT_MAP_RELATIONS* = 8
SQRO_DONT_RESOLVE_RANGES* = 16
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS* = 32
SQRO_DONT_SPLIT_WORDS* = 64
SQRO_IGNORE_PHRASE_ORDER* = 128
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES* = 256
SQRO_ADD_ROBUST_ITEM_NAME* = 512enum STRUCTURED_QUERY_RESOLVE_OPTION : int {
SQRO_DEFAULT = 0,
SQRO_DONT_RESOLVE_DATETIME = 1,
SQRO_ALWAYS_ONE_INTERVAL = 2,
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 4,
SQRO_DONT_MAP_RELATIONS = 8,
SQRO_DONT_RESOLVE_RANGES = 16,
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 32,
SQRO_DONT_SPLIT_WORDS = 64,
SQRO_IGNORE_PHRASE_ORDER = 128,
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 256,
SQRO_ADD_ROBUST_ITEM_NAME = 512,
}#define global SQRO_DEFAULT 0x0
#define global SQRO_DONT_RESOLVE_DATETIME 0x1
#define global SQRO_ALWAYS_ONE_INTERVAL 0x2
#define global SQRO_DONT_SIMPLIFY_CONDITION_TREES 0x4
#define global SQRO_DONT_MAP_RELATIONS 0x8
#define global SQRO_DONT_RESOLVE_RANGES 0x10
#define global SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS 0x20
#define global SQRO_DONT_SPLIT_WORDS 0x40
#define global SQRO_IGNORE_PHRASE_ORDER 0x80
#define global SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES 0x100
#define global SQRO_ADD_ROBUST_ITEM_NAME 0x200
; ※フラグ列挙型。ビットORで組み合わせ可(例: FOO|BAR)。