BulkAttributeExposer expose all possible attributes

Related products: FME Form

BulkAttributeExposer: Expose all possible attributes, especially for JSON and XML when you don't know what's in your dataset.


Merged Ideas:

Expose Attributes from Feature Cache by denniswilhelm on October 20, 2019

I think it would be very handy if you could expose attributes from the feature cache. The main idea is that you would run a workspace once to build up your cache and use these features to get a list of possible attributes to be used in the AttributeExposer.

Especially when using a PythonCaller or a HTTPCaller that retrieves an arbitrary JSON structure, this would allow you to easily identify all required attributes.

What do you think?


Just show all without the need for a Data Inspector first.
I have hit problems when using the generic port on the featurereader and exposing the attributes. I would love an expose all transformer, it would make schemas a lot easier to work with.
No more dancing in the dark! 😉

This would also be very useful for the SQL executioner, you could then use SQL to bring bring back data, pre sorted by distance or and other field, and have SQL server do the bulk of the data extraction work rather then FME. Currently, the data comes back without any attributes.


The SQLExecutioner eh... now, that is a new concept for a transformer.

'


Yes, I would like this. But with a selection window. I have converted XML datasets with over 6000 attributes and do not want to expose all without the option of disabling those I do not need.


haha, ok spelt that wrong! but I would use that grpahic any way!


I like this idea, and agree that a selection window would be ideal.


This and/or a function for exposing attributes in python API please.



When implementing (the sooner the better) add (regex)filters
so I can suppress the fme_* attributes and filter the schema- attributes.


I would like an AttributeExposer that can optionally autopopulate with all available attributes when running the workspace. In other words, a transformer that scans the schema and adds all found attributes to the list (when set to 'record option'). Excluding fme_ and schema attributes would be helpful.


Would be a welcome addition to the workflow and increases options for dynamic workflows.


Exposing attributes was a really confusing concept to me while learning FME. This really should work the way described in this thread.


Hello, I would also like to be able to automagical populate the Attribute to Expose: Wherever Expose Attribute are in a transformer/s. Our example is KML files going through HTMLToXHTML then XHTMLQueryExtractor. We have anywhere from two to even 40 or 60 attribute to type or Paste in.


Any progress on this? Working with json from ArcGIS Portal and it would be really helpful in this case, not talking about asking it to explode all of the nested lists but say you want to explode one then write out all of its attributes without manually exposing - it would be great for that.


I like the idea of exposing the list of attributes.


Great news! This has been released in Tech Preview for 2020.1.
What you can expect: AttributeExposer

If you have caches available upstream of the AttributeExposer, you can now import cached attributes through the import wizard! No more manually typing or guessing what attributes to expose: They are available for you in the wizard, where you can pick and choose what you need.

 

 

If you do give this a try, please share your feedback here. There are ways we can push this functionality further, but we would love to hear your thoughts on where we could improve, what is working, what is not...All feedback welcome!

 

 

Happy FME-ing!

It would be great this functionality (import cached attributes) in the JSONFlattener and similar transformers for instance:

'>


hmm... installed this version, but I don't see where the magic happens as I suspect a BulkAttributeExposer..? @annabelleatsafe


Hi Harmen!

 

This capability is available when you run with feature caching enabled, and you are looking to expose attributes in the AttributeExposer, or when you are looking to select unique values in a Tester, TestFilter or conditional clause (for example, a conditional value in the AttributeManager). May I ask where you are trying to expose or select unique attribute values? If there is something not working for you, I would love to dig in further!

 


Awesome! really makes building a workflow with JSON and XML a lot better. No more typos! Thanks Safe for listening to the users!


Hi @annabellsafe - I think I still haven't figured out how this BulkAttributeExposer works. Have a look at my screenshot here: https://imgur.com/1Y63ouS So I have an IFC file that I read with the IFC with Data Views reader. In the feature information window I can see that my IFC file comes with dozens of custom attributes from the design software (which is ProVI in this case). When I have a look at the User Attributes of my feature BuildingElementProxy, those custom attributes from the IFC file are entirely missing.

 

So the way I handled this so far was to manually (!) expose all custom attributes (or properties) by c&p'ing the attributes from the feature information list into the Attribute Exposer (one by one...). I was hoping that I don't have to do this anymore with the BulkAttributeExposer (so that I can finally import my IFC file to an Esri GDB automatically!), but I just can't find this capability/transformer/option. I use FME 2020.1. Any hint?


In 2020, if you have featurecaching enabled you should be able to use the cache to populate the AttributeExposer. If you use the Import button in the bottom right of the attribute exposer you should have an Import from feature cache option


Yes I found this. But how to automate this BulkAttributeExposer with FME Server? I have to click Import from feature cache manually...


The new feature on the AttributeExposer is great. However like many of your transformers it has a list where you can only copy a single row at a time.

 

'>

Ideally it would have an option to copy the entire list to paste into a text editor, or a 'Copy as CSV'....or both.

'>

Anyway, still a great quality of life improvement when prototyping.