Hi, I was looking at http://www.tei-c.org/release/doc/tei-p5-doc/en/html/ref-relation.html today, and realized that it comes very close to being able to represent RDF-style triples. Actually, I think it could do so now, but there are a couple of things I'd suggest TEI do:
<relation xmlns:gn="http://www.geonames.org/ontology#" ref="gn:parentFeature" active="http://sws.geonames.org/361059" passive="http://sws.geonames.org/357994"/>
could be a way to encode the triple Alexandria is a child feature of Egypt. My first recommendation would be that the Guidelines say explicitly that using @ref on <relation> enables the encoding of RDF-style triples.
My second recommendation is that the attributes @active and @passive be deprecated and renamed. The names are *extremely* confusing, unintuitive, and fail to describe the attributes' actual function. Better would be @subject and @object (as in "subject, predicate, object"), which is a standard way of describing RDF triples. The relations are directed graphs, so names drawn from graph theory terminology, like @head and @tail would be acceptable also. Likewise @symmetric might be a better name than @mutual, but the latter is less bad than @active and @passive.
It could be argued that @mutual is redundant, but I see the attraction of a single attribute that can express symmetric relationships.
My last recommendation is that the guidelines make it clear that <relation> is not just for persons, but can be used for relationships between places, objects, organizations, etc. I wonder too whether elements like <affiliation> ought not to be considered refinements of <relation>.