Hi Simon,

When you're using attributes that end in braces {} these are known as
lists in FME, and are a very powerful construct.  There are many
transformers that can generate lists after grouping operations, and
there are many other transformers (with List in their name) that are
specifically for list manipulation.  Individual elements in lists can be
exposed one element at a time by right-clicking on the list attribute
name under a transformer and choosing "Expose Element".

In your specific case, I would run the Roads data through an
AttributeRemover, only keeping ROAD_ID and NETWORKMEMBER{}.  Then I
would use a ListExploder to generate individual rows for each list item.

Jason

-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of
jusiheap
Subject: [fme] Translating feature attributes with multiple values

I've just started a 14-day evaluation of FME, and would appreciate any
quick help on this subject to avoid me spending the whole period
trawling in vain through manuals and user groups.

I'm translating from GML to Oracle 8i (attributes only), and I'm only
interested in a small number of features (Roads, RoadLinks and RoadNodes
to be precise). It all works fine up to a point, in that I can easily
import from a GML file and see the corresponding Oracle tables get
populated. Thus, for example, it will populate an Oracle table ROADS
whose contents have a one-to-one mapping with the Road features in the
source GML.

The question I have concerns what to do about feature attributes that
represent multiple values. For example, the Road feature in the source
dataset has an attribute NetworkMember{}, which represents 0..n values.
At the moment, my translation does nothing with this attribute - that
is, in the destination Oracle table there is a column NETWORKMEMBER{}
which is always null regardless of the fact that the source data
generally contains >0 values.

General question: How do I copy the multiple values across to the
destination dataset?
Specific question: I really want to translate an attribute like this
into a separate Oracle table of its own, to give me a better 'RDBMS-
type' view of the source data. Thus, rather than the single feature
attribute being mapped to a single Oracle table column, a new table
(e.g. ROAD_NETWORK_MEMBER) would be used to represent this multiplicity
(e.g. with columns ROAD_ID, NETWORK_MEMBER). Can I do this? If so, how?

Apologies for any non-standard terminology. Any advice gratefully
received.

Thanks
Simon




Join us at the FME Worldwide User Conference Sept. 21-22, 2006 Vancouver BC 
Canada. For more information, visit www.safe.com/2006uc.   
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/fme/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to