2017-06-15 2 views
0

Ich verwende die Bibliothek fhir-net-api, die gefunden wurde here, um FHIR-Nachrichten von JSON nach XML zu transformieren. Das resultierende XML hat einen Namespace von http://hl7.org/fhir/, der von der Bibliothek standardmäßig verwendet wird. Gibt es eine Möglichkeit, den Namespace beim Serialisieren in XML mithilfe dieser Bibliothek zu steuern? Ich weiß, dass ich den XML-Namespace getrennt ändern kann, aber es wäre schön, in einem Schritt zu tun.Standard-Namespace beim Serialisieren in XML ändern fhir-net-api

var b = new 
      Hl7.Fhir.Serialization.ResourceReader(
      FhirJsonParser.CreateFhirReader(json), 
         ParserSettings.Default).Deserialize(); 

     return Hl7.Fhir.Serialization.FhirSerializer.SerializeResourceToXml(b).ToString(); 

Antwort

1

Nach der Fhir Spezifikation, eine der Regeln für die XML representation von Fhir Ressourcen ist:

Fhir Elemente sind immer im Namensraum http://hl7.org/fhir. Dieser wird normalerweise als Standard-Namespace für das Root-Element angegeben.

Aus diesem Grund enthält der FhirSerializer diesen Namespace beim Serialisieren in XML. Sie können dieses Verhalten nicht ändern. Wenn Sie also wirklich fragen müssen (Frage: warum?), Müssen Sie es nach der Serialisierung ändern.

+0

Danke für die Antwort, ich werde die Änderung nach der Serialisierung vornehmen. Ich verwende BizTalk und benötige zwei Versionen der gleichen Nachricht in verschiedenen Namespaces, einen, der mit einem Hüllkurvenschema debuggt, und einen, der dies nicht tut. Es ist wahrscheinlich möglich, dieselbe Nachricht für beide zu verwenden, aber es wird kompliziert. – David

Verwandte Themen