検索フィルタ

本章ã§ã¯ã€æ¤œç´¢ãƒ•ィルタãŠã‚ˆã³æ¤œç´¢ã®ä»•組ã¿ã‚’説明ã—ã¦ã„ã¾ã™ã€‚

検索フィルタ

検索範囲をé™å®šã™ã‚‹ãŸã‚ã«ã€ [標準検索]フィールドã«ç›´æŽ¥æ¤œç´¢ãƒ•ィルタを指定ã§ãã¾ã™ã€‚検索ã«ç­‰å·è¨˜å·(=)ãŒå«ã¾ã‚Œã‚‹å ´åˆã¯ã€[標準検索]ã§ã¯å€¤ãŒæ¤œç´¢ãƒ•ィルタã§ã‚ã‚‹ã‚‚ã®ã¨æƒ³å®šã•れã€ã“ã®ãƒ•ィルタãŒç›´æŽ¥ä½¿ç”¨ã•ã‚Œã¦æ¤œç´¢ãŒå®Ÿè¡Œã•れã¾ã™ã€‚

検索フィルタã§ã¯ã€[標準検索]ã®ãŸã‚ã«æˆ»ã•ã‚Œã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’é¸æŠžã™ã‚‹ã®ã«ã€å±žæ€§ã®å€¤ãŒä½¿ç”¨ã•れã¾ã™ã€‚例ãˆã°ã€æ¬¡ã®æ¤œç´¢ãƒ•ィルタã§ã¯ã€Babs Jensenã«ç­‰ã—ã„一般åã®æ¤œç´¢ãŒæŒ‡å®šã•れã¾ã™ã€‚

æ¤œç´¢ãƒ•ã‚£ãƒ«ã‚¿ã®æ§‹æ–‡

検索フィルタã®åŸºæœ¬æ§‹æ–‡:

例:

上記ã®ä¾‹ã§ã¯ã€employeenumberã¯å±žæ€§ã€>= ã¯æ¼”ç®—å­ã€100ã¯å€¤ã§ã™ã€‚

ç•°ãªã£ãŸå±žæ€§ã®çµ„åˆã›ã‚’使用ã™ã‚‹ãƒ•ィルタも定義ã§ãã¾ã™ã€‚

フィルタã«ãŠã‘る属性ã®ä½¿ç”¨

ã‚¨ãƒ³ãƒˆãƒªã®æ¤œç´¢ã®éš›ã«ã€ãã®ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã¨é–¢ä¿‚ã™ã‚‹å±žæ€§ã‚’指定ã§ãã¾ã™ã€‚例ãˆã°ã€ãƒ¦ãƒ¼ã‚¶ã«é–¢ã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’検索ã™ã‚‹å ´åˆã€ç‰¹å®šã®ä¸€èˆ¬åã‚’æŒã¤ãƒ¦ãƒ¼ã‚¶ã®æ¤œç´¢ã«cn属性を使用ã§ãã¾ã™ã€‚

ユーザã«é–¢ã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªã®ä¾‹ã¨ã—ã¦æ¬¡ã®ã‚‚ã®ãŒå«ã¾ã‚Œã‚‹ã“ã¨ãŒã‚りã¾ã™ã€‚

エントリã«é–¢ä¿‚ã™ã‚‹å±žæ€§ã®ãƒªã‚¹ãƒˆã«ã¤ã„ã¦ã¯ã€ä»˜éŒ²A「エントリã¨å±žæ€§ã®ãƒ•ィールドã€ã‚’ã”覧ãã ã•ã„。 検索フィルタã«ãŠã„ã¦å†…部属性åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。

フィルタã«ãŠã‘る演算å­ã®ä½¿ç”¨

演算å­ã§ä»¥ä¸‹ã®ã‚¿ã‚¤ãƒ—ã®æ¤œç´¢ã‚’定義ã—ã¾ã™ã€‚

検索タイプ æ¼”ç®—å­ èª¬æ˜Ž
ç­‰å· = 指定値ã«ä¸€è‡´ã™ã‚‹å±žæ€§ã‚’å«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚例:

    cn=Bob Johnson

