Using transformers to modify data.
Recently active
I am having some difficulty normalizing reverse geocodes for comparison from one Geocoding Service to another (in this case OpenStreetMap). The _address that is returned can pretty easily split up into a list or separate attributes with most services as they are consistent. However, OSM’s _address has extra information and parsing it to be consistent with anything else has been a challenge. See below where instead of having an AddressNumber, a null, or a 0, I get Falmouth Public Schools & Moonlight Meadery in the 1st position. For that matter, I sometimes get supplementary place names such as Seaport & South Boston when expecting a Town in a particular separation/position. So it throws off looking in any specific list due to the inconsistent placement.Some are normal, but many either don’t contain the expected info, or add info that is unnecessary for my needs.What I want to make into attributes: AddressNumber Street Town State ZipCodeOpenStreetMap gives me this in a te
Hi everyone,I’m running into an issue when using the FeatureReader transformer.When I read a table through the FeatureReader, the attributes are not exposed However, if I read the same table directly using a normal FME reader (through SDE or GDB), all the attributes are properly exposed.Is there a setting I’m missing with the FeatureReader that prevents the attributes from being available? Or is this expected behavior when using it compared to a standard reader?Thanks in advance for any advice!
Hello my fellow FME’ers,Probably I'm missing something or I stumbled upon a bug, but I can't get something to work like I expect. Maybe someone can point out what I'm missing. Workspace snippetMy data is going trough a Matcher to find features that belong to the same object. I then sort them on _match_id and an attribute called lighted. Result of Sorter_4As a result I have something above. If lighted is null it will be the first feature.In the AttributeManager I use Adjacent Features to look 1 feature further and have the following condition statement for a new attribute called _filter. The second one is another attempt to get the same result, but that also doesn't work. Conditional statement Alternative conditional statement I triedI expect the two <null> values in the screenshot above to get the value ‘yes’, but it doesn't. What am I missing here?
Hello,I have been looking for ways to convert multi-point geometries to lines but havent been 100% successful so far. Given is a data set consisting of multi-point geometries identified by a unique key and various attributes.Its a straightforward matter when the sequence of points forms a linear shape:Deaggregate the multi-point geometries and feed the single points to a line builder which groups the lines by the unique key. However it is not so straightforward when the points form an arc.In these cases the line builder creates shapes resembling spider webs rather than arcs.I tried various ways to sort the points spatially (e.g. with the spatial sorter) to better set up the line builder but so far without much success.Can you think of other ways to deal with this kind of case? Kind regardsRicky
Good morning, friends. I have the following FMW. I want to cut the different geopack entries so that the top one cuts the one immediately below, creating a sort of pyramid that corresponds to the building's heights. I don't know what I have wrong with the custom transformer.In this case, there are this number of heights; in others, there are more or less, meaning they vary.Thank you.
Hi,I’m having trouble with AmazonBedrockConnector and I believe it’s an error with how the transformer has been authored.The issue is that the transformer processes and outputs the square of the number of input records. If I input 13 records, it will process 169 (to AWS Bedrock!), and then output them. If I input 313 records, it will attempt to process and return 97,969 records (I’ve found this out the hard way).By embedding the transformer and then editing it, I was able to view the flow of information from a source workspace. The issue seems to be in the calling and validation of AWS Inference Profiles, in that they are checked to be active, and then joined back to the original input records (obviously to allow error checking and rejection). As downloaded, the transformer looks like this:Note that the 13 input records are joined back against each other to create 169 records that are ulimately sent to the Bedrock API. I can see no valid reason to keep all of the original records out o
FME can currently read from Autodesk Recap RCP and RCS files ?
I am testing the OGCAPI of the Norwegian Mapping Authority (https://ogcapitest.kartverket.no/rest/services/havnedata/collections). It provides five different coordinate reference systems. http://www.opengis.net/def/crs/OGC/1.3/CRS84http://www.opengis.net/def/crs/EPSG/0/5973http://www.opengis.net/def/crs/EPSG/0/25833http://www.opengis.net/def/crs/EPSG/0/4326http://www.opengis.net/def/crs/EPSG/0/3857 The OGC API – Features Quick Facts suggests that the OGCAPI feature reader supports coordinate systems. The reader seems to default to WGS84. How can I choose a diffrent CRS in the OGC-API reader? The call would be like "http://www.opengis.net/def/crs/EPSG/0/5973&limit=2" alt="https://ogcapitest.kartverket.no/rest/services/havnedata/collections/fender/items?crs=https://ogcapitest.kartverket.no/rest/services/havnedata/collections/fender/items?crs=http://www.opengis.net/def/crs/EPSG/0/5973" ... but how can one provide the crs information in the reader? Thank you.
I have a table that I need to export to an Excel file. To this file I want to apply some styling. I’ve written a Python script that works well: it uses a FeatureWriter followed by a PythonCaller, and the result is an Excel file with the desired formatting, including filters, colors, and so on.Now I’d like to split this Excel output using a fanout expression, which generates 23 separate Excel files. Each of these files should then be processed by the PythonCaller. However, that’s where things go wrong — the process seems to get stuck. I’m using the _dataset variable from the Summary output port of the FeatureWriter as the location for the Excel files, which the PythonCaller should loop through.Is there something I might have overlooked?
I have tried using the online tool but not having any luck. Could anyone show me how to get this into FME? How does someone get this built as a coordiante system in FME
I have line segments (vertex only a beginning and end) and want to create polygons for each (including their attributes). The line segments represent a span between utility structures in a right of way. The goal is create the polygon geometry per span and calculate the acreage in each. The Bufferer works great when the line segments are straight, but when a turn is introduced, I get slivers and overlaps as seen in this screenshot:Notice the overlaps and slivers where the line turns Bufferer Parameters:Bufferer parameters To visualize what I’m trying to create - here is a mock up of where I want the polygons split (red lines were drawn in by me and the green polygon is just a buffer of the dissolved line segments). The centerline represents the spans.Red lines = where I want the polygons split Doesn't sound too crazy but it’s kicking by butt at the moment. Any idea or suggestions?
I want to upload some files for a specific workbench using HTTP.I'm using Python for this with requests library, but I'm having difficulty getting it to work.My python code is as follows: with open(file_path, 'rb') as file: url = f"{fme_url}/fmedataupload/{script_location}" data = { 'custom_file': { 'value': file.read(), 'options': { 'contentType': 'application/octet-stream', 'filename': file_name, } }, 'opt_namespace': directory, 'opt_fullpath': True } token = get_token() headers = { 'content-type': 'application/x-www-form-urlencoded', 'Authorization': f"fmetoken token={token}", } return requests.post(url, data=data, headers=headers, json=True)I do get a 200 OK response, so authorization is fine, but the file isn't uploaded.It even creates a directory at the right spot.The response is as
Hi folks,Trying my hand at a workflow that takes certain records from a GIS feature class and writes them into a Spreadsheet XLSX (2025 Work Plan). I’ve renamed the attributes from the GIS feature class schema to match the relevant fields in the 2025 Work Plan Spreadsheet with no issues. When I examine them, they look good in the table.The Spreadsheet has certain Excel-only fields that are not included in the GIS feature class. What I am finding is that while the information is being translated into the 2025 Work Plan Excel Sheet, it is also writing the remainder of the fields from the GIS feature class into columns in the 2025 Work Plan Excel Sheet that are Excel-only.This is despite trying to remove the excess fields in the Writer. And even mapping the fields directly to the corresponding fields in the Excel Writer. I had tried experimenting with the ‘Update’ parameter rather than Insert, but that caused errors.Are there any suggestions to ensure only the specified GIS fields are wri
Hello, I am trying to extract html tags from an attribute, however the documentation is very unclear and need further guidance.Page: https://docs.safe.com/fme/html/FME-Form-Documentation/FME-Transformers/Transformers/htmlextractor.htmStates: “In the HTMLExtractor, a query is constructed to find the div tag with the id “article” (CSS Selector = #article). The contents of that tag will be extracted (Tag Part/HTML Attribute = Value), and output to the new attribute articleText.”Where is the mapping document that maps FME CSS selector ‘ids’ to html tags? I am trying to extract <br>, what should the CSS selector for this be? Using “br” as the selector and then using a list exploder produces an attribute with empty fields.
Hello,I am currently learning how FME handles IFC HVAC structures and have been using some sample files from the RWTH-E3D DigitalHub repository (https://github.com/RWTH-E3D/DigitalHub) for my tests.While doing this, I'm having trouble getting FME to read all the features and their geometry correctly. The IFC file itself appears to be valid, as it displays correctly in an external IFC viewer like BimVision. (filename: DigitalHub_FM-HZG_v2.ifc)Here you can see the full HVAC system with pipes, tanks, pumps, etc.However, when I bring it into FME, I get incomplete results, and the behavior is different depending on the version I use.1. With FME(R) 2025.1.1.0 (Build 25615):The reader fails to read most features. The feature count for IfcPipeSegment, IfcTank, IfcPump, etc., is 0. The FME Inspector confirms that nothing is read.2. With FME(R) 2025.0.3.0 (Build 25241):This older version is partially successful:It correctly reads features like IfcPipeSegment and IfcTank with their geometry.Howev
In an Esri SDE database, fields (attributes) have a property setting of isNullable (Allow NULL). This property determines if the field allows null values or not. I want to be able to set this property in FME when I create a new feature class. Is there a way to set this property with the Esri Geodatabase SDE writer? See screenshot below to see how to set the setting in ArcGIS Pro.
I can't remove the "issue." fields. I tried deleting them with Attribute Manager and AttributeRemove without success. Could someone tell me how to do this deletion?
Hi everyone, I'm working on an FME workflow that needs to process multiple Shapefiles. The challenge is that these files come with different schemas (different attributes, attribute names, etc.). I’ve noticed that transformers like DuplicateFilter, AttributeExposer, DatetimeConverter, SchemaMapper... don’t handle these schema changes dynamically. That means every time a new Shapefile with a different schema is added, I have to manually update these transformers to accommodate the changes. Is there a way to make this process more dynamic, so the workflow can adapt automatically to different input schemas without manual intervention each time? Any tips or suggestions would be greatly appreciated! Thanks in advance!
I have a process that downloads groups of shapefiles of the same schema to a folder from a google bucket. I am trying to read in those shapefiles with a feature reader so that I can add an attribute containing the shapefiles name. Then I want to write all those shapefiles to a singe feature class in a geodatabase. How would I set up my featurereader so I can create and write that attribute in all those shapefiles before writing to the feature class?
Hi, I’m using XSDDrivenXMLWriter to write very dynamic XML to a file. There is one part of the xml with a lot of features that is very static and contains always the same data like origin and publisher… I don’t want to create all the 30 features with the XSDDrivenXMLWriter for this static part and thought I could use the _XML_FRAGMENT_ feature and 3 attributes like xml_fragment, xml_document_append_path and xml_document_append_as to tell the XSDDrivenXMLWriter to add my static xml to the output. But somehow I can’t get it working.Can you please provide me an example workspace? Unfortunately I cannot provide my workspace because it is restricted by the customer.Many thanks.
For years I’ve successfully used the Geocoder transformer with the ArcGIS Online service. Now with the recent upgrade to Version 2025, it appears to be broken. I’ve read a bunch of recent articles concerning the new (?) ArcGIS connector package, but nothing seems to relate to the Geocoder transformer. Anyone else having similar problems?
The texture image displayed by the Appearance Setter converter is correct, but the texture map written in 3dtile format is incorrect. It should be due to the loss of texture coordinates. When will 3dtiles improve? Currently, it can only be used simply
I’m using the SchemaMapper and I have a question. After transforming the data, I noticed that in the 'Unexposed Attributes' section, the attributes are correctly mapped, but in the resulting table, the attributes still appear without the mapping. Does anyone know how to ensure that the attributes, after passing through the SchemaMapper, show up correctly mapped in the final table? Is there any additional configuration needed?
I’m trying to query data from BigQuery using the GoogleBigQueryConnector and get a ‘Failed to get authorization header’ error message when trying to select a project. FME has been given access to my Google account to view and manage data in BigQuery.