scalaxb
scalaxbはScalaのためのXMLデータバインディングツールで,W3C XML Schema (xsd) や Web Services Description Language (wsdl) から case class を生成します。
現在の状況
最新版は です。
結構色々ちゃんと機能してない所があります。好みのスキーマからScalaコードを生成してみて結果を報告してもらえると助かります。
用法
$ scalaxb [オプション] <スキーマファイル>...
-d <ディレクトリ> | --outdir <ディレクトリ>
ファイルは<ディレクトリ>に生成される
-p <パッケージ> | --default-package <パッケージ>
対象パッケージを指定する
--package:<名前空間URI>=<パッケージ>
<名前空間URI>の対象パッケージを指定する
--class-prefix <プレフィックス>
生成されるクラス名のプレフィックスを指定する
--param-prefix <プレフィックス>
生成される仮引数名のプレフィックスを指定する
--prepend-family
クラス名にファミリー名を前置する
--wrap-contents <複合型名>
別の case class に追い出す複合型を指定する
--contents-limit <サイズ>
区分けされる長いコンテンツの上限を指定する (デフォルト: 20)
--chunk-size <サイズ>
区分けされた一区切りのサイズ (デフォルト: 10)
--package-dir
パッケージの構成のディレクトリを生成する
--protocol-file <name.scala>
プロトコルのファイル名 (xmlprotocol.scala)
--protocol-package <パッケージ>
プロトコルの対象パッケージ
--no-runtime
ランタイムファイルを省く
--lax-any
xs:any の名前空間の制約を緩和する
--blocking
ブロッキングする SOAP クライアントを生成する
--dispatch-version <version>
Dispatch バージョン (デフォルト: 0.11.1)
-v | --verbose
デバッグ用うるさいモード
--help
このメッセージを表示する
--version
バージョン情報を表示する
<スキーマファイル>...
変換されるスキーマファイル