<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def child(name, source=None, view=None, model=None, enabled=None, fetch=None, browse=None, label=None, desc=None, meta=None):
 """ Annotate a sub-model to the one being defined. @param name: item name unique for the model being defined. @type name: str or unicode @param source: an effect to retrieve the sub-model source or None to use the same source; see feat.models.call for effect information. @type source: callable or None @param view: view value or an effect to retrieve it; see feat.models.call for effect information. @type view: callable or object() @param model: the model identity, model factory or effect to get it, or None to use IModel adapter. @type model: str or unicode or callable or IModelFactory or None @param enabled: an effect defining if the model is enabled @type enabled: bool or callable @param browse: an effect filtering the source when browsing to child. @type browse: callable @param fetch: an effect filtering the source when fetching child. @type fetch: callable @param label: the sub-model label or None. @type label: str or unicode or None @param desc: the description of the sub-model or None if not documented. @type desc: str or unicode or None @param meta: model item metadata atoms. @type meta: list of tuple """

    _annotate("child", name, source=source, view=view, model=model,
              enabled=enabled, fetch=fetch, browse=browse,
              label=label, desc=desc, meta=meta)