Builds a NamedObjectId. This is a bit more complex than it really
    should be. In Python (for convenience) we allow the user to simply address
    entries by their alias via the NAMESPACE/NAME convention. Yamcs is not
    aware of this convention so we decompose it into distinct namespace and
    name fields.

def _build_named_object_id(parameter):
    """
    Builds a NamedObjectId. This is a bit more complex than it really
    should be. In Python (for convenience) we allow the user to simply address
    entries by their alias via the NAMESPACE/NAME convention. Yamcs is not
    aware of this convention so we decompose it into distinct namespace and
    name fields.
    """
    named_object_id = yamcs_pb2.NamedObjectId()
    if parameter.startswith('/'):
        named_object_id.name = parameter
    else:
        parts = parameter.split('/', 1)
        if len(parts) < 2:
            raise ValueError('Failed to process {}. Use fully-qualified '
                             'XTCE names or, alternatively, an alias in '
                             'in the format NAMESPACE/NAME'.format(parameter))
        named_object_id.namespace = parts[0]
        named_object_id.name = parts[1]
    return named_object_id