@classmethod
def from_string(cls, s, offset=0):
    """ Parse a `Tag` definition from `s` at `offset` (default `0`).
    """
    tag, post_offset = cls.parse(s, offset=offset)
    if post_offset < len(s):
        raise ValueError('unparsed text after Tag %s: %r' % (tag, s[
            post_offset:]))
    return tag
