Collection<ItemDefinitionData> mandatoryItemDefs =
session.getWorkspace().getNodeTypesHolder().getManadatoryItemDefs(nData.getPrimaryTypeName(),
nData.getMixinTypeNames());
for (ItemDefinitionData itemDefinitionData : mandatoryItemDefs)
{
ItemType itemType = itemDefinitionData.isNodeDefinition() ? ItemType.NODE : ItemType.PROPERTY;
if (getItemData(nData, new QPathEntry(itemDefinitionData.getName(), 0), itemType) == null)
{
throw new ConstraintViolationException("Mandatory item " + itemDefinitionData.getName()
+ " not found. Node [" + nData.getQPath().getAsString() + " primary type: "
+ nData.getPrimaryTypeName().getAsString() + "]");