管理属性値は、データ・ドメイン内での管理属性に対する特定の値割当てを表します。管理属性値を通じて、データ・ドメイン内でのレコード絞込みに関する階層関係やその他の有用な情報(シノニムやランキングなど)を表現できます。
管理属性値は、データ・ドメインにソース・レコードをロードする前に追加します。次に、これらの値(MAやBostonなど)を含むソース・レコードをロードすると、それらがEndeca Serverによって管理属性値として認識されるため、エンドユーザーがそれらの階層、固定ランクやシノニム(指定されている場合)を利用してナビゲートや検索を行えるようになります。
各データ・ドメインのEndeca Server索引内では、追加された各管理属性値(この例ではMAやBostonなど)自体がレコードとして表されます。これらのレコードは、管理属性とそれらの値の追加時に、索引内に作成されるPDR、DDRおよびManaged Attribute Value Description Record (MAVDR)によって記述されます。
<ns:configTransaction> <ns:putManagedAttributeValues> <ns1:mav> <name>?</name> <spec>?</spec> <parent>?</parent> <managedAttribute>?</managedAttribute> <synonym>?</synonym> <synonym>?</synonym> <rank>?</rank> </ns1:mav> </ns:putManagedAttributeValues> </ns:configTransaction>この構造では、spec、parent、managedAttributeの各要素は必須で、その他の要素はすべてオプションです。
要素 | タイプ | 説明 |
---|---|---|
name | string | (オプション)管理属性値レコードの表示名。管理属性値の追加時にこのプロパティを定義します。たとえば、Bostonという名前を含む管理属性値を定義できます。
<mav><name>Boston</name>...</mav> データ・レコードのスキーマ内では、この管理属性値の作成時に、そのMAVDRが作成されます。MAVDRは、mdex-dimension-value_Nameに対する割当てを取得します。
<attribute name="mdex-dimension-value_Name" type="mdex:string">Boston</attribute> |
spec | string | (必須)管理属性値レコードの一意の識別子(仕様)。たとえば、bosという仕様を含む管理属性値を定義できます。
<mav> <spec>bos</spec> ... </mav> データ・レコードのスキーマ内では、この値は同様に、関連付けられている管理属性(キーmy_attr_key)のDDRの追加時に作成されるmdex-dimension_my_attr_key_Spec属性に対する割当てとなります。たとえば、キーがlocationである管理属性の場合、そのDDRの作成時に別のレコードが自動的に作成されます(つまり、mdex-dimension_location_SpecのPDR)。これは常に一意の単一割当てとして作成されます(これに対する値によって、追加する管理属性値を一意に識別するため)。次に、管理属性値(bosなど)を追加すると、値bosがmdex-dimension_location_Specに対する割当てとなります。
<attribute name="mdex-dimension_location_Spec" type="mdex:string">bos</attribute> 注意: キーがvalueである管理属性のDDRの作成時にそのmdex-dimension-value_Spec属性に独自の値を指定しなかった場合、Endeca Serverによって管理属性値の仕様のPDRを作成する際にmdex-dimension_value_Spec形式のネーミング構造が自動的に使用されます。
|
parent | string | (必須)親管理属性値の仕様。1つだけ許可されます。前述の例では、仕様がbosである管理属性値の場合、親管理属性値の仕様はMAです(指定するには、すでに存在している必要があります)。
<mav> <spec>bos</spec> <parent>MA</parent> ... </mav> データ・レコードのスキーマ内では、この値は同様に、関連付けられている管理属性(キーmy_attr_key)のDDRの追加時に作成されるmdex-dimension_my_attr_key_Parent属性に対する割当てとなります。たとえば、キーがlocationである管理属性の場合、そのDDRの作成時に別のレコードが自動的に作成されます(つまり、mdex-dimension_location_ParentのPDR)。これは常に単一割当てとして作成されます。次に、管理属性値(MAなど)を追加すると、値MAが別の管理属性値bosのmdex-dimension_location_Parentに対する割当てとなります。
<attribute name="mdex-dimension_location_Parent" type="mdex:string">MA</attribute> 注意: キーがvalueである管理属性のDDRの作成時にそのmdex-dimension-value_Parent属性に独自の値を指定しなかった場合、Endeca Serverによって親管理属性値のPDRを作成する際にmdex-dimension_value_Parent形式のネーミング構造が自動的に使用されます。
|
managedAttribute | string | (必須)この管理属性値と関係がある管理属性のキー(仕様)。1つだけ許可されます。管理属性値の追加時に定義します。たとえば、値Boston(仕様bos)の場合、関連付けられている管理属性キーはlocationです。
<mav> <spec>bos</spec> <managedAttribute>location</managedAttribute> ... </mav> データ・レコードのスキーマ内では、この値locationは、この管理属性を定義するDDRの管理属性locationのキーです。
<mdex-dimension_Key>location</mdex-dimension_Key>追加する管理属性値のMAVDRでは、管理属性locationへの割当てとなります。 <attribute name="mdex-dimension-value_Dimension" type="mdex:string">location</attribute> |
rank | integer | (オプション)管理属性値の固定ランク。1つだけ許可されます。このランクは整数で、Endeca Serverによって管理属性値がエンドユーザーに返されるときに、このランクに従って各管理属性の階層内で管理属性値がランク付けされます。このランクは、Studioなどのフロントエンド・アプリケーションで値を表示する順序に影響します。putManagedAttributeValue操作で管理属性値を追加するときに、オプションでランクを指定できます(mdex-dimension-value_Rank)。
<ns1:mav> <spec>bos</spec> <rank>3</rank> ... </mav> データ・レコードのスキーマ内では、ランクの値(3など)は、追加する管理属性のMAVDRのmdex-dimension-value_Rank属性に対する割当てとなります。
<attribute name="mdex-dimension-value_Rank" type="mdex:integer">3</attribute> |
synonym | string | (オプション)管理属性値の1つ以上のシノニムのリスト。オプションで、管理属性値の追加時に1つ以上のシノニムを指定できます。たとえば、値Bostonの場合、シノニムとしてBeantownおよびthe Hubを指定できます。
<ns1:mav> <spec>bos</spec> <synonym>Beantown</synonym> <synonym>the Hub</synonym> ... </mav> データ・レコードのスキーマ内では、シノニムの値(Beantownなど)は、追加する管理属性のMAVDRのmdex-dimension-value_Synonyms属性に対する割当てとなります。
<attribute name="mdex-dimension-value_Synonyms" type="mdex:string">Beantown</attribute> |
結論として、各管理属性値レコードは、その管理属性値に固有である(仕様の値と親の値の)独自のペアで識別されます。次の例では、特定の管理属性の管理属性値を追加する方法を示します。
<mdex-property_Key>location</mdex-property_Key>
<mdex-dimension_Key>location</mdex-dimension_Key>このDDRを作成すると、2つの追加PDRレコードがEndeca Serverによって自動的に作成されます(DDRで独自の値を指定しなかった場合)。
<mdex-property_Key type="mdex:string" xmlns="">mdex-dimension_location_Parent</mdex-property_Key> <mdex-property_Key type="mdex:string" xmlns="">mdex-dimension_location_Spec</mdex-property_Key>
<ns:configTransaction> <ns:putManagedAttributeValues> <ns1:mav> <name>USA</name> <spec>US</spec> <parent>/</parent> <managedAttribute>location</managedAttribute> </ns1:mav> <ns1:mav> <name>Massachusetts</name> <spec>MA</spec> <parent>US</parent> <managedAttribute>location</managedAttribute> </ns1:mav> <ns1:mav> <name>Boston</name> <spec>bos</spec> <parent>MA</parent> <managedAttribute>location</managedAttribute> </ns1:mav> </ns:putManagedAttributeValues> </ns:configTransaction>(この例では、単純化のため、ネームスペースが省略されています。ネームスペースはそれぞれ、xmlns:ns="http://www.endeca.com/MDEX/config/services/types/3/0"とxmlns:ns1="http://www.endeca.com/MDEX/config/XQuery/2009/09"を表します。)
作成した管理属性値は、Endeca Serverによって特定の管理属性に添付されます。この例では、管理属性locationに対して管理属性値Bostonを作成すると、そのDDRを追加することによってlocation管理属性の作成時に自動的に作成されたmdex-dimension_location_Specに管理属性値の仕様bosが割り当てられます。同様に、mdex-dimension_location_Parentに管理属性値の親MAが割り当てられます。