Australian Asset Design and As Constructed (ADAC) Feature Representation

ADAC v3

The ADAC XML reader recognizes the following ADAC v 3.0.1 asset structures:

  • Sewerage asset: Manhole, PipeNonPressure, PipePressure, Valve, Fitting, House_Connection.
  • Roads asset: Pavement, Parking, RoadEdge, RoadIsland, RoadPathway, PramRamp, RoadSubsoilDrain.
  • Water asset: Pipe, Valve, Hydrant, Meter, Fittings, Maintenance_Hole.
  • Stormwater asset: ManholePit, EndStructure, Pipe, SurfaceDrainage.
  • Cadastre asset: LandParcel.
  • OtherData asset: Object.

The feature type names for ADAC FME features closely resemble the naming for the ADAC v3 XML document. Feature type names are whitespace-separated combinations of theme and asset structure names. For example, Sewerage Valve, Water Valve, Stormwater Pipe, and Cadastre LandParcel.

Attribute names also closely resemble their XML counterparts. The non-geometrical, non-repeating, and non-nested child elements (that is, the simple type elements whose maxOccurs is 1) of an asset structure are mapped with their names unchanged. For example, the simple type child element <OutletType> of the <ManholePit> element is mapped as the OutletType attribute of the Stormwater ManholePit feature.

Non-geometrical nested child elements, i.e., the complex type elements, of an asset are mapped as whitespace separated combinations of child and descendant elements. For example, the <ChamberSize> complex type child element of the <ManholePit> element creates the following FME attributes in a Stormwater ManholePit feature: ChamberSize Blankend, ChamberSize PS, ChamberSize Rectangular, and ChamberSize Circular.

Most non-geometrical child elements in an asset structure are non-repeating. These are mapped as simple, atomic FME attribute values. Repeating non-geometrical child elements (that is , those with maxOccurs greater than 1 or unbounded), such as the <ComponentInfo> element, are mapped as CSV values.

The geometry for a feature is mapped from the various ADAC geometry elements. Some ADAC asset structures, such as the RoadSubsoilDrain, may have more than one geometry, these are mapped as aggregates. Two special FME geometry traits are assigned to the geometries to help identify their original ADAC role. The adac_geometry trait identifies the original ADAC XML geometry element, while the adac_geometry_parent trait identifies the geometry’s parent.

Data not explicitly defined in the ADAC schema is supported in the ADAC XML via the OtherData asset model. This <OtherData> asset model element can contain one or more <Layer> child elements, and each <Layer> can contain one or more <Object> elements. The FME ADAC reader maps these <Object>s into a single Object feature type.

All FME ADAC Object features carry a LayerName attribute which identifies its original <Layer> container in the XML document. An Object feature can be a point, line, area, text geometry, or an aggregate of these geometries.

An <Object> element may have zero or more <ComponentInfo> child elements. The information for the first <ComponentInfo> element, as with the other predefined ADAC structures which can have at most one <ComponentInfo>, is represented in the FME ADAC feature by the following attributes:

ComponentInfo InfrastructureCode

ComponentInfo Status

ComponentInfo Notes

ComponentInfo Supporting_Info

All of the above except for the ComponentInfo Status attribute have CSV values. Multiple <ComponentInfo> elements in a single layer are represented in the FME ADAC feature as a structured list attribute:

ComponentInfo{0}.InfrastructureCode

ComponentInfo{0}.Status

ComponentInfo{0}.Notes

ComponentInfo{0}.Supporting_Info

ComponentInfo{1}.InfrastructureCode

ComponentInfo{1}.Status

ComponentInfo{1}.Notes

ComponentInfo{1}.Supporting_Info

Note: The ComponentInfo list attribute with index 0 is identical to the non-indexed set of ComponentInfo attributes.

ADAC v4 and v5

The ADAC XML reader parses the ADAC v5.0.0, v5.0.1, v4.0.0, v4.1.0, or v4.2.0 schema to determine the asset structures available to be read.

In ADAC v4 and v5, the FME feature type names also closely resemble, as in v3, the ADAC v4 and v5 XML element asset names. ADAC FME feature type names are whitespace separated combinations of theme and asset names. For example, the <Pit> asset in the <Stormwater> theme is mapped as the FME Stormwater Pit feature type.