副文字列 =<文字列>*<文字列> 指定副文字をæŒã¤ 列属性をå«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚例:

    cn=Bob*

    cn=*Johnson

    cn=*John*

    cn=B*John

大ãªã‚Šã¾ãŸã¯ç­‰ä¾¡ >= 指定値より大ãã„ã‹ã€ç­‰ã—ã„属性をå«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚例:

    employeenumber >= 100

å°ãªã‚Šã¾ãŸã¯ç­‰ä¾¡ <= 指定値よりå°ã•ã„ã‹ã€ç­‰ã—ã„属性をå«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚例:

    employeenumber <= 100

存在 =* 指定属性をå«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚例:

    cn=*

    telephonenumber=*

    manager=*

è¿‘ä¼¼ ~= 指定値ã«ã»ã¼ç­‰ã—ã„æŒ‡å®šå±žæ€§ã‚’å«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚例:

    cn~=surette

    l~=san fransico

ã“ã‚Œã‚‰ã®æ¤œç´¢ã‚¿ã‚¤ãƒ—ã®è©³ç´°ã¯ã€ã€Œæ¤œç´¢ã®ä»•組ã¿ã€ã‚’ã”覧ãã ã•ã„。

è¤‡æ•°ã®æ¤œç´¢ãƒ•ィルタã®ä½¿ç”¨

ブール演算å­ã‚’使用ã—ã¦ã€ç•°ãªã£ãŸæ¤œç´¢ãƒ•ィルタを組ã¿åˆã‚ã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚接頭辞表記ã«ä»¥ä¸‹ã®æ¼”ç®—å­ã‚’使用ã§ãã¾ã™ã€‚

ã“ã®å ´åˆã€ãƒ–ール_演算å­ã¯ã€ä»»æ„ã®ãƒ–ール演算å­ã§ã™ã€‚例:

上記ã®ä¾‹ã§ã¯ã€ãƒ•ィルタã®çµ„åˆã›ã«ã‚ˆã£ã¦ã€çµ„ç¹”å˜ä½ãŒMarketing (ou=Marketing)ã§ã€ä¸€èˆ¬åãŒRay (cn=Ray*)ã§å§‹ã¾ã‚‹ã‚¨ãƒ³ãƒˆãƒªãŒæ¤œç´¢ã•れã¾ã™ã€‚And(&)ã®ãƒ–ール演算å­ã¯ã€ã“ã®æ¼”ç®—å­ãŒæ¤œç´¢åŸºæº–を先行ã™ã‚‹æŽ¥é ­è¾žè¡¨è¨˜æ³•ã§ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚

ã•らã«ã€ä»¥ä¸‹ã®ã‚ˆã†ã«ã€è¤‡é›‘ãªå¼ã‚’å½¢æˆã™ã‚‹ã®ã«ãƒ–ール演算å­ã‚’入れå­ã«ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚

ブール演算å­

検索フィルタã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãるブール演算å­:

æ¼”ç®—å­ è¨˜å· èª¬æ˜Ž
And & æ–‡ãŒçœŸã§ã‚ã‚‹ãŸã‚ã«ã¯ã€ã™ã¹ã¦ã®æŒ‡å®šãƒ•ィルタãŒçœŸã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。例:

    (&(フィルタ1)(フィルタ2)(フィルタ3)...)

エントリãŒä¸€è‡´ã™ã‚‹ãŸã‚ã«ã¯ã€ãƒ•ィルタ1ã€ãƒ•ィルタ2ã€ãŠã‚ˆã³ãƒ•ィルタ3ãŒã™ã¹ã¦çœŸã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。

Or | æ–‡ãŒçœŸã§ã‚ã‚‹ãŸã‚ã«ã¯ã€æœ€ä½Žä¸€ã¤ã®æŒ‡å®šãƒ•ィルタãŒçœŸã§ãªã‘れã°ãªã‚Šã¾ã›ã‚“。例:

    (|(フィルタ1)(フィルタ2)(フィルタ3)...)

