Retrieving Configuration Information

This chapter discusses how to retrieve configuration information using COP XML:

Click to jump to top of pageClick to jump to parent topicUnderstanding Configuration Information

The Configurator XML interface lets you retrieve information about a configuration, including:

The Configurator XML interface also lets you:

Note. The Configurator is stateless, so the examples in this chapter include user choices (picks) to create configurations that provide appropriate control data.

See Also

Updating a Configuration

Click to jump to top of pageClick to jump to parent topicElements and Attributes

The COP XML request may include these elements and attributes to retrieve information about a configuration.

CONFIGURATION MODEL_ID LOCALE MODEL_VERSION COMPILE_VERSION TOTAL_PRICE CHOICES RET CH DP DM BY QTY EVCH DP VAL CONTROL_DATA DMSORT_ST FILTER_EL_LO FILTER_EL_HI FILTER_EL EXPLNATIONS ATTR NM DP NM CL DPR ATTR NM NUMERIC_VALUES EXTERN_VARS EV NM TY VAL VIOLATIONS EXPLANATIONS

The COP XML response may include these elements and attributes to return information about a configuration. Attributes are in small italic print.

CONFIGURATION MODEL_ID LOCALE MODEL_VERSION COMPILE_VERSION TOTAL_PRICE DECISION_POINTS DP NM CHOICES CH DP DM BY ST SL EL QTY TY EVCH DP VAL TY CONTROL_DATA DP NM CL MS DM NM CL ST QTY SL EL PR ATTR NM EXPLANATION NUMERIC_VALUES NUM NM VL EXTERN_VARS EV NM VIOLATIONS EXPLANATIONS EXPLANATION

Click to jump to top of pageClick to jump to parent topicTotal Price

The CONFIGURATION element and its TOTAL_PRICE attribute let you retrieve the configuration’s total price.

Including in the REQUEST the CONFIGURATION element with an empty string value for its TOTAL_PRICE attribute causes the COP to return in the RESPONSE the value for the TOTAL_PRICE attribute.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" TOTAL_PRICE=""/>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20000426-113936-314" TOTAL_PRICE="964.95"/>

Click to jump to top of pageClick to jump to parent topicChoices

The CHOICES element, its children elements CH and EVCH, and attributes of these elements let you retrieve choices for the configuration.

Including the CHOICES element in the request updates the configuration by setting choices. Setting the RET attribute of the CHOICES element to “true” in the request causes the COP to return all choices in the configuration.

More accurately, including in the REQUEST the CHOICES element with the RET attribute set to “true” causes the COP to return in the RESPONSE:

The attributes of an external variable that may be returned are:

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES RET="true"> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="MonitorsSelection" BY="U" QTY="1" DM="15 Inch Monitor"/> </CHOICES> </CONFIGURATION>

RESPONSE

CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CHOICES> <CH DP="BaseSelection" DM="Prima Base Celeron 433Mhz MiniTower" BY="U" ST="66"/> <CH DP="HardDrivesSelection" DM="4.3 GB BATRA-33" BY="D" ST="34"/> <CH DP="MonitorsSelection" DM="15 Inch Monitor" BY="U" ST="66"/> <CH DP="ChassisSelection" DM="Mini Tower" BY="C" ST="18"/> <CH DP="PowerCordSelection" DM="10 Foot PC Power Cord" BY="C" ST="18"/> <CH DP="AdditionalSoftwareSelection" DM="ISP Direct Connect" BY="C" ST="18"/> <CH DP="TravelSelection" DM="No" BY="C" ST="18"/> <CH DP="ModemSelection" DM="Internal 56K" BY="D" ST="34"/> </CHOICES> </CONFIGURATION>

See Also

Using the COP Java API

Updating a Configuration Interactively

Click to jump to top of pageClick to jump to parent topicDomain Member Data

The CONTROL_DATA element, DP element, ATTR element, and attributes of these elements let you retrieve information on domain members.

Click to jump to top of pageClick to jump to parent topicEvery Decision Point

The CONTROL_DATA element lets you retrieve every domain member for every decision point (selection point) in the configuration by decision point.

Including in the REQUEST

Causes the COP to return in the RESPONSE

The CONTROL_DATA element without an attribute.

