この問題の解決策の1つは、一般サイズの場合は@size
、ピザサイズの場合は@pizza_size
、飲み物サイズの場合は@drink_size
です。これを使用して、ユーザー入力に指定されたサイズを明確にすることができます。一般的なサイズのみが指定されている場合は、エンティティ@size
が返されます。ピザまたは飲み物の明示的なサイズが指定されると、特定のエンティティも取得されます。 「サイズなし」は、ユーザー入力でサイズエンティティが検出されなかった場合に指定されます。
ここでは、csv形式のエンティティ定義の例を示します。
size,small,tiny,little
size,medium,normal,standard
size,large,big,biggest,gigantic
pizza_size,psmall,small pizza,tiny pizza,little pizza
pizza_size,pmedium,medium pizza,normal pizza,standard pizza
pizza_size,plarge,large pizza,big pizza,biggest pizza,gigantic pizza
drink_size,dsmall,small drink,tiny drink,little drink,short drink
drink_size,dmedium,medium drink,normal drink,standard drink
drink_size,dlarge,large drink,big drink,biggest drink,tall drink,gigantic drink