# Uncertainty Markup Language: UncertML

UncertML is a **conceptual model** and **XML encoding** designed for **encapsulating probabilistic uncertainties**. This website contains all the information you will need to start using UncertML to quantify and exchange your data uncertainties. For a detailed description of the models and XML schema, including use case examples, look no further than the dictionary and user guide. Below are a series of questions and answers to give you a brief insight to UncertML.

If you have any comments or questions then please feel free to join the discussion on the official UncertML forum.

## What is it?

UncertML is a conceptual model, with accompanying XML schema, that may be used to **quantify** and **exchange complex uncertainties** in data. The **interoperable** model can be used to describe uncertainty in a variety of ways including:

**Samples****Statistics**including mean, variance, standard deviation and quantile**Probability distributions**including marginal and joint distributions and mixture models

## What can it be used for?

Utilising the XML schema provides an **interoperable** framework for exchanging uncertainties. This allows uncertainty to be propagated through processing chains.

## Can you give me a brief rundown of the model?

Uncertainty can be quantified in several different ways within UncertML. Below is a rundown of each method for describing uncertainty including the common elements.

### Samples

In some situations you may not fully understand the uncertainties of the data you are working with. Typically, in such a situation you may provide a sample of the data which allows the uncertainties to be described implicitly. Unfortunately, a sufficiently large sample of data is required for calculating the uncertainties, introducing the issue of encapsulating large amounts of data efficiently. The following element is available within UncertML for describing a sample of data through realisations.

### Statistics

There is an extensive range of options available in UncertML for describing 'summary statistics'. Such statistics are used to provide a summary of a variable ranging from measures of location (mean, mode, median etc) to measures of dispersion (range, standard deviation, variance etc). While certain statistics do not provide any information about uncertainty they are often used in conjunction with other statistics to provide a concise but detailed summary. The following elements are available:

- CentredMoment
- CoefficientOfVariation
- ConfidenceInterval
- ConfusionMatrix
- Correlation
- CovarianceMatrix
- CredibleInterval
- Decile
- DiscreteProbability
- InterquartileRange
- Kurtosis
- Mean
- Median
- Mode
- Moment
- Percentile
- Probability
- Quantile
- Quartile
- Range
- Skewness
- StandardDeviation
- Variance

For a complete breakdown of how these elements can be used to describe various statistics please refer to the dictionary and user guide.

### Distributions

When the uncertainties of your data are more clearly understood it may be desirable to describe them through the use of probability distributions. The elements listed below are specifically designed to allow a concise encapsulation of **many distributions** without sacrificing the simplicity of UncertML.

- BernoulliDistribution
- BetaDistribution
- BinomialDistribution
- CauchyDistribution
- ChiSquareDistribution
- DirichletDistribution
- ExponentialDistribution
- FDistribution
- GammaDistribution
- GeometricDistribution
- HypergeometricDistribution
- InverseGammaDistribution
- LaplaceDistribution
- LogNormalDistribution
- LogisticDistribution
- MixutreModel
- MultinomialDistribution
- MultivariateNormalDistribution
- MultivariateStudentTDistribution
- NegatibeBinomialDistribution
- NormalDistribution
- NormalInverseGammaDistribution
- ParetoDistribution
- PoissonDistribution
- StudentTDistribution
- UniformDistribution
- WeibullDistribution
- WishartDistribution

### Download

The bundle contains all **UncertML** dependencies.

Current release: v2