補助キー参照子は、キーの探索方法(探索範囲)を指定するのに使用します。
通常、KI言語では、キーストリング中からキーを探索する際、キーストリングの並び順に調べていきます。そのため、キーストリング内の後方にあるキーほど探索に時間がかかります。
※キーの多いキーストリングの場合、キーの探索によってパフォーマンスが低下することがあります。
補助キー参照子で探索範囲を限定することで、探索の効率化やキーラベル名の衝突を防ぐことがが可能です。
サンプルでは、下記6個の補助キー参照子を使用して、それぞれの参照結果を表示しています。
① >< 特定のキーの子キー中を探索
② -< 特定のキーの先祖中を探索
③ -/ 特定のキーの妹キー中を探索
④ -\ 特定のキーの姉キー中を探索
⑤ /< 特定のキーの下流を探索
⑥ \< 特定のキーの上流を探索
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73  | 
						Kf(_referAssistSample){ 	Pe{ 		/*キーステーションが最初に実行するキーセット*/ 		N(_main); 	} } K(_main){ 	/* 表示に使用しているフォント:Ricty Diminished 	   ダウンロードサイトはこちら:https://github.com/edihbrandon/RictyDiminished	*/ 	Se{ 		@s1{ 			~back{~color="#ff000000";} 			~font{~color="#ffffffff";~face="Ricty Diminished";~size="20";} 			~parag{~align="left";} 			~text{~align="top";} 		} 		@s2{ 			~border{~color="#ff408000";	~width="1";	~style="solid";} 			~font{~size="50";} 			~margin{~top="100";	~left;~right;~bottom;} 			~text{~align="top";} 		} 		@s3{ 			~border{~color="#ff408000";	~width="1";	~style="solid";} 			~font{~size="50";} 			~text{~align="top";} 		} 	} 	U{ 		C(#top){ 			C(#F,"祖母",@s3){ 				C(#F,"叔母1",@s2) 				C(#P,"親",@s2){ 					C(#M,"子1",@s2){ 						C(#F,"孫2",@s2) 					} 					C(#F,"子2",@s2) 				} 				C(#F,"叔母2",@s2) 			} 		} 		C(#Console,@s1) 		Pe{ 			(str)tmp=""; 			tmp = #F%str(true); 			tmp += "------------------------------------\n"; 			/*そのまま参照した場合*/ 			tmp += "#P#F? => " + #P#F? + "\n"; 			/* ①klb1><klb2	*/ 			tmp += "#P><#F? => " + #P><#F? + "\n"; 			/* ②klb1-<klb2 */ 			tmp += "#P-<#F? => " + #P-<#F? + "\n"; 			/* ③klb1-/klb2 */ 			tmp += "#P-/#F? => " + #P-/#F? + "\n"; 			/* ④klb1-\klb2 */ 			tmp += "#P-\\#F? => " + #P-\#F? + "\n"; 			/* ⑤klb1/<klb2 */ 			tmp += "#P/<#F? => " + #P/<#F? + "\n"; 			/* ⑥klb1\<klb2 */ 			tmp += "#P\\<#F? => " + #P\<#F? + "\n"; 			/* 画面に表示 */ 			#Console? = tmp; 		} 	} }  | 
					
実行結果
