factory-ds to semantic