- XML (Extensible Markup Language) Reader/Writer
- XML Quick Facts
- Workbench XML Reader Parameters
- Workbench XML Writer Parameters
- Feature Representation
- Mapping File Reference
- xfMap
- Reading the Input XML Document
- Mapping Rules
- Types of Mapping Rules
- Match and Except Expression
- Specifying Several Match Expressions for One Mapping Rule
- Limiting Mapping Rule Activation with Except Expressions
- Mapping Rule States (activation, execution, suspension, and de-activation)
- Using Force Elements During Mapping Rule Activation and Deactivation
- Search-sets
- Expression Elements (Extract and Literal)
- Expression Sequence
- Feature Mapping Rules
- FME Feature Construction
- Feature Type Element
- Attributes Element
- FME Feature Construction (defining mapping rules under the <feature-content-map> element)
- Attribute Element (handling multiple values)
- Attribute Element (handling optional attributes)
- Attribute Element (sequenced attributes)
- Attribute Element (Nillable Attributes)
- Geometry Element
- Geometry Builder States (activation, execution, suspension, and de-activation)
- Geometry Construction
- Composite Geometry Builders
- Built-in Geometry Builders
- xml-point
- xml-point-xy
- xml-line
- xml-area
- xml-donut
- xml-aggregate
- xml-box
- xml-text
- xml-path
- xml-arc
- xml-arc-by-center-point
- xml-elliptical-arc
- xml-circle
- xml-polygon
- xml-face
- xml-composite-surface
- xml-triangulated-surface
- xml-enclosed-surface
- xml-composite-solid
- xml-multi-point
- xml-multi-curve
- xml-multi-area
- xml-multi-text
- xml-multi-surface
- xml-multi-solid
- xml-null
- xml-reverse-geometry
- fme-geometry
- Mapping Segmented Geometric Information
- Geometry Traits (trait element)
- FME Feature Construction (constructing multiple features at a time)
- Structure Element
- References Element
- Apply References Element
- Group Mapping Rules
- Reference Mapping Rules
- Mapping Rules (Optional Elements)
- More Expression Elements
- FME Schema Features
- Reading the Input XML Document
Reference-Sets
A reference-set contains references that may be accessed by other mapping rules through the <refexpr> expression wherever an expression sequence is allowed. A reference-set is defined in a reference mapping rule by the <references> element.
The <references> element may contain zero or more <reference> elements. Each <reference> element defines a single reference in the set. In addition, each reference may belong to a particular named group, so that several references in a set may have the same name as long as they belong to different groups. An optional group-name attribute in a <reference> element names the group for a reference. References defined without a group-name belong in the default group of a reference-set.
<mapping match=”...”> <references> <!-- Defined 2 references in group-1 --> <reference group-name=”group-1”> ... </reference> <reference group-name=”group-1”> ... </reference> ... <!-- Define a reference in the default group --> <reference> </reference> </references> </mapping> A reference has a name and a value. The name and value for each reference are specified through expression sequences. <reference> <name> ... some expression sequence ... </name> <value> ... some expression sequence ... </value> </reference>
A reference has a name and a value. The name and value for each reference are specified through expression sequences.
<reference> <name> ... some expression sequence ... </name> <value> ... some expression sequence ... </value> </reference>
The name along with the reference’s group-name together form the handle for the interested value we wish to store. The value of a reference can be accessed with an refexpr expression, that is, the value for a stored reference can be accessed wherever an expression sequence is allowed.
The r-stack, the stack of constructed reference-sets, is searched from top to bottom for stored references. Therefore, newer reference-sets having the same reference handles as previous constructed and non-destroyed references-sets always override older references.