Is there a way to extract a specific part of an aggregate by it's index other than deaggregating and testing the resulting features to find the one where _part_number = index.
I'm thinking there might be a way to use XQuery/GeometryPartExtractor
This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.
Not really an answer as its just a different way of doing it, but what about using the GeometryExtractor to record the geometry as an attribute,before the aggregation (assuming you are doing this in a step prior) and then just using a ListIndexer and a GeometryReplacer to get the specific geometry you want.
Not really an answer as its just a different way of doing it, but what about using the GeometryExtractor to record the geometry as an attribute,before the aggregation (assuming you are doing this in a step prior) and then just using a ListIndexer and a GeometryReplacer to get the specific geometry you want.
I have done that in the past, when I was creating the aggregate at a prior stage in the workflow.
In this particular case, the data input is already aggregated.
Hi @jdh, yes, you can use the GeometryPartExtractor (Advanced Editor). This is a possible syntax if the input geometry is a one level aggregate or a Multi geometry. Just be aware that a part of the aggregate has to be specified with 1-based index.
(: extract the 2nd part from a one level aggregate or a multi :) number(/geometry/geometry[2]/@fme_id)
Hi @jdh, yes, you can use the GeometryPartExtractor (Advanced Editor). This is a possible syntax if the input geometry is a one level aggregate or a Multi geometry. Just be aware that a part of the aggregate has to be specified with 1-based index.
(: extract the 2nd part from a one level aggregate or a multi :) number(/geometry/geometry[2]/@fme_id)
Hi @jdh, yes, you can use the GeometryPartExtractor (Advanced Editor). This is a possible syntax if the input geometry is a one level aggregate or a Multi geometry. Just be aware that a part of the aggregate has to be specified with 1-based index.
(: extract the 2nd part from a one level aggregate or a multi :) number(/geometry/geometry[2]/@fme_id)
Minor issue with the advanced editor, when you reference a feature attribute using the left panel it does not wrap the attribute name in quotes as required.
{fme:get-attribute(x)} instead of {fme:get-attribute("x")}
Minor issue with the advanced editor, when you reference a feature attribute using the left panel it does not wrap the attribute name in quotes as required.
{fme:get-attribute(x)} instead of {fme:get-attribute("x")}
yeah, have to say it's a kind of bug. @daleatsafe, please fix it.