jsonix を使用して、SOS_2_0 からの GetCapabilities 応答をアンマーシャリングしようとしています。以下は、xml 文字列を非整列化するために私が書いたコードです。正常に動作しているように見えますが、すべての要素が正しくマップされているわけではありません。
function jsonixParseSensors(xmlStr) {
var module = SOS_2_0_Module_Factory();
var context = new Jsonix.Context([XLink_1_0, GML_3_2_1, OWS_1_1_0, SWE_2_0, SWES_2_0, WSN_T_1, WS_Addr_1_0_Core, OM_2_0, ISO19139_GMD_20070417, ISO19139_GCO_20070417, ISO19139_GSS_20070417, ISO19139_GTS_20070417, ISO19139_GSR_20070417, Filter_2_0, SOS_2_0]);
var unmarshaller = context.createUnmarshaller();
var data = unmarshaller.unmarshalString(xmlStr);
return data;
}
以下のスクリーンショットでは、「コンテンツ」内のすべての「オファリング」がデフォルトで抽象型 (SWES_2_0.AbstractContentsType.Offering) に設定されており、センサー/観測オファリングに関する情報が含まれていないことが明らかです。「filtercapabilities」などの他の要素にもすべての情報と属性が含まれているため、これは奇妙です。名前空間引数を unmarshallString に渡す場合と渡さない場合の両方でこれを試しましたが、違いはないようです。私が根本的に誤解していることはありますか?