Hello folks,
Well, did you notice the crossover between the FME World Tour and this quiz? Yes, the virtual events are posing a set of polls made up of questions mostly from this quiz.
I did notice a different answer in one of the questions yesterday. Don't hold it against me though!
What you didn't see there were any questions from this week's quiz! That's for obvious reasons. But did you still manage to get the correct answers and beat Roger? It was a close one. But let's see the answers first (don't scroll down and look at the result yet!)
Answers1) Which of these is NOT an ending to an FME transformer name?
- Finder
- Flipper
- Swapper
- Composer
- Forcer
We always start with an easy question, and this week was no exception. The only transformer we don't have is a Flipper. All of the rest are valid transformer names, like:
- NeighborFinder
- CoordinateSwapper
- GMLFeatureComposer
- 2DForcer
But no Flipper. Obviously we try to suit the action to the word, and the word to the action (as Hamlet put it) so I guess there are no data types that need flipping.
Roger's Answer: Flipper (Correct)
2) Which of these transformers does NOT appear in the word search pictured above?
- CurveFitter
- JSONFlattener
- RasterBandAdder
- GeometryFilter
- Counter
I hope this one wasn't too taxing. The answer is the GeometryFilter. Here's proof the others exist:
You may well have noticed that there are more transformers in the grid than I mentioned in the question. In all there are 15 transformers listed: the four above and 11 others. Can you find them?! It's made harder by the fact that some words are backwards or diagonal (how long did it take you find the CurveFitter?!)
I'll post the full list at the bottom of the page.
Roger's Answer: GeometryFilter (Correct)
3) I have a set of area features and want to find the perimeter length of each. Which is the first transformer to use?
- AreaCalculator
- GeometryCoercer
- LengthCalculator
- PerimeterReplacer
- StringLengthCalculator
Some of those transformers carry out measurements, others transform the data, perhaps in preparation for measuring. So which do we use? Do we need any preparation here?
No! No preparation is needed and we don't need to coerce the polygons to a line. If an area/polygon feature is fed into the LengthCalculator, it will return the perimeter of the feature. So the LengthCalculator is the first transformer - and the only transformer - that you'll need to use to get the correct answer.
Here's an example for a 10x10 square polygon:
The PerimeterReplacer is not a real transformer, by the way. The StringLengthCalculator... well, if you laid a piece of string around the polygon then it might help!
Roger's Answer: AreaCalculator (Incorrect)
4) The Junction transformer is quite unique in FME. But which of these facts is NOT true:
- It's the only transformer not to end in either "er" or "or"
- It doesn't appear in the Navigator window and you can't rename it
- Although you can't set a Group By, it is a group-based transformer
- Although you can't see them, its port names are called "Input" and "Output"
- It has the shortest entry in the FME Workbench Transformers documentation
This is one of those questions where I expect to be disproved in some way, but I'm 99% sure of my answers. I made this a "fun" question, by the way, because it's not really something you'd need to know to use FME (it's more useless trivia for when you are in a bar)!
The answer is that it's not a group-based transformer, but feature-based. It won't block features or hold them in memory. As to the other answers...
- Answer 1: I see no other transformer in my FME setup that doesn't end in er or or
- Answer 2: This is strangely true. It's actually built into the definition that this transformer can't be renamed and won't appear in the Navigator:
The Junction also doesn't have context menu options for Create Custom Transformer or Add Summary Annotation (though the shortcut keys still work). From the other options I don't think you can zoom to a junction, upgrade its version, or use the AutoConnect function on its attributes. Strange, but true.
- Answer 4: You can hover the mouse over the ports to see them:
- Answer 5: I figured it must be the shortest, just from reading the content. But to make sure I set up a workspace to read a list of transformers (TransformerListReader from the FME Hub) and ping a query off to the documentation web pages (HTTPCaller) using this URL:
http://docs.safe.com/fme/2020.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/@LowerCase(@Value(TransformerName)).htm
A StringLengthCalculator calculated the length of each response_body attribute, giving me the following:
- Junction: 14,671 characters
- KinesisReceiver: 32,024
- TextLocationExtractor: 34,662
- GeometryRemover: 34,987
- FeatureHolder: 35,143
- CoordinateSystemRemover: 35,241
- GeometryRefiner: 35,451
- VertexCounter: 35,965
- UUIDGenerator: 36,034
- Triangulator: 36,201
So the Junction is the shortest documentation by quite a lot. Incidentally, I think a lot of those characters are HTML code, but I couldn't be bothered strip it all out, and it's probably the same length for each page anyway.
Who knew the Junction transformer was so interesting?!
The longest documentation? I could keep that for another day, but I won't. The answer is the RasterConvolver. And it's not close, either. It's about 50% larger than the next largest (RasterRegister).
Eight of the top ten transformers with the most documentation are raster transformers. Make of that what you will!
Roger's Answer: It has the shortest documentation (Incorrect)
5) Which of these transformers is the odd-one out?
- InlineQuerier
- MapnikRasterizer
- RCaller
- FeatureWriter
- S3Connector
Roger puzzled his way through this one and finally got the right answer: the S3Connector. However, I don't know if it was for the right reason, which is that all of the others have dynamic input ports; you can join a connection to it and it creates a new input port just for that connection, like so:
The S3Connector does not allow that (does not need that, in fact).
Roger's Answer: S3Connector (Correct)
6) I ran a scan of my workspaces to see which transformer is used most in my work. Which of them do you think I used the most?
- AttributeCreator
- Creator
- FeatureMerger
- Inspector
- Tester
This is the "Impossible" question. You don't think it would be the Tester, do you? It was in fact, the AttributeCreator. If I wanted to be click-baity, I would now say:
Here's my top-ten transformer list: You'll never guess which transformer is #2!
I don't think I would have ever guessed the Junction for #2, but there you go. I guess I use it more than I thought.
Roger's Answer: Tester (Incorrect)
ScoresLet's see the general quiz info and scores:
- Quiz Week: 22 (Apr 3/2020)
- Number of Entries: 31
- Best Score: 5
- Worst Score: 0
- Average Score: 2.97
- Perfect Scores: 0
- Easiest Question: 1 (28)
- Hardest Question: 6 (6)
Well that was a tough week. Roger scored 3, so what's the result...
- Beat Roger: 13
- Equalled Roger: 6
- Were Beaten by Roger: 12
Ooooh. That couldn't have been any closer. But tough luck, Roger. The overall score is now...
- Users 10 Safers 6
To finish up, here's your league table, which has had a big change at the top:
And here's the Safer table, with Roger slotting into the midfield:
Where am I going to find another Safe winner from?
Word Search Transformer ListThe full list of transformers (with a hint to their direction) is:
- Extruder (reads West to East)
- AreaCalculator (W-E)
- Counter (W-E)
- CurveFitter (NE-SW)
- DGNStyler (W-E)
- Affiner (N-S)
- AttributeFilter (W-E)
- Cloner (E-W)
- FTPCaller (E-W)
- Inspector (W-E)
- Sampler (E-W)
- RasterBandAdder (E-W)
- SchemaMapper (W-E)
- JSONFlattener (N-S)
- AggregateFilter (E-W)