} else {
dataFieldsType = wrapperSchemaComplexType;
}
Result result = new Result(elementName, rowName, namespace, null, DBConstants.ResultTypes.XML);
OutputElementGroup defGroup = new OutputElementGroup(null, null, null);
XmlSchemaObjectCollection dataSchemaObjects = getSchemaObjectsFromComplexType(dataFieldsType);
int count = dataSchemaObjects.getCount();
XmlSchemaObject sequenceDataObject;
XmlSchemaElement sequenceDataElement;
XmlSchemaAttribute sequenceDataAttr;
for (int i = 0; i < count; i++) {
sequenceDataObject = dataSchemaObjects.getItem(i);
if (sequenceDataObject instanceof XmlSchemaElement) {
sequenceDataElement = (XmlSchemaElement) sequenceDataObject;
if (!(sequenceDataElement.getSchemaType() instanceof XmlSchemaSimpleType)) {
throw new DataServiceFault(
"Xmlschema sequence's data fields at the out message of the operation '"
+ axisOperation.getName() +
"' should only contain xml elements with simple types");
}
defGroup.addElementEntry(new StaticOutputElement(dataService,
sequenceDataElement.getName(), sequenceDataElement
.getName(), sequenceDataElement.getName(),
DBConstants.DBSFields.COLUMN,
DBConstants.DBSFields.ELEMENT, namespace,
sequenceDataElement.getSchemaTypeName(),
new HashSet<String>(), DBConstants.DataCategory.VALUE,
DBConstants.ResultTypes.XML, null, ParamValue.PARAM_VALUE_SCALAR));
} else if (sequenceDataObject instanceof XmlSchemaAttribute) {
sequenceDataAttr = (XmlSchemaAttribute) sequenceDataObject;
defGroup.addElementEntry(new StaticOutputElement(dataService,
sequenceDataAttr.getName(), sequenceDataAttr
.getName(), sequenceDataAttr.getName(),
DBConstants.DBSFields.COLUMN,
DBConstants.DBSFields.ATTRIBUTE, namespace,
sequenceDataAttr.getSchemaTypeName(),