make it possible to override data input content type from command-line or Ant task without breaking tests and violating the specifications
Followup to #112. The first four commits that were just a bit cleanup you did yourself already in the meantime. The last and main commit, I rebased onto the saxon97 branch. I didn't tried it right now, but the rebase went through without significant conflicts and it still compiles.
Can you provide a couple of examples of where you use forced-content-type? I'm wondering if override-content-type wouldn't be a better name (and more consistent with the developing XProc 3.0 specs).
Use-cases are as mentioned in the superseded PR. It allows the user to override the data input content type from the command-line or the Ant task explicitly. One usecase is to force the content being treated as text or force the content to being encoded with base64, if you simply manually know better than the detection or if the webserver sends a wrong content type which could pretty well happen out there.
The forced-content-type is just an internal name, I can change that to whatever you want.
User-facing it is called contentType in the Ant task or without actual name via command line as -d <contentType>@<port>=<uri>.
This is also how it is documented already since 6 years but actually not working. This is because in my PR #99 I already added this functionality including docu changes, but my implementation broke some test as the changes violated the spec. When accepting that PR, you left out these changes but kept the documentation changes. The original commit with the wrong implementation was f5bc23db295e92254a7116d944d2bdb8d885a994. I then created #112 with an alternative implementation that worked the same but did not break any test or violated the spec. So currently the code actually does not work like documented and these changes would bring those in line again.