parameterDescriptors[parentParameterDescriptors.length - 1] =
new ParameterDescriptor(ACTION, new ParameterMessage("control/action"), new URIValueDescriptor());
parameterDescriptors[parentParameterDescriptors.length ] =
new ParameterDescriptor(PARAMETER, new ParameterMessage("control/parameter"), new URIValueDescriptor());
parameterDescriptors[parentParameterDescriptors.length + 1] =
new ParameterDescriptor(VALUE, new ParameterMessage("control/value"), new AnyValueDescriptor(), new NullValue());
parameterDescriptors[parentParameterDescriptors.length + 2] =
new ParameterDescriptor(STATE, new ParameterMessage("control/state"), new StringValueDescriptor(new String[] {OPTIONAL_VALID_CONTROL, OPTIONAL_INVALID_CONTROL, OPTIONAL_CONTROL, REQUIRED_CONTROL, REQUIRED_VALID_CONTROL, REQUIRED_INVALID_CONTROL}), new StringValue(OPTIONAL));
try {
optionalFragment = getRequiredFragment(OPTIONAL_CONTROL + getName());