Key properties are defined in an XML file that is part of the
application configuration:
<app_config>.key_props.xml.
A new, empty version of this file is created whenever a new Oracle Commerce Developer Studio project is created. Editing this file and performing a Set Instance Configuration operation in Developer Studio causes a new set of key properties to be loaded into the system.
The DTD for the
<app_config>.key_props.xml is located in
$ENDECA_ROOT/conf/dtd/key_props.dtd. The contents of this DTD are:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2001-2014, Oracle, Inc.
All rights reserved.
-->
<!ENTITY % common.dtd SYSTEM "common.dtd">
%common.dtd;
<!-- The KEY_PROPS top level element is the container for a set
of KEY_PROP elements, each of which contains the
"key properties" for a single dimension or property key.
-->
<!ELEMENT KEY_PROPS (COMMENT?, KEY_PROP*)>
<!-- A KEY_PROP element contains the list of property
values associated with the dimension or property key
specified by the NAME attribute.
-->
<!ELEMENT KEY_PROP (PROP*)>
<!ATTLIST KEY_PROP
NAME CDATA #REQUIRED
>
Each KEY_PROPS element in the file corresponds to a single dimension or property and contains the key properties for that dimension or property. Key properties that do not refer to a valid dimension or property name are removed by the MDEX Engine at startup or configuration update time and are logged with error messages.
Here is an example of a key properties XML file:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!DOCTYPE KEY_PROPS SYSTEM "key_props.dtd">
<KEY_PROPS>
<KEY_PROP NAME="Gross">
<PROP NAME="Units"><PVAL>$</PVAL></PROP>
<PROP NAME="Description">
<PVAL>Total sale amount, exclusive of any deductions.
</PVAL>
</PROP>
</KEY_PROP>
<KEY_PROP NAME="Margin">
<PROP NAME="Units"><PVAL>$</PVAL></PROP>
<PROP NAME="Description">
<PVAL>Difference between the Gross of the transaction
and its Cost.</PVAL></PROP>
</KEY_PROP>
</KEY_PROPS>

