\name{parseStatistic} \alias{parseStatistic} \alias{xmlStatistic} \title{Translates between Statistic objects and StatShop XML.} \description{ Translates between \code{Statistic} objects and \code{} elements in \code{amd.xml} files from StatShop. } \usage{ parseStatistic(statNode) xmlStatistic(stat) } \arguments{ \item{statNode}{An \code{XMLNode} object containing a \code{} element.} \item{stat}{\code{Statistic} object to be written. } } \details{ Part of a parsing/deparsing system for reading/writing AMD XML code for StatShop. } \value{ An \code{XMLNode} or \code{Statistic} object containing the same information as its argument. } \references{ \url{http://research.ets.org/~ralmond/StatShop/dataFormats.html} } \author{Russell Almond} \seealso{ \code{\link[XML]{XMLNode}}, \code{\link{Statistic}} } \examples{ stat1 <- Statistic(name="margin(Skill1)", class="Bayes Net Margin", reportOnUpdate=TRUE, model="System", reportingVars="Skill 1") stat1e <- Statistic(name="EAP(Skill1)", class="Bayes Net Mean", reportOnUpdate=TRUE, model="System", reportingVars="Skill 1", offset=2, scale=-1) stat2 <- Statistic(name="SkillsMastered", class="Sum at Level", reportOnUpdate=FALSE, model="System", reportingVars=c("Skill 1", "Skill 2", "Skill 3")) stat1node <- xmlStatistic(stat1) stat1rt <- parseStatistic(stat1node) stat1enode <- xmlStatistic(stat1e) stat1ert <- parseStatistic(stat1enode) stat2node <- xmlStatistic(stat2) stat2rt <- parseStatistic(stat2node) \dontshow{ stopifnot( identical(stat1,stat1rt), identical(stat2,stat2rt), identical(stat1e,stat1ert) ) } } \keyword{interface}