@SuppressWarnings("unchecked")
protected static void loadSchema(ExportedDocument xdoc, Schema schema, DocumentModel doc, Element schemaElement) {
String schemaName = schemaElement.attributeValue(ExportConstants.NAME_ATTR);
Map<String, Object> data = new HashMap<>();
Iterator<Element> it = schemaElement.elementIterator();
while (it.hasNext()) {
Element element = it.next();
String name = element.getName();
Field field = schema.getField(name);
if (field == null) {
throw new NuxeoException(
"Invalid input document. No such property was found " + name + " in schema " + schemaName);
}
Object value = getElementData(xdoc, element, field.getType());
data.put(name, value);
}
doc.setProperties(schemaName, data);
}