Component and Sub-Component Fields

Some file formats - many EDI variants, for example - allow fields to be subdivided into arrays, sub-fields, or composite fields. Collectively, these fields are referred to as component fields in custom XML conversion definitions. Typically, the headers of these files contain information about the character used to specify component fields. Stylus Studio uses this information to set the default value for the Field Component Separator property and render XML output accordingly.

Consider the following input file, which uses a semi-colon (;) to specify component fields:

Make;Model;Year;Color;Seat 
BMW;R1150RS;2004;grey,metallic;black,vinyl 
MZ;Scorpion;1995;green,clearcoat;black,vinyl 
Ducati;ST2;1997;red,clearcoat;black,leather 

Using the first row to supply the field names and default Component Element Name (component), the custom XML conversion definition creates the following XML output (first two elements shown for brevity):

<?xml version="1.0" encoding="utf-8"?> 
<root> 
	<row> 
		<Make>BMW</Make> 
		<Model>R1150RS</Model> 
		<Year>2004</Year> 
		<Color> 
			<component>grey</component> 
			<component>metallic</component> 
		</Color> 
		<Seat> 
			<component>black</component> 
			<component>vinyl</component> 
		</Seat> 
	</row> 
	<row> 
		<Make>MZ</Make> 
		<Model>Scorpion</Model> 
		<Year>1995</Year> 
		<Color> 
			<component>green</component> 
			<component>clearcoat</component> 
		</Color> 
		<Seat> 
			<component>black</component> 
			<component>vinyl</component> 
		</Seat> 
	</row> 
... 

The <component> elements are created as subelements of the <Color> and <Seat> elements.

For line-oriented regions in files containing component fields, you can change the default Field Component Separator property, and the Component Element Name and Component Element Name properties, that is, the name you want to use for the component fields' container elements.

Varying Record Layout to XML

Not every row in a text file has to have the same layout. Convert to XML has advanced pattern-recognition tools to route the data to where it belongs.

XML Differencing

Stylus Studio's integrated XML Differencing tool visually computes and analyzes any changes made to files or folders in a highly configurable, XML-aware fashion. Display text or tree views, with changes displayed in a merged view or side-by-side!

EXSLT Tools

EXSLT support in Stylus Studio lets you extend XSLT 1.0 stylesheets and simplify many tasks including computing dates and times, performing mathematical computations, string manipulations and more.

XPath Generator

Stylus Studio includes an XPath generator that helps you easily create XPath expressions. This page illustrates how you can accomplish this.

Stylus Most Wanted

 
Free Stylus Studio XML Training:
W3C Member