Monday 22 June 2015

Japanese units of measurement for the property


畳 /jou/ means the size of the tatami, a traditional Japanese mat woven soft rush straw.
坪 just equals the area twice 間 /ken/, which equals 1 9/11 meters.
坪 /tsubo/ nearly equals 2 畳.
畳 equals ca 1.653 square meters.
坪 equals ca 3.306 square meters.

For example,
35 cm3 equals ca 21.17 畳, ca 10.59 坪.
50 cm3 equals ca 30.25 畳. ca 15.12 坪.
60 cm3 equals ca 36.3 畳, ca 18.15 坪.

Wednesday 3 June 2015

How to create XML models in Scala? - scalaxb

How to create XML models in Scala?

Currently the way to create XML models in Scala (like JAXB) is scalaxb, cf. https://github.com/eed3si9n/scalaxb, http://scalaxb.org/.

Among several ways, to run scalaxb sbt-scalaxb is the simplest one to do so but I believe there is no full covered procedure for that so I write it here :)

Let's say we use scalaxb 1.3.0.

1. Set up sbt files.


To call scalaxb from sbt 0.13.x, put this in your project/scalaxb.sbt:
resolvers += Resolver.sonatypeRepo("public")

addSbtPlugin("org.scalaxb" % "sbt-scalaxb" % "1.3.0")
and this in scalaxb.sbt:
scalaxbSettings
// Write your own package
packageName in scalaxb in Compile := "com.blogger.xml"

sourceGenerators in Compile <+= scalaxb in Compile
// The version of Dispatch, which is an HTTP access library and in some cases scalaxb depends on.
dispatchVersion in scalaxb in Compile := "0.11.2"

Note: As of Scala 2.11, you need to write the parsing library dependency separately, like
libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.0.4"

2. Put XSD files into src/main/xsd.


3. Run $ sbt scalaxb on your project.


4. You'll see generated sources in target/scala-2.11/src_managed/main/sbt-scalaxb.


That's it.