<
xs:element
name
="
capability
"
type
="
MCapability
">
<
xs:key
name
="
capa_capability_name
">
<
xs:selector
xpath
="
capabilities/capability
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_belief_name
">
<
xs:selector
xpath
="
beliefs/belief|beliefs/beliefset|beliefs/beliefref|beliefs/beliefsetref
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_belief_key
">
<
xs:selector
xpath
="
beliefs/belief|beliefs/beliefref
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_beliefset_key
">
<
xs:selector
xpath
="
beliefs/beliefset|beliefs/beliefsetref
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_goal_name
">
<
xs:selector
xpath
="
goals/performgoal|goals/achievegoal|goals/querygoal|goals/maintaingoal|goals/metagoal|goals/performgoalref|goals/achievegoalref|goals/querygoalref|goals/maintaingoalref|goals/metagoalref
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_plan_name
">
<
xs:selector
xpath
="
plans/plan
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_internalevent_name
">
<
xs:selector
xpath
="
events/internalevent|events/internaleventref
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_messageevent_name
">
<
xs:selector
xpath
="
events/messageevent|events/messageeventref
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:keyref
name
="
capa_belief_trigger
"
refer
="
capa_belief_name
">
<
xs:selector
xpath
="
plans/plan/trigger/factchanged
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_beliefset_trigger
"
refer
="
capa_beliefset_key
">
<
xs:selector
xpath
="
plans/plan/trigger/factadded|plans/plan/trigger/factremoved
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_goal_trigger
"
refer
="
capa_goal_name
">
<
xs:selector
xpath
="
plans/plan/trigger/goalfinished|plans/plan/trigger/goal|plans/plan/waitqueue/goalfinished|goals/metagoal/trigger/goalfinished|goals/metagoal/trigger/goal
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_internalevent_trigger
"
refer
="
capa_internalevent_name
">
<
xs:selector
xpath
="
plans/plan/trigger/internalevent|plans/plan/waitqueue/internalevent|goals/metagoal/trigger/internalevent
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_messageevent_trigger
"
refer
="
capa_messageevent_name
">
<
xs:selector
xpath
="
plans/plan/trigger/messageevent|plans/plan/waitqueue/messageevent|goals/metagoal/trigger/messageevent
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_inhibits_reference
"
refer
="
capa_goal_name
">
<
xs:selector
xpath
="
goals/performgoal/deliberation/inhibits|goals/achievegoal/deliberation/inhibits|goals/querygoal/deliberation/inhibits|goals/maintaingoal/deliberation/inhibits|goals/metagoal/deliberation/inhibits|goals/performgoalref/deliberation/inhibits|goals/achievegoalref/deliberation/inhibits|goals/querygoalref/deliberation/inhibits|goals/maintaingoalref/deliberation/inhibits|goals/metagoalref/deliberation/inhibits
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_capability_reference
"
refer
="
capa_capability_name
">
<
xs:selector
xpath
="
configurations/configuration/capabilities/initialcapability
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_belief_reference
"
refer
="
capa_belief_key
">
<
xs:selector
xpath
="
configurations/configuration/beliefs/initialbelief
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_beliefset_reference
"
refer
="
capa_beliefset_key
">
<
xs:selector
xpath
="
configurations/configuration/beliefs/initialbeliefset
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_goal_reference
"
refer
="
capa_goal_name
">
<
xs:selector
xpath
="
configurations/configuration/goals/initialgoal|configurations/configuration/goals/endgoal
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_plan_reference
"
refer
="
capa_plan_name
">
<
xs:selector
xpath
="
configurations/configuration/plans/initialplan|configurations/configuration/plans/endplan
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_internalevent_reference
"
refer
="
capa_internalevent_name
">
<
xs:selector
xpath
="
configurations/configuration/internalevents/initialinternalevent|configurations/configuration/internalevents/endinternalevent
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_messageevent_reference
"
refer
="
capa_messageevent_name
">
<
xs:selector
xpath
="
configurations/configuration/messageevents/initialmessageevent|configurations/configuration/messageevents/endmessageevent
"/>
<
xs:field
xpath
="
@ref
"/>
</
xs:keyref
>
<
xs:key
name
="
capa_component_name
">
<
xs:selector
xpath
="
componenttypes/componenttype
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_providedservice_key
">
<
xs:selector
xpath
="
services/providedservice
"/>
<
xs:field
xpath
="
@name|@class
"/>
</
xs:key
>
<
xs:unique
name
="
capa_providedservice_name
">
<
xs:selector
xpath
="
services/providedservice
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:unique
>
<
xs:key
name
="
capa_requiredservice_name
">
<
xs:selector
xpath
="
services/requiredservice
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:key
name
="
capa_property_name
">
<
xs:selector
xpath
="
properties/property
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:key
>
<
xs:keyref
name
="
capa_component_reference
"
refer
="
capa_component_name
">
<
xs:selector
xpath
="
configurations/configuration/components/component
"/>
<
xs:field
xpath
="
@type
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_providedservice_reference
"
refer
="
capa_providedservice_key
">
<
xs:selector
xpath
="
configurations/configuration/services/providedservice
"/>
<
xs:field
xpath
="
@name|@class
"/>
</
xs:keyref
>
<
xs:keyref
name
="
capa_requiredservice_reference
"
refer
="
capa_requiredservice_name
">
<
xs:selector
xpath
="
configurations/configuration/services/requiredservice
"/>
<
xs:field
xpath
="
@name
"/>
</
xs:keyref
>
</
xs:element
>