Hi,
I think there is a problem in the ontology:
* The ontology IRI is "
http://www.w3.org/ns/sosa" (abbreviated sosa:)
* Entities are defined with just their name, e.g. "<owl:Class rdf:about="Observation">". The resulting IRI is obtained by combining the ontology IRI with the name, leading to "
http://www.w3.org/ns/Observation" (notice the absence of "/sosa" in the IRI, caused by the absence of a / to separate the ontology IRI and the name)
* Entities are then referred as e.g. sosa:Observation, corresponding to the IRI "
http://www.w3.org/ns/sosa/Observation", which is NOT the IRI that was used to define them. Consequently, the class, properties, etc are not well referenced. If you open you ontology in Protégé, you will see 2 distinct Observation classes.
In such circumstances, you should use full IRI when defining entities, e.g. "<owl:Class rdf:about="
http://www.w3.org/ns/sosa/Observation">". Protégé does that.
BTW, there is also another mistake in sensor_showOG.py: in ontology_page(), "return html" should not be inside the loop.
Jiba