Instead of using the complete GML standard, which is quite complex, a simplified subset of GML has been created known as the GML Simple Features (SF) profile. After some experimentation, we discovered that we could meet our needs to express 0 (point), 1 (linestring), or 2 (surface) dimensional representation (point, linestring and surface respectively) of pipeline data using GML SF (SF does not currently support 3-dimensional spatial representation of objects).

Also, there are 3 levels of compliance with GML SF. Level 0 is the most restrictive but also the most widely supported in the software community. Levels 1 and 2 provide for more flexibility and capabilities but are not supported as broadly in the software community. As a result, during the prototyping phase of developing we experimented with whether we could meet our needs utilizing SF-0 compliance and we could. This approach does require us to forego the capability of representing objects in 3 spatial dimensions. However, this is not considered a high-value use case at this early stage in the develop of pipeline data interchange standards. Thereafter, we are focusing development of PipelineML on GML SF-0 compliance. This allows the largest number of software applications to natively read PipelineML without modification. However, it is possible and likely that at some point in the future, we will support multiple encoding standards so as to enable more capabilities.