Hi,
Just a comment on the GML part.
RDF technologies are an excellent way to do this. GML has managed to produce many of the same features, but has probably done so largely by replicating the essentials of RDF modelling.
I understand that GML has provided standard explicit encodings for only some things. These include most of the base things that people need to share like geometry, topology, observations, coordinate reference systems, etc.. These items are covered by fixed schema components.
In the other hand GML does not want to invent another schema language to cover a broader range of application domains, for example, biodiversity informatics. For schema definition they have elected (at least for the near term) XML Schema. GML has used other schema languages in the past such as DTD and RDF, but it does not try to create another schema language just for GML.
So, do not consider GML just as a modeling language. It provides a framework where application models can be created together with geographical stuff using the "most popular" schema language of the moment and keep interoperability possible.
I hope this clarify someone.
Javier.