Create a model database object from a given Json document.

        Parameters
        ----------
        document : JSON
            Json representation of the object

        Returns
        ModelHandle

def from_json(self, document):
        """Create a model database object from a given Json document.

        Parameters
        ----------
        document : JSON
            Json representation of the object

        Returns
        ModelHandle
        """
        # The timestamp is optional (e.g., in cases where model definitions are
        # loaded from file).
        if 'timestamp' in document:
            timestamp = datetime.datetime.strptime(
                document['timestamp'],
                '%Y-%m-%dT%H:%M:%S.%f'
            )
        else:
            timestamp = None
        # Create handle for database object
        return ModelHandle(
            document['_id'],
            document['properties'],
            [AttributeDefinition.from_json(el) for el in document['parameters']],
            ModelOutputs.from_json(document['outputs']),
            timestamp=timestamp
        )