Every DM element for every DP element in the configuration. Each DP element represents a decision point in the configuration. Each DM element is a child element of a DP element, and represents a domain member of that decision point.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA/> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> </DP> <DP NM="HardDrivesSelection"> <DM NM="4.3 GB BATRA-33"> </DM> <DM NM="8.4 GB BATA-33"> </DM> <DM NM="13.6 GB BATA-33"> </DM> <DM NM="Quantum 27.3 GB SCSI"> </DM> </DP> <DP NM="DVDorCDRomSelection"> <DM NM="Pioneer DVD-A115"> </DM> <DM NM="Sharp DVD-A100U"> </DM> <DM NM="48X Max Variable CD-ROM"> </DM> </DP> <DP NM="...."> <DM NM="...."> </DM> </DP> .... </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicSelected Decision Points

The CONTROL_DATA element, its child element DP, and the NM attribute of the DP element let you retrieve every domain member for a selected decision point in the configuration.

A Single Decision Point

Including in the REQUEST the CONTROL_DATA element, and its child element DP with a valid value (decision point name) for the NM attribute of DP causes the COP to return in the RESPONSE every DM element for the named DP element. Each DM is a child element of the named DP, and represents a domain member of that decision point.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <DP NM="HardDrivesSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="HardDrivesSelection"> <DM NM="4.3 GB BATRA-33"> </DM> <DM NM="8.4 GB BATA-33"> </DM> <DM NM="13.6 GB BATA-33"> </DM> <DM NM="Quantum 27.3 GB SCSI"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Multiple Decision Points

The request may include more than one DP element, each with a valid value (decision point name) for its NM attribute:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <DP NM="ScannersSelection"/> <DP NM="PrintersSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="PrintersSelection"> <DM NM="HP Laserjet"> </DM> <DM NM="Epson 1500"> </DM> </DP> <DP NM="ScannersSelection"> <DM NM="NEC Technologies PediScan"> </DM> <DM NM="Fujitsu ScanPartner 15C"> </DM> <DM NM="Canon DR5080C"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

No Decision Points

Including in the REQUEST the CONTROL_DATA element and its child element DP with an empty string value for the NM attribute of DP, causes the COP to return in the RESPONSE no DM elements and no DP elements.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <DP NM=""/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicSorting Domain Members

The DMSORT_ST attribute of the CONTROL_DATA element lets you sort domain members returned in the response, by state.

Including in the REQUEST the CONTROL_DATA element with its DMSORT_ST attribute set to “true” causes the COP to return in the RESPONSE domain members (DM’s) sorted by state (ST).

For example:

REQUEST (with a request to sort domain members by state)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="PowerCordSelection" BY="U" QTY="1" DM="Power Brick Cord"/> </CHOICES> <CONTROL_DATA DMSORT_ST="true"> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with domain members sorted by state)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="83"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Example using the same request and response but without sorting:

REQUEST (with no request to sort domain members by state)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="PowerCordSelection" BY="U" QTY="1" DM="Power Brick Cord"/> </CHOICES> <CONTROL_DATA> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE 2 (with domain members not sorted by state)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="83"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Note. A custom sort may be installed using COP Extensions.

Click to jump to top of pageClick to jump to parent topicFiltering Domain Members

The FILTER_EL, FILTER_LO, and FILTER_HI attributes of the CONTROL_DATA element let you filter domain members returned in the response, by elimination level.

Including in the REQUEST

Causes the COP to return in the RESPONSE

The DECISION_POINTS element, with its ALL attribute set to “false."

  • The CONTROL_DATA element with:

  • The DP element.

    • Its FILTER_EL attribute set to “true”.

    • Its FILTER_EL_LO and FILTER_EL_HI attributes set to valid elimination levels.

DM elements whose elimination levels are between FILTER_EL_LO and FILTER_EL_HI, inclusive.

For example:

This REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA FILTER_EL="true" FILTER_EL_LO="2" FILTER_EL_LO="5"> <DP NM="HardDrivesSelection"/> </CONTROL_DATA> </CONFIGURATION>

returns a RESPONSE that includes only those DM elements for the HardDrives DP element that have elimination levels between 2 and 5, inclusive.

