}
treeNodes = model.selectTreeNodes(context.expand(scp.getXpath()));
if (treeNodes.length > 0) {
XmlTreeNode mynode = treeNodes[0];
if (mynode.isLeaf()) {
if (mynode.getSchemaType() != null && mynode.getSchemaType().getEnumerationValues() != null
&& mynode.getSchemaType().getEnumerationValues().length > 0) {
EnumerationValues nodeInfo = new EnumerationValues(mynode.getSchemaType().getBaseType()
.getShortJavaName());
for (XmlAnySimpleType s : mynode.getSchemaType().getEnumerationValues()) {
nodeInfo.addValue(s.getStringValue());
}
updateEnumNodeValue(mynode, nodeInfo);
stsmap.put(scp.getLabel(), mynode.getNodeText());
// addToUpdated( context, scp.getLabel(),
// mynode.getNodeText() );
if (strategy.equals(StrategyTypeConfig.ONE_BY_ONE)) {
PropertyMutation pm = new PropertyMutation();
pm.setPropertyName(scp.getName());
pm.setPropertyValue(model.getXmlObject().toString());
stsmap = new StringToStringMap();
stsmap.put(scp.getLabel(), mynode.getNodeText());
pm.setMutatedParameters(stsmap);
addMutation(context, pm);
}
} else {
SchemaTypeImpl simpleType = (SchemaTypeImpl) mynode.getSchemaType();
XmlObjectTreeModel model2 = new XmlObjectTreeModel(simpleType.getTypeSystem(),
simpleType.getParseObject());
extractRestrictions(model2, context, mynode, model, scp, stsmap);
}
}