*predicate = '\0';
sscanf(spec, "%63[^[]%c%63[^]]", elem, &dummy_ch, predicate);
if (data1_matchstr(elem, tag ? tag->value.string : c->u.tag.tag))
*predicate = '\0';
sscanf(spec, "%63[^[]%c%63[^]]", elem, &dummy_ch, predicate);
if (data1_matchstr(elem, tag ? tag->value.string : c->u.tag.tag))