Click to jump to top of pageClick to jump to parent topicExplanations

The EXPLANATIONS attribute of the CONTROL_DATA element lets you retrieve constraint violation explanations for decisions points in the configuration.

See Global Explanations.

Constraint Violations

Including in the REQUEST the CONTROL_DATA element with its EXPLANATIONS attribute set to “true” causes the COP to return in the RESPONSE all EXPLANATION elements for every decision point (DP element) returned. Each EXPLANATION element is a child element of a DP element, and its content is a textual explanation of the constraint violation.

To return an explanation, the request must include incompatible picks—a constraint violation—for a specified decision point.

For example:

REQUEST (with two incompatible picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="PowerCordSelection" BY="U" QTY="1" DM="Power Brick Cord"/> </CHOICES> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with a constraint violation explanation for the specified decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="83"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> <EXPLANATION>The C433Mini base requires the 10Foot power cord and Mini chassis. </EXPLANATION> </DP> </CONTROL_DATA> </CONFIGURATION>

An example of a constraint violation explanation for a specified decision point:

REQUEST (with two incompatible picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="ChassisSelection" BY="U" QTY="1" DM="Full Tower"/> </CHOICES> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with a constraint violation explanation for the specified decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="83"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC" ST="17"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC" ST="17"> </DM> <EXPLANATION>The C433Mini base requires the 10Foot power cord and Mini chassis. </EXPLANATION> </DP> </CONTROL_DATA> </CONFIGURATION>

No Constraint Violation

If the request includes compatible picks, there are no constraint violations, and asking for explanations will not return any explanations.

For example:

REQUEST (with two compatible picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="PowerCordSelection" BY="U" QTY="1" DM="10 Foot PC Power Cord"/> </CHOICES> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (without any explanations for the specified decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="66"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC" ST="17"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC" ST="17"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

An example of a request for explanations failing to return any explanations for the specified decision point, because the picks are compatible:

REQUEST (with two compatible picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="ChassisSelection" BY="U" QTY="1" DM="Mini Tower"/> </CHOICES> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (without any explanations for the specified decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="66"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC" ST="17"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC" ST="17"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicAttributes

The ATTR element and its NM attribute let you retrieve the values for a selected attribute for either:

Either way, the response includes the values for the selected attribute for all of the appropriate domain members, by domain member.

Every Domain Member

The ATTR element and its NM attribute let you retrieve the values for a named attribute for every domain member of every decision point returned in the response.

Including in the REQUEST the CONTROL_DATA element and its child element ATTR with a valid value for the NM attribute of the ATTR element causes the COP to return in the RESPONSE:

In the following example, all domain members of both decision points—Scanners, and Printers—have the ShortName attribute:

REQUEST (requesting values for the ShortName attribute for every domain member of two decision points)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <ATTR NM="ShortName"/> <DP NM="ScannersSelection"/> <DP NM="PrintersSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with ShortName attribute-value content for every domain member of both decision points)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="PrintersSelection"> <DM NM="HP Laserjet"> <ATTR NM="SHORTNAME">HPLJ</ATTR> </DM> <DM NM="Epson 1500"> <ATTR NM="SHORTNAME">Ep1500</ATTR> </DM> </DP> <DP NM="ScannersSelection"> <DM NM="NEC Technologies PediScan"> <ATTR NM="SHORTNAME">NECPeSc</ATTR> </DM> <DM NM="Fujitsu ScanPartner 15C"> <ATTR NM="SHORTNAME">FScP15C</ATTR> </DM> <DM NM="Canon DR5080C"> <ATTR NM="SHORTNAME">CDR5080C</ATTR> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

In the following example, all domain members of the Base decision point have only the SystemType attribute, whereas all domain members of the Monitors decision point have only the Watts attribute:

REQUEST (requesting values for two attributes for every domain member of two decision points)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> </CHOICES> <CONTROL_DATA> <ATTR NM="Watts"/> <ATTR NM="SystemType"/> <DP NM="BaseSelection"/> <DP NM="MonitorsSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with SystemType attribute-value content for every domain member of the Base decision point, and Watts attribute-value content for every domain member of the Monitors decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="66"> <ATTR NM="WATTS"></ATTR> <ATTR NM="SYSTEMTYPE">LowEnd</ATTR> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower"> <ATTR NM="WATTS"></ATTR> <ATTR NM="SYSTEMTYPE">MidLevel</ATTR> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower"> <ATTR NM="WATTS"></ATTR> <ATTR NM="SYSTEMTYPE">HighEnd</ATTR> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> <ATTR NM="WATTS"></ATTR> <ATTR NM="SYSTEMTYPE">Laptop</ATTR> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> <ATTR NM="WATTS"></ATTR> <ATTR NM="SYSTEMTYPE">Laptop</ATTR> </DM> </DP> <DP NM="MonitorsSelection"> <DM NM="15 Inch Monitor" ST="34"> <ATTR NM="WATTS">1.0</ATTR> <ATTR NM="SYSTEMTYPE"></ATTR> </DM> <DM NM="17 Inch Monitor"> <ATTR NM="WATTS">3.0</ATTR> <ATTR NM="SYSTEMTYPE"></ATTR> </DM> <DM NM="21 Inch Monitor"> <ATTR NM="WATTS">5.0</ATTR> <ATTR NM="SYSTEMTYPE"></ATTR> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Selected Domain Members

The ATTR element and its NM attribute let you retrieve the values for a named attribute for every domain member of selected decision points returned in the response.

Including in the REQUEST

Causes the COP to return in the RESPONSE

The DECISION_POINTS element, with its ALL attribute set to “false."

  • The CONTROL_DATA element.

  • The DP element.

  • The ATTR element (as a child of the DP element) with a valid value for its NM attribute.

  • The named ATTR element for every DM element of the selected DP element.

  • Attribute-value content for each ATTR element of every returned DM element that has the named attribute.

REQUEST (requesting values for the ShortName attribute for every domain member of the Printers decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <DP NM="ScannersSelection"/> <DP NM="PrintersSelection"> <ATTR NM="ShortName"/> </DP> <DP NM="SpeakersSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with ShortName attribute-value content for every domain member of the Printers decision point)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="SpeakersSelection"> <DM NM="Altec Lansing 2000"> </DM> <DM NM="Cambridge SoundWorks SP"> </DM> </DP> <DP NM="PrintersSelection"> <DM NM="HP Laserjet"> <ATTR NM="SHORTNAME">HPLJ</ATTR> </DM> <DM NM="Epson 1500"> <ATTR NM="SHORTNAME">Ep1500</ATTR> </DM> </DP> <DP NM="ScannersSelection"> <DM NM="NEC Technologies PediScan"> </DM> <DM NM="Fujitsu ScanPartner 15C"> </DM> <DM NM="Canon DR5080C"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Combining Requests

The request may include both types of requests for the values for selected domain member attributes.

The following example requests the values for these domain member attributes:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <ATTR NM="Watts"/> <DP NM="ScannersSelection"/> <DP NM="PrintersSelection"> <ATTR NM="Description"/> <ATTR NM="ShortName"/> </DP> <DP NM="SpeakersSelection"> <ATTR NM="ShortName"/> </DP> </CONTROL_DATA> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="SpeakersSelection"> <DM NM="Altec Lansing 2000"> <ATTR NM="SHORTNAME">AL2000</ATTR> <ATTR NM="WATTS">1.0</ATTR> </DM> <DM NM="Cambridge SoundWorks SP"> <ATTR NM="SHORTNAME">CSWSP</ATTR> <ATTR NM="WATTS">1.0</ATTR> </DM> </DP> <DP NM="PrintersSelection"> <DM NM="HP Laserjet"> <ATTR NM="DESCRIPTION">HP Laserjet</ATTR> <ATTR NM="SHORTNAME">HPLJ</ATTR> <ATTR NM="WATTS">3.0</ATTR> </DM> <DM NM="Epson 1500"> <ATTR NM="DESCRIPTION">Epson 1500</ATTR> <ATTR NM="SHORTNAME">Ep1500</ATTR> <ATTR NM="WATTS">3.0</ATTR> </DM> </DP> <DP NM="ScannersSelection"> <DM NM="NEC Technologies PediScan"> <ATTR NM="WATTS">4.0</ATTR> </DM> <DM NM="Fujitsu ScanPartner 15C"> <ATTR NM="WATTS">4.0</ATTR> </DM> <DM NM="Canon DR5080C"> <ATTR NM="WATTS">4.0</ATTR> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicDelta Price

The DPR attribute of the DP element lets you retrieve the delta prices for domain members of a selected decision point.

Including in the REQUEST

Causes the COP to return in the RESPONSE

The DECISION_POINTS element, with its ALL attribute set to “false."

  • The CONTROL_DATA element.

  • The child element DP with:

    • A valid value (decision point name) for its NM attribute.

    • Its DPR attribute set to “true”.

The delta price for each DM element of the named DP element, included as the value for the PR attribute of each DM element.

For example:

REQUEST (requesting delta pricing)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <DP NM="ScannersSelection" DPR="true"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with delta pricing as the value for each PR)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="ScannersSelection" DPR="true"> <DM NM="NEC Technologies PediScan" PR="-25.0"> </DM> <DM NM="Fujitsu ScanPartner 15C" PR="0.0"> </DM> <DM NM="Canon DR5080C" PR="35.0"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicClass

The CL attribute of the DP element lets you retrieve the class name for domain members of a selected decision point.

Including in the REQUEST

Causes the COP to return in the RESPONSE

The DECISION_POINTS element, with its ALL attribute set to “false."

  • The CONTROL_DATA element.

  • The child element DP with:

    • A valid value (decision point name) for its NM attribute.

    • An empty string value for its CL attribute.

The class name for each DM element of the named DP element, included as the value for the CL attribute of each DM element.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> , <CONTROL_DATA> <DP NM="ScannersSelection" CL=""/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="ScannersSelection"> <DM NM="NEC Technologies PediScan" CL="Scanners"> </DM> <DM NM="Fujitsu ScanPartner 15C" CL="Scanners"> </DM> <DM NM="Canon DR5080C" CL="Scanners"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicState and Quantity

The DP element without any special attributes lets you retrieve the state and quantity of domain members of a selected decision point.

Including in the REQUEST

Causes the COP to return in the RESPONSE

The CONTROL_DATA element.

  • The CONTROL_DATA element.

  • The child element DP with a valid value (decision point name) for its NM attribute.

Non-null values for the state (ST) and quantity (QTY) attributes of all domain members (DM elements) of the named decision point (DP elements).

Note. The request should not include the ST and QTY attributes for the named DP elements.

For example:

REQUEST (without any special DP attributes)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES RET="false"> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> </CHOICES> <CONTROL_DATA> <DP NM="BaseSelection"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (with a non-null value for ST)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-0" COMPILE_VERSION="20001030-102408-606"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="66"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicMulti-Select Decision Points

Specifics of the request/response are:

Including in the REQUEST

Causes the COP to return in the RESPONSE

The DECISION_POINTS element, with its ALL attribute set to “false."

  • The CONTROL_DATA element.

  • The DP element with:

    • A valid value (decision point name) for its NM attribute.

    • Its MS attribute set to “true”.

Whether or not the named decision point is multi-select. If the decision point (DP element) is multi-select, its MS attribute is set to “true”; if the decision point is single-select, it has no MS attribute.

For example:

REQUEST (asking whether two decision points are multi-select)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CONTROL_DATA> <DP NM="ScannersSelection" MS="true"/> <DP NM="DeviceControllersSelection" MS="true"/> </CONTROL_DATA> </CONFIGURATION>

RESPONSE (answering that only the DeviceControllers decision point is multi-select)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="DeviceControllersSelection" MS="true"> <DM NM="IDE Cable"> </DM> <DM NM="SCSI Cable"> </DM> <DM NM="ATAPI"> </DM> </DP> <DP NM="ScannersSelection"> <DM NM="NEC Technologies PediScan"> </DM> <DM NM="Fujitsu ScanPartner 15C"> </DM> <DM NM="Canon DR5080C"> </DM> </DP> </CONTROL_DATA> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicGlobal Explanations

The EXPLANATIONS attribute of the VIOLATIONS element lets you retrieve constraint violation explanations for the configuration as a whole.

See Also

Explanations

Click to jump to top of pageClick to jump to parent topicGlobal Only

Including in the REQUEST the VIOLATIONS element with its EXPLANATIONS attribute set to “true” causes the COP to return in the RESPONSE all EXPLANATION elements for the configuration. Each EXPLANATION element is a child element of a VIOLATIONS element, and its content is a textual explanation of the constraint violation.

To return an explanation, the request must include incompatible picks—a constraint violation—for the configuration.

For example:

REQUEST (with two incompatible picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="PowerCordSelection" BY="U" QTY="1" DM="Power Brick Cord"/> </CHOICES> <CONTROL_DATA> <DP NM="BaseSelection"/> </CONTROL_DATA> <VIOLATIONS EXPLANATIONS="true"/> </CONFIGURATION>

RESPONSE (with a global explanation of the constraint violation)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="83"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> </DP> </CONTROL_DATA> <VIOLATIONS> <EXPLANATION>The C433Mini base requires the 10Foot power cord and Mini chassis. </EXPLANATION> </VIOLATIONS> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicGlobal and Decision Point

The request and response can include explanations for both decision points and the configuration.

See Explanations.

For example: REQUEST (with two incompatible picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="PowerCordSelection" BY="U" QTY="1" DM="Power Brick Cord"/> </CHOICES> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"/> </CONTROL_DATA> <VIOLATIONS EXPLANATIONS="true"/> </CONFIGURATION>

RESPONSE (with an explanation for the specified decision point and a global explanation)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA EXPLANATIONS="true"> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="83"> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" ST="17"> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" ST="17"> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC"> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC"> </DM> <EXPLANATION>The C433Mini base requires the 10Foot power cord and Mini chassis. </EXPLANATION> </DP> </CONTROL_DATA> <VIOLATIONS> <EXPLANATION>The C433Mini base requires the 10Foot power cord and Mini chassis. </EXPLANATION> </VIOLATIONS> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicNumeric Values

The NUMERIC_VALUES element, the child element NUM, and the NM attribute of the NUM element let you retrieve numeric values for the configuration.

Click to jump to top of pageClick to jump to parent topicAll Values

Including in the REQUEST the NUMERIC_VALUES element causes the COP to return in the RESPONSE all NUM elements for the configuration. Each NUM element is a child element of NUMERIC_VALUES that has attribute-value pairs for its NM and VL attributes.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> </CHOICES> <NUMERIC_VALUES/> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation" VL="3.0" > </NUM> <NUM NM="[_Application].StorageCapacitySummation" VL="4300" > </NUM> <NUM NM="[_Application].PCISlotsResourceBalancing-Provider" VL="3" > </NUM> <NUM NM="[_Application].PCISlotsResourceBalancing-Consumer" VL="1" > </NUM> <NUM NM="[_Application].AGPSlotsREsourceBalancing-Provider" VL="0" > </NUM> <NUM NM="[_Application].AGPSlotsREsourceBalancing-Consumer" VL="0" > </NUM> <NUM NM="[_Application].ISASlotsResourceBalancing-Provider" VL="4" > </NUM> <NUM NM="[_Application].ISASlotsResourceBalancing-Consumer" VL="0" > </NUM> </NUMERIC_VALUES> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicSelected Values

Including in the REQUEST the NUMERIC_VALUES element, and the child element NUM with a valid value for its NM attribute causes the COP to return in the RESPONSE the NUMERIC_VALUES element, and as a child element, the NUM element named in the request with a value for its VL attribute.

For example:

REQUEST

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> </CHOICES> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation"/> </NUMERIC_VALUES> </CONFIGURATION>

RESPONSE

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation" VL="3.0" > </NUM> </NUMERIC_VALUES> </CONFIGURATION>

Click to jump to top of pageClick to jump to parent topicValue (VL)

The value for the VL attribute for the named NUM element is the numeric value for the configuration. It is the total value for the named NUM element for all picks in the configuration that have the element as an attribute.

For example:

REQUEST 1 (with one user pick)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> </CHOICES> <CONTROL_DATA> <ATTR NM="Watts"/> <DP NM="BaseSelection"/> <DP NM="MonitorsSelection"/> <DP NM="HardDrivesSelection"/> </CONTROL_DATA> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation"/> </NUMERIC_VALUES> </CONFIGURATION>

RESPONSE 1 (with the one user pick and two computer picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="66" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC" > <ATTR NM="WATTS"></ATTR> </DM> </DP> <DP NM="HardDrivesSelection"> <DM NM="4.3 GB BATRA-33" ST="34" > <ATTR NM="WATTS">2.0</ATTR> </DM> <DM NM="8.4 GB BATA-33" > <ATTR NM="WATTS">2.0</ATTR> </DM> <DM NM="13.6 GB BATA-33" > <ATTR NM="WATTS">2.0</ATTR> </DM> <DM NM="Quantum 27.3 GB SCSI" > <ATTR NM="WATTS">2.0</ATTR> </DM> </DP> <DP NM="MonitorsSelection"> <DM NM="15 Inch Monitor" ST="34" > <ATTR NM="WATTS">1.0</ATTR> </DM> <DM NM="17 Inch Monitor" > <ATTR NM="WATTS">3.0</ATTR> </DM> <DM NM="21 Inch Monitor" > <ATTR NM="WATTS">5.0</ATTR> </DM> </DP> </CONTROL_DATA> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation" VL="3.0" > </NUM> </NUMERIC_VALUES> </CONFIGURATION>

The value for [_Application].WattsSummation is 3.0—the total watts for all picks in the configuration that have WATTS as an attribute. The user pick Prima Base Celeron 433Mhz MiniTower does not have WATTS as an attribute. Two computer picks required by the user pick have WATTS as an attribute. The total value for the WATTS attribute for those picks is 3.0:

In the following example, there are two user picks and one computer pick. The total value (VL) for the WATTS attribute for all picks in the configuration having the WATTS attribute is 7.0:

REQUEST 2 (with two user picks)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION=""> <CHOICES> <CH DP="BaseSelection" BY="U" QTY="1" DM="Prima Base Celeron 433Mhz MiniTower"/> <CH DP="MonitorsSelection" BY="U" QTY="1" DM="21 Inch Monitor"/> </CHOICES> <CONTROL_DATA> <ATTR NM="Watts"/> <DP NM="BaseSelection"/> <DP NM="MonitorsSelection"/> <DP NM="HardDrivesSelection"/> </CONTROL_DATA> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation"/> </NUMERIC_VALUES> </CONFIGURATION>

RESPONSE 2 (with two user picks and one computer pick)

<CONFIGURATION MODEL_ID="Sample" MODEL_VERSION="1-0-1" COMPILE_VERSION="20001215-134209-537"> <CONTROL_DATA> <DP NM="BaseSelection"> <DM NM="Prima Base Celeron 433Mhz MiniTower" ST="66" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Suprema Base Pentium III 750 Mhz MidTower" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Magna Base Pentium III Xeon 100 Mhz FullTower" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Advanta Base TM3120 400 Mhz Mobile PC" > <ATTR NM="WATTS"></ATTR> </DM> <DM NM="Extra Base Tm5400 700 Mhz Mobile PC" > <ATTR NM="WATTS"></ATTR> </DM> </DP> <DP NM="HardDrivesSelection"> <DM NM="4.3 GB BATRA-33" ST="34" > <ATTR NM="WATTS">2.0</ATTR> </DM> <DM NM="8.4 GB BATA-33" > <ATTR NM="WATTS">2.0</ATTR> </DM> <DM NM="13.6 GB BATA-33" > <ATTR NM="WATTS">2.0</ATTR> </DM> <DM NM="Quantum 27.3 GB SCSI" > <ATTR NM="WATTS">2.0</ATTR> </DM> </DP> <DP NM="MonitorsSelection"> <DM NM="15 Inch Monitor" > <ATTR NM="WATTS">1.0</ATTR> </DM> <DM NM="17 Inch Monitor" > <ATTR NM="WATTS">3.0</ATTR> </DM> <DM NM="21 Inch Monitor" ST="66" > <ATTR NM="WATTS">5.0</ATTR> </DM> </DP> </CONTROL_DATA> <NUMERIC_VALUES> <NUM NM="[_Application].WattsSummation" VL="7.0" > </NUM> </NUMERIC_VALUES> </CONFIGURATION>