Component: create subclasses from Component classes with facets