If a FeatureWriter is set to write dynamically, then the port which accepts the schema features should be a dedicated schema port, and not the main port that handles the features to be written.
This is the design the FeatureReader transformer uses, and more recently the SQLCreator, to have a dedicated schema port. Dynamic writing can be done either by having a schema feature enter the writer before the features to be written, or by having each feature carry schema list attributes that describe how it should write. Potentially adding a schema port would make that second dynamic write pattern unviable, but we have tools now like the SchemaScanner to produce a schema feature for any workflows which would need to change from this.
Also there are occasionally bugs where the writer tries to write out the schema feature, or schema attributes. Recently in 2023, a GDB writer will warn you that the schema attributes need to be renamed to follow GDB field name restrictions.
It would be much more consistent design, and easier to teach how dynamic writing works if the FeatureWriter had a schema port to receive the schema. It only needs to appear when the write mode is set to dynamic.