フィルタ1ã€ãƒ•ィルタ2ã€ã¾ãŸã¯ãƒ•ィルタ3ã®ä¸€ã¤ã§ã‚‚一致ã™ã‚‹ã¨ã€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚

Not ! æ–‡ãŒçœŸã§ã‚ã‚‹ãŸã‚ã«ã¯ã€æŒ‡å®šã•ã‚ŒãŸæ–‡ãŒçœŸã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。一ã¤ã®ãƒ•ィルタã®ã¿ãŒNot演算å­ã«ã‚ˆã£ã¦å½±éŸ¿ã•れるã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。例:

    (!(フィルタ))

フィルタã«ä¸€è‡´ã—ãªã„ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚

検索フィルタã®ä¾‹

マãƒãƒ¼ã‚¸ãƒ£å±žæ€§ã‚’å«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æ¤œç´¢ã•れã¾ã™ã€‚ã“れã¯å­˜åœ¨æ¤œç´¢ã¨ã‚‚呼ã°ã‚Œã¾ã™ã€‚

          manager=*

Ray Kultgenã®ä¸€èˆ¬åã‚’å«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æ¤œç´¢ã•れã¾ã™ã€‚ã“れã¯ç­‰å·æ¤œç´¢ã¨ã—ã¦ã‚‚呼ã°ã‚Œã¾ã™ã€‚

          cn=Ray Kultgen

Ray Kultgenã®ä¸€èˆ¬åã‚’å«ã¾ãªã„ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æˆ»ã•れã¾ã™ã€‚

          (!(cn=Ray Kultgen))

X.500ã®å‰¯æ–‡å­—列をæŒã¤[description]属性をå«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æˆ»ã•れã¾ã™ã€‚

          description=*X.500*

組織å˜ä½ãŒMarketingã§ã€[description]フィールドã«å‰¯æ–‡å­—列X.500ãŒå«ã¾ã‚Œãªã„ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æˆ»ã•れã¾ã™ã€‚

          (&(ou=Marketing)(!(description=*X.500*)))

組織å˜ä½ãŒMarketingã§ã€ãƒžãƒãƒ¼ã‚¸ãƒ£ãŒJulie Fulmerã¾ãŸã¯Cindy Zwaskaã§ã‚ã‚‹ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æˆ»ã•れã¾ã™ã€‚

          (&(ou=Marketing)(|(manager="cn=Julie
Fulmer,ou=Marketing,o=Airius,c=US")(manager="cn=Cindy
Zwaska,ou=Marketing,o=Airius,
c=US")))

ユーザを示ã•ãªã„ã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æˆ»ã•れã¾ã™ã€‚

          (!(objectclass=person))

ユーザ(person)を示ã•ãšã€ã—ã‹ã‚‚一般å(cn)ãŒãƒ—リンタ3bã«é¡žä¼¼ã—ãŸã‚¨ãƒ³ãƒˆãƒªãŒæ¬¡ã®ãƒ•ィルタã«ã‚ˆã£ã¦æˆ»ã•れã¾ã™ã€‚

          (&(!(objectclass=person))(cn~=printer3b))

検索ã®ä»•組ã¿

注:

Directory Serverインタフェースã¯ã€å®Ÿéš›ã€Directory Serverã‹ã‚‰ç‹¬ç«‹ã—ã¦å‹•作ã™ã‚‹ãƒ•ォームã¨CGIプログラムã®é›†ã¾ã‚Šã§ã™ã€‚ã“ã®ã‚¤ãƒ³ã‚¿ãƒ•ェースã¯ã€Directory Serverã«å¯¾ã—ã¦LDAPクライアントã¨ã—ã¦å‹•作ã™ã‚‹ã‚‚ã®ã§ã™ã€‚

以下ã«ã¯ã€Directory Serverを検索ã™ã‚‹éš›ã®ä»•組ã¿ãŒèª¬æ˜Žã•れã¦ã„ã¾ã™ã€‚

  1. フォームをé€ä¿¡ã™ã‚‹ã¨ã€Directory Serverã«æ¤œç´¢ãƒ•ィルタãŒé€ä¿¡ã•れã¾ã™ã€‚
  2. Directory Serverã§ã¯ã€æƒ…å ±ãŒãƒ­ãƒ¼ã‚«ãƒ« ディレクトリã«ã‚ã‚‹ã‹ã‚’確èªã™ã‚‹ãŸã‚ç€ä¿¡ã—ãŸè¦æ±‚ãŒãƒã‚§ãƒƒã‚¯ã•れã¾ã™ã€‚ãã®æƒ…å ±ãŒãƒ­ãƒ¼ã‚«ãƒ« ディレクトリã«ãªãã€[Referral]パラメータãŒã‚µãƒ¼ãƒãƒ¼ã«è¨­å®šã•れã¦ã„ã‚‹å ´åˆã¯ã€ãã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒè¦æ±‚ã®è¿½æ±‚を試ã¿ã‚‰ã‚Œã‚‹ä»–ã®Directory Serverã®URLãŒæˆ»ã•れã¾ã™ã€‚
  3. Directory Serverã«ã‚ˆã£ã¦ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª ツリーã‹ã‚‰ã‚¨ãƒ³ãƒˆãƒª リストãŒç”Ÿæˆã•れã¾ã™ã€‚ 検索基準ã«ä¸€è‡´ã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªãŒã‚ã‚‹ã‹ã©ã†ã‹å„候補エントリãŒãƒã‚§ãƒƒã‚¯ã•れã¾ã™ã€‚ä¸€è‡´ã‚¨ãƒ³ãƒˆãƒªãŒæ¤œå‡ºã•れるãŸã³ã«ã€ãれãŒDirectory Serverã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«æˆ»ã•れã¾ã™ã€‚Directory Serverã«ã‚ˆã£ã¦è©²å½“ã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªãŒã™ã¹ã¦ãƒã‚§ãƒƒã‚¯ã•れるã‹ã€ã¾ãŸã¯ä»¥ä¸‹ã®é™åº¦ã®ä¸€ã¤ã«é”ã™ã‚‹ã¾ã§ã€ã“ã®éŽç¨‹ãŒç¶™ç¶šã•れã¾ã™ã€‚

ディレクトリ管ç†è€…ãŒã“れらã®è¨­å®šã‚’æ§‹æˆã§ãã¾ã™ã€‚検索アルゴリズムã®è©³ç´°ã¯ã€ã€ŽNetscape Directory Server管ç†è€…用ガイドã€ã‚’ã”覧ãã ã•ã„。

以下ã«ã¯ã€è¿‘似検索ãŠã‚ˆã³å‰¯æ–‡å­—列検索ã®ä»•組ã¿ãŒèª¬æ˜Žã•れã¦ã„ã¾ã™ã€‚

è¿‘ä¼¼(類似)検索ã®ä»•組ã¿

近似検索ã§ã¯å…¥åЛ値ã«é¡žä¼¼ã—ãŸèªžãŒæ¤œç´¢ã•れã¾ã™ã€‚[拡張検索]インタフェースã§ã¯ã€è¿‘似検索ã¯sounds like (類似)検索タイプã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚

例ãˆã°ã€ã‚¨ãƒ³ãƒˆãƒªã«å±žæ€§å€¤cn=Robert E LeeãŒå«ã¾ã‚Œã‚‹ã¨ã—ã¾ã™ã€‚ 近似検索ã§ã¯ã€Robert Leeã€Robertã€ã¾ãŸã¯Leeを指定ã—ã¦ã“ã®ã‚¨ãƒ³ãƒˆãƒªã‚’検索ã§ãã¾ã™ã€‚åŒæ§˜ã«ã€ San Fransico (l~=San Fransicoã®ã‚¹ãƒšãƒ«é–“é•ã„ã«æ³¨æ„)ã«ã»ã¼ç­‰ã—ã„å ´æ‰€ã®æ¤œç´¢ã§ã¯ã€San Francisco (l=San Francisco)ã«å®Œå…¨ã«ä¸€è‡´ã™ã‚‹å ´æ‰€ã‚’å«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚

Directory Serverã§ã¯ã€ã‚¨ãƒ³ãƒˆãƒªã®å„値ãŒä¸€é€£ã®èªžã¨ã—ã¦å‡¦ç†ã•れã€å„語ã®è¡¨éŸ³ã‚³ãƒ¼ãƒ‰ãŒä½œæˆã•れã¾ã™ã€‚ã¾ãŸã€è¿‘似検索ã«å€¤ã‚’入力ã™ã‚‹ã¨ã€ãã®å€¤ãŒä¸€é€£ã®è¡¨éŸ³ã‚³ãƒ¼ãƒ‰ã«ç¿»è¨³ã•れã¾ã™ã€‚以下ã®å ´åˆã«ã‚¨ãƒ³ãƒˆãƒªãŒå•åˆã›ã«ä¸€è‡´ã™ã‚‹ã¨è¦‹ãªã•れã¾ã™ã€‚

例:

ディレクトリã«ãŠã‘ã‚‹åå‰
(表音コード)
検索文字列
(表音コード)
一致ã«é–¢ã™ã‚‹æ³¨é‡ˆ
Alice B Sarette
(ALS B SRT)
Alice Sarette
(ALS SRT)
ä¸€è‡´ã€‚ã‚³ãƒ¼ãƒ‰ãŒæ­£ã—ã„é †åºã§æŒ‡å®šã•れã¦ã„ã¾ã™ã€‚
Alice Sarrette
(ALS SRT)
一致。Saretteã®ã‚¹ãƒšãƒ«ãŒé–“é•ã£ã¦ã„ã‚‹ã«ã‚‚é–¢ã‚らãšã€ã‚³ãƒ¼ãƒ‰ãŒæ­£ã—ã„é †åºã§æŒ‡å®šã•れã¦ã„ã¾ã™ã€‚
Surette
(SRT)
一致。Saretteã®ã‚¹ãƒšãƒ«ãŒé–“é•ã£ã¦ã„ã‚‹ã«ã‚‚é–¢ã‚らãšã€ç”Ÿæˆã•れãŸã‚³ãƒ¼ãƒ‰ã«ã¯å…ƒã®åå‰ãŒå­˜åœ¨ã—ã¾ã™ã€‚
Bertha Sarette
(BR0 SRT)
一致ãªã—。コードBR0ã¯å…ƒã®åå‰ã«ã¯å­˜åœ¨ã—ã¾ã›ã‚“。
Sarette, Alice
(SRT ALS)
一致ãªã—ã€ã‚³ãƒ¼ãƒ‰ãŒæ­£ã—ã„é †åºã§æŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。

副文字列検索ã®ä»•組ã¿

副文字列検索ã§ã¯ã€å…¥åŠ›ã—ãŸå€¤ã‚’å«ã‚€ã‚¨ãƒ³ãƒˆãƒªãŒæ¤œç´¢ã•れã¾ã™ã€‚[拡張検索]インタフェースã§ã¯ã€å‰¯æ–‡å­—列検索starts with(開始文字)ã€contains (嫿œ‰)ã€ãŠã‚ˆã³ends with (終了文字)ã®æ¤œç´¢ã«å¯¾å¿œã—ã¾ã™ã€‚

例ãˆã°ã€

ã®ãƒ•ã‚©ãƒ¼ãƒ ã®æ¤œç´¢ã§ã¯ã€ä»¥ä¸‹ã®æ–‡å­—列をå«ã‚€ä¸€èˆ¬åã«ä¸€è‡´ã—ã¾ã™ã€‚

åŒæ§˜ã«ã€

ã®æ¤œç´¢ã§ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãŠã„ã¦555ã‚’å«ã‚€é›»è©±ç•ªå·ã‚’æŒã¤ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãŒæˆ»ã•れã¾ã™ã€‚