def _register_properties(cls, namespace):

        # e.g. age = Integer()
        for key in namespace: # Python 3
            value = namespace[key]

            assert key not in cls._properties, \
                "Can't redefine Property '%s'" % key

            if isinstance(value, Property):
                property_instance = value  # for clarity
                cls._properties[key] = property_instance
                cls._set_property_name(key,property_instance)
                cls._initialize_property(key,property_instance)
                # not doing this b/c some Properties are calculated at savetime
                #delattr(cls, key)
Object that understands versioning for a package
dataset/ETHPy150Open espeed/bulbs/bulbs/model.py/ModelMeta._register_properties--crossover with--dataset/ETHPy150Open blue-yonder/pyscaffold/pyscaffold/contrib/pbr/pbr/version.py/VersionInfo.__init__