public YElement processBookPartElement(Element jbookPart, YElement parent, NlmIdGenerator idGenerator) {
Element bpmeta = JDOMHelper.optDescendant(jbookPart, "book-part-meta");
YName bookPartName = y.canonicalName(YLanguage.Undetermined,
JDOMHelper.getTextTrim(JDOMHelper.optDescendant(bpmeta, "title-group", "title")));
Element eudmlIdEl = JDOMHelper.getChildWithGivenAttributeValue(jbookPart, "book-part-id", "pub-id-type", "eudml-id");
String eudmlId=eudmlIdEl==null?null:eudmlIdEl.getValue();
String id=idGenerator.getBookPartId(eudmlId, bookPartName.getText(), parent);
YElement bookPart = factory.element(HierarchyWithLevelIds.EXT_HIERARCHY_BOOK, NlmToYConstants.EXT_LEVEL_BOOK_BOOKPART, bookPartName, parent, id);
updater.updateElementIds(bpmeta, bookPart, "book-part-id");
updater.updateElementContentLinks(bpmeta, bookPart);
updater.updateElementPages(bpmeta, bookPart, HierarchyWithLevelIds.EXT_HIERARCHY_BOOK);
updatePartType(jbookPart, bookPart);
return bookPart;
}