I know that KML can contain symbology in it. I understand that GML is the open version of it. Can GML contain symbology too?
I understand that GML is the open version of it.
Geography Markup Language (GML) is NOT the open stardards version of Keyhole Markup Language (KML), both are open standards controlled by the Open Geospatial Consortium (OGC), for more details on these standards see the OGC standards.
Can GML contain symbology too?
Yes, GML has a gml:symbol property that allows you to define symbols
The gml:symbol property element specifies a graphical symbol used to render a geometry or a topology. A symbol is a description of graphical attributes of a graphical object without a particular, implicit meaning. It can be a description of a line, circle, polygon or more complex drawing. Using the symbol element, we can specify a particular symbol in two ways:
Remote: Just like any other remote property, the symbol property as the gml:AssociationAttributeGroup attributes that allow for specifying a link pointing to a remote object.
Inline: The value of the gml:symbol property is the any specifier. This allows for specifying an arbitrary grammar for the symbol.
This element has two additional attributes: symbolType and transform. The symbolType attribute is an enumeration and can take one of three values: "svg", "xpath" or "other". Applications will rely on the value of this attribute to decide how to interpret the symbol. The transform attribute allows to specify a transformation expression that will be applied to the symbol in the rendering phase. Its type is string and the value is specified in SVG (transform attribute).
Reference: OpenGIS® Geography Markup Language (GML) Encoding Standard (OGC 07-036)