Ontoserver 6.5

This release of Ontoserver introduces the following new features:

Advanced SNOMED CT Language Reference set support

Descriptions that are marked as “preferred” in a language reference set will append a subtag to the language tag of the form "x-sctlang" 1*("-" (1*8alphanum)) (conforming to BCP 47's privateuse extension). The digits section is the language refeset sctid split into 8-digit segments from the left.

For example, imagine you have a “patient friendly” language reference set 123456701 that identifies descriptions in both English and Te Reo. Calling ValueSet/$expand with the displayLanguage parameter equal to mi-x-sctlang-12345670-1,en-x-sctlang-12345670-1,mi,en will result in the Te Reo patient friendly preferred term getting highest preference, then the English patient friendly term, then any Te Reo preferred term, and finally any English preferred term.

Support for Accept-Language header with CodeSystem/$lookup

If the Accept-Language header is supplied to the CodeSystem/$lookup operation, then the returned display for the concept will be chosen from the concept's synonyms accordingly, just as is currently done for ValueSet/$expand.

Generalised version sorting

Previsouly Ontoserver would only attempt to version-sort Resources with the same URI and version strings that matched one of two patterns:

  • YYYYMMDD
  • X.Y.Z

This release relaxes the constraints around version strings for selecting the “latest version” of resources, and supports a far great range of versioning styles. The behaviour with respect the the version patterns above is unchanged.

The new approach uses a boundary condition to split a version string into a list of parts, and then compares to lists of parts left-to-right. An individual part is always either numeric or non-numeric. Numeric parts are compared as numbers, while non-numeric parts are compared lexically. The boundary condition is any transition between numeric and non-numeric sequence, or a non-empty sequence of punctuation.

For example, V2.13-alpha6 is treated as the sequence (V, 2, 13, alpha, 6).