35         if ($parentEntity == 
null) {
    38                 $entityObject->getParentName() .
    39                 " not defined for Entity " .
    40                 $entityObject->getName() .
    47         if ($parentEntity->getParentName() !== 
null) {
    49                 "Cannot extend an entity that already extends another entity. Entity: " .
    50                 $parentEntity->getName() .
    57             print(
"Extending Data: " . $parentEntity->getName() . 
" => " . $entityObject->getName() . PHP_EOL);
    61         $newType = $entityObject->getType() ?? $parentEntity->getType();
    64         $referencedData = $parentEntity->getAllData();
    65         $newData = array_merge($referencedData, $entityObject->getAllData());
    68         $referencedLinks = $parentEntity->getLinkedEntities();
    69         $newLinkedReferences = array_merge($referencedLinks, $entityObject->getLinkedEntities());
    72         $referencedUniqueData = $parentEntity->getUniquenessData();
    73         $newUniqueReferences = array_merge($referencedUniqueData, $entityObject->getUniquenessData());
    76         $referencedVars = $parentEntity->getVarReferences();
    77         $newVarReferences = array_merge($referencedVars, $entityObject->getVarReferences());
    80         $unmatchedUniqueReferences = array_diff_key($referencedUniqueData, $entityObject->getUniquenessData());
    81         foreach ($unmatchedUniqueReferences as $uniqueKey => $uniqueData) {
    82             if (array_key_exists($uniqueKey, $entityObject->getAllData())) {
    83                 unset($newUniqueReferences[$uniqueKey]);
    89             $entityObject->getName(),
    95             $entityObject->getParentName()
    97         return $extendedEntity;
 extendEntity($entityObject)