public 
    void removeDataFromEntity(
            final long someEntityId, Class<? extends Data> someDataType )
            throws NoSuchEntityException,
                   NoSuchDataException,
                   NoSuchDataOnEntityException {
        //
        DataCore db = _dataCenter.getDataCore();

        //check whether there is an entity registered with the given id
        if( ! db.getEntity_Data_Table().containsKey( someEntityId ) ) {
            //if not throw an exception
            throw new NoSuchEntityException( someEntityId );
        }

        //check whether this entity holds the given type of data
        if( ! db.getData_Entity_Table().containsKey( someDataType ) ) {
            //if not throw an exception
            throw new NoSuchDataException( someDataType, someEntityId );
        }

        //checks whether the given type of data is properly wired with the
        //given entity
        if( ! db.getData_Entity_Table()
        		.get( someDataType )
        		.contains( someEntityId ) ) {
            //if not, throw an exception
            throw new NoSuchDataOnEntityException( someDataType, someEntityId );
        }

        //remove the entity from the data table
        db.getData_Entity_Table().get( someDataType ).remove( someEntityId );
        //remove the data from the entity table
        db.getEntity_Data_Table().get( someEntityId ).remove( someDataType );

    }