Note: The <Pits> element, the element representing the feature class of stormwater pits (that is, the parent element enclosing the <Pit> elements) is not part of the FME feature type.

Most non-geometrical child elements in an asset structure are non-repeating. These are mapped as simple, atomic FME attribute values. These elements are mapped as FME attributes with their name unchanged. For example, the simple type child element <PitNumber> of the <Pit> element is mapped as the PitNumber attribute of the Stormwater Pit feature.

Repeating non-geometrical child elements (that is, those with maxOccurs greater than 1 or unbounded) such as the <SupportingFile> element are mapped as list attributes. The <SupportingFile> element is part of the <ComponentInfo> element, which is an element defined as a complex type; hence <SupportingFile> is mapped in FME as a nested list attribute ComponentInfo.SupportingFiles.SupportingFile{}.

Non-geometric nested child elements (that is, the complex type elements) of an asset structure are mapped differently from v3: in ADAC v4 and v5, these complex property elements are mapped as FME nested list attributes. For example, the <ChamberSize> complex type child element of the <Pit> element creates the following FME nested list attributes in a Stormwater Pit feature:

ChamberSize.Rectangular.Length_mm

ChamberSize.Rectangular.Width_mm

ChamberSize.Circular.Diameter_mm

ChamberSize.Extended.Radius_mm

ChamberSize.Extended.Extension_mm

The geometry for a feature is mapped from the various ADAC <Geometry> elements. Unlike ADAC v3, the assets data structures for ADAC v4 and v5 do not have multiple geometries.

Geometry

Note: ADAC v4 and v5 assets have exactly one geometry. The following applies only to ADAC v3.

ADAC v3 asset structures with multiple geometry elements are mapped into FME geometry aggregates.

FME geometry traits are used to help identify the original ADAC role. Two special geometry traits are assigned: the adac_geometry trait identifies the original ADAC XML geometry element, while the adac_geometry_parent trait identifies the geometry’s parent. The values for these two traits are their respective ADAC XML element names.

The ADAC v3 <ManholePit> element has two descendant <Location> elements, one is an immediate child element, while the other grandchild element. In the above example, the adac_geometry_parent trait on the point geometries can be used to identify the geometry’s original role in the ADAC XML document, the first location refers to the <InletStructure> element, while the second refers to the <ManholePit> element.

Mapped rotated point geometries include an additional Rotation trait, illustrated by the log of the following Water Valve feature:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++         
Feature Type: Water Valve'                                                         
Attribute(encoded: utf-16): Construction Date' has value 2007-04-14'              
Attribute(encoded: utf-16): Drawing Number' has value B02166-C66'                 
Attribute(encoded: utf-16): Owner' has value Council'                             
Attribute(encoded: utf-16): Project Name' has value ' 
Attribute(encoded: utf-16): Size_mm' has value 150'                               
Attribute(encoded: utf-16): Type' has value Gate'                                 
Attribute(encoded: utf-16): Use' has value Control'                               
Attribute(string)         : fme_geometry' has value fme_point'                    
Attribute(string)         : fme_type' has value fme_point'                        
Attribute(string)         : xml_type' has value xml_point'                        
Coordinate System: '                                                               
Geometry Type: IFMEPoint                                                            
Number of Geometry Traits: 3                                                        
GeometryTrait(encoded: utf-16): Rotation' has value 83.496'                       
GeometryTrait(encoded: utf-16): adac_geometry' has value Location'                
GeometryTrait(encoded: utf-16): adac_geometry_parent' has value Valve'            
Coordinate Dimension: 3                                                             
(529952.79399999999,6942138.1310000001,0)                                           
========================================================================         

The geometry for ADAC v3, v4, and v5 features may be identified by the xml_type attribute. The valid values for this attribute are:

xml_type

Description

xml_no_geom

FME Feature with no geometry

xml_point

Point geometry

xml_line

Linear geometry

xml_area

Simple polygon geometry

xml_text

Annotation geometry

xml_aggregate

An aggregate of the above geometries