4

私の XSD で次の型定義を検討してください。

<xs:complexType name="ED" mixed="true">
  <xs:complexContent>
     <xs:extension base="BIN">
        <!-- I cut some data here -->
     </xs:extension>
  </xs:complexContent>
</xs:complexType>

mixedJAXB が要素のコードを生成するのに苦労していることがわかりました。を使ってみ<jaxb:globalBindings generateMixedExtensions="true"/>ましたが、あまりサポートされておらず、ぎこちないList<Serializable>コードが生成されます。

そこで、カスタム バインディングを使用していくつかの要素を変更できると考えました。

<bindings
    xmlns="http://java.sun.com/xml/ns/jaxb"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    version="1.0">
    <bindings schemaLocation="../../processable/coreschemas/datatypes-base.xsd">
        <bindings node="//xs:complexType[@mixed='true']" multiple="true">
            <property>
                <javaType><!-- What do I do here? --></javaType>
            </property> 
        </bindings>
    </bindings>
</bindings>

基本的に、タグ間に CDATA を保持mixed=trueするカスタムvalueまたはcontentフィールド ( )を指定するすべての要素が必要です。Stringたとえば、私のEDタイプの場合、XML では次のようになります。title 要素はEDそのタイプとして次を使用します。

<title>Hello, I'm a title!</title>Hello, I'm a title!そのコンテンツとして生成する必要があります。

どうすればいいですか?

興味のある方へ: HL7v3 CDA 仕様のコードを生成しようとしています。

4

0 に答える 0