Skip to content

Releases: qudt/qudt-public-repo

Latest snapshot release

29 Mar 11:39
a803aad
Compare
Choose a tag to compare
Pre-release

Snapshot Release

This release and the corresponding git tag are updated every time a PR is merged to main.
Use it to access the latest state of the repository without having to build it yourself. Expect further
changes before the upcoming release.

Changes

Unreleased

Added

  • New Units
    • Counting units for some powers of ten; specifically TEN, HUNDRED, THOUSAND, MILLION, BILLION_Short and BILLION_Long.
      This allows some dimensionless counts to have more intuitive URIs, such as unit:PERCENT-PER-TEN-THOUSAND instead of
      unit:PERCENT-PER-DecaKiloCOUNT.
    • unit:COUNT was added as an exact match with unit:NUM. Both units have a quantity kind of Count (and others).

Changed

  • Updated and fixed constraint for use of hasFactorUnit in OWL schema
  • Added qk:Emissivity to unit:PERCENT
  • Fixed mistakes on MicroW-PER-CentiM2-MicroM-SR, unit:W-PER-M2-MicroM, unit:W-PER-M2-MicroM-SR, J-PER-M2-SEC0pt5-K variously replacing qudit:unit to qudt:Unit, adding SI as applicable system, and removing @en-us tag from a plainTextDescription, changing conversionMultiplierSM to conversionMultiplierSN, and adding decimal point to xsd:double values, and avoiding using explicit datatypes on conversion factors.
  • Upgraded the closed world validation constraint from sh:Info to sh:Violation. Errors will now cause the build to fail.
  • Untangled unit:AWG and unit:CCY_AWG that had becomed combined in migration of currency into units graph

Deprecated

  • Removed 8 invalid dimension vectors (without deprecation since they were invalid)

v3.1.0

20 Mar 15:50
Compare
Choose a tag to compare

Please note!

This new Release adds some significant new functionality by generating 'factor units' for most units. This will be a new relation that could help when defining profiles (still coming). For this reason the semantic version is incremented from 3.0.0 to 3.1.0.

We are also introducing the idea of a ContextualUnit that allows users to introduce domain-specific units (recall our discussion about CFU, Colony Forming Units, suggested by @Toby-Broom and @dr-shorthair). We will depend on the introduction of profiles to keep these additions from overwhelming the vocabularies. Such ContextualUnits will be related to more generic versions of units using skos:broader.

Finally, we are continuing to refine the automation of our build process to minimize human error, while hopefully not making the contribution process too complicated. Feedback is always welcome.

Changes

3.1.0 - 2025-03-20

Added

  • New Units
  • Factor Units by Florian Kleedorfer:
    • During the build process, multiple SPARQL queries determine the 'factor units' that derived
      units are made up of. The factor units are associated with their derived units via `qudt:hasFactorUnit' triples.
    • Units that are 'scaled', ie. derived from another, non-derived unit with conversionMultiplier 1.0 by multiplication,
      are connected with that unit via qudt:scalingOf.
    • Wherever the connection cannot be determined from the units' localnames, the triples are explicitly listed
      in the file src/build/inference/factorUnits/predefined-factors-and-scalings.ttl, which are added to
      the units file (target/dist/vocab/unit/VOCAB_QUDT-UNITS-ALL.ttl) during the build
  • a new BUILDING.md file
  • Added the ContextualUnit class, to identify units that are common, but are really specializations of generic units.
  • New Quantity Kinds: ServiceFactor, DutyCycle, WetBulbTemperature, DryBulbTemperature, supporting building management
  • New Quantity Kind: State of Charge for batteries https://github.com/lazlop

Changed

  • Removed invalid qudt:iec61360Code values (most in the 'UAD' range) from about 40 units, most notably unit:M that was submitted as a bug.
  • Cleaned out some remaining shape and restriction references to deprecated properties.

Deprecated

  • Replaced unit:PPTR_VOL with unit:PPT_VOL
  • Deprecated 13 remaining units with non-uppercase URIs, replacing as appropriate.
  • Replaced the volt ampere family of units having URIs with V-A, to have VA instead.
  • Further, replaced ..V-A_Reactive with ...VAR.
  • Deprecated all currency units in the currency graph, with redirection from cur: to unit:CCY_ in the unit graph.
    The "class preamble" is there to avoid collisions of URI with non-currency units (Notably unit:CUP and unit:CCY_CUP).
    And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

v3.0.0

13 Feb 14:16
Compare
Choose a tag to compare

Please note!

As mentioned in Release 2.1.47, we are coming out with version 3.0.0 with this Release. This could be a breaking change for your applications, since some of you may be using the versioned graph URIs that include "2.1". Moving forward, those will include "3.0.x", but of course the un-versioned graphs will always resolve to the latest version. So, for example, if you use the owl:imports mechanism, your application could import http://qudt.org/2.1/vocab/unit if you want to stay with 2.1, http://qudt.org/3.0.0/vocab/unit if you want to explicitly migrate to the new Release, or http://qudt.org/vocab/unit if you want to always get the latest Release.

In Release 3.0.0, we have removed all the deprecated entities that have accumulated to date. In the 2.1 releases, they all contained the triple:

<entity> qudt:deprecated true

If you have been using SHACL, you should have already been receiving notifications during validation if you were using properties or instances that were marked as deprecated, so you had an opportunity to migrate to the replacement concepts. With this new Release, those entities no longer exist.

Changes

3.0.0 - 2025-02-13

Changed

  • Replaced 2.1 with $$QUDT_VERSION$$ in all graph URI references. This will result in URIs containing
    full semantic versions, such as 3.0.0, moving forward. Note that this is a breaking change, hence
    the transition to QUDT version 3. Versionless graph URIs are still dereferenceable on the web.

Deprecated

  • Removed all previously deprecated entities, to begin a new cycle of deprecation when needed.

Fixed

  • Corrected unit symbols containing some kind of conversion artifact, e.g. ''
  • Fix dimension vector of unit:MicroMOL-PER-M2-SEC2
  • Added the newly referred-to dimension vector to the dv vocabulary
  • Corrected 456 unit symbols of derived unist by generating them based on their factors. Note: correcting
    derived unit symbols without correcting their factor units (e.g. km/hr -> km/h without hr->h)
    will not solve the problem in the long term. We are not yet automatically detecting and correcting
    incorrect derived unit symbols but it might happen in the future. If we started doing that, the factors
    would take precedence.
  • Corrected the language tag @en-us to @en-US
  • Corrected a small number of conversion multipliers
    And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

v2.1.47

28 Jan 18:39
Compare
Choose a tag to compare

In addition to the many improvements listed below, please note that in the near future (possibly February or March) we will be releasing Version 3.0 of QUDT. This could be a breaking change for your applications, since some of you may be using the versioned graph URIs that include "2.1". Moving forward, those will include "3.0", but of course the un-versioned graphs will always resolve to the latest version. So, for example, if you use the owl:imports mechanism, your application could import http://qudt.org/2.1/vocab/unit if you want to stay with 2.1, http://qudt.org/3.0/vocab/unit if you want to explicitly migrate to the new Release, or http://qudt.org/vocab/unit if you want to always get the latest Release.

In Release 3.0, we will be removing all the deprecated entities that have accumulated to date. They all contain the triple:

<entity> qudt:deprecated true

Changes

2.1.47 - 2025-01-28

Added

  • New SHACL Schema for Datatypes
    • Changed file name from SCHEMA_QUDT-DATATYPE_NoOWL.ttl to SCHEMA_QUDT-DATATYPES_NoOWL.ttl
    • Scalar datatypes unchanged
    • Structured datatypes have extensive changes
    • Future work:
      • completion of heterogeneous and multi-dimensional arrays and vectors
      • completion of structured datatypes such as records and tables
      • completion of SHACL rules for validation
  • New folder examples under src/
  • New graphs with examples of Quantities and Datatypes
    • EXAMPLES_QUDT-DATATYPES.ttl for valid examples
    • EXAMPLES_QUDT-INVALID-DATATYPES.ttl has invalid examples
  • New classes and shapes added to SHACL QUDT Schema:
    • DataItem was added as a parent class for Data, supporting scalar values,
      and, with subtypes for structured values
  • New QuantityKinds
  • New Units
  • New Dimension Vectors
  • New QA Tests
    • Added SHACL shapes for checking content under src/ only
  • New Inferences
    • Added a SHACL rule to generate inverse triples for symmetric relations (such as qudt:exactMatch)

Changed

  • Migrated constructs for datatypes to:
    • new SHACL Schema for Datatypes
      • Updated OWL Schema is work-in-progress
    • existing VOCAB for Datatypes
  • Changes to the SHACL QUDT schema:
    • Added a value constraint to the property shape qudt:Quantifiable-value to allow a value
      to be a qudt:EnumeratedValue, and to allow a list of values.
    • qudt:informativeReference can now refer to instances of qudt:Citation as well as xsd:anyURI
  • Removed the vaem:revision triples that were causing retention of v2.1 strings in the URIs
  • qudt:informativeReference triples added/replaced by a link to IEC CDD generated based on qudt:iec61360Code triples by Vladimir Alexiev

Fixed

  • Corrected numerous issues in the datatypes SHACL schema and the QUDT SHACL schema
  • Corrected the qudt:ucumCode of unit:TeraW-HR-PER-YR to "TW.h/a" by Jurek Müller
  • Fixed non-working informativeReference links in units vocabulary Phil Blackwood
  • Added some missing rdfs:isDefinedBy triples
    And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

v2.1.46

09 Dec 20:39
Compare
Choose a tag to compare

With this Release, we continue to refine our automated release mechanism.
Please check our Good Git Practices page for some changes on how to submit contributions, including some new workflows available to make things easier for you.
Please read our updated README.md file, especially the Installation instructions, for many of the details.

We hope this does not create too much of an incovenience. We invite you to submit GitHub Issues with any problems you encounter.

Changes

2.1.46 - 2024-12-09

Added

  • QUDT Schema
    • Add the qudt:altSymbol property to support using multiple symbols with a unit/quantitykind alongside
      the primary one, which isqudt:symbol
  • New QuantityKinds
    • qk:AmountOfSubstanceIonConcentration as a narrower kind of qk:Concentration.
    • qk:CoefficientOfPerformance by lazlop
    • qk:CompoundPlaneAngle
    • qk:CountRate ( units: unit:NUM-PER-SEC, unit:NUM-PER-HR, unit:NUM-PER-YR)
    • qk:CurrentOfTheAmountOfSubstance (replacesqk:CurrentOfTheAmountOfSubtance)
    • qk:RotationalFrequency (units: unit:Hz, unit:REV-PER-MIN, unit:REV-PER-HR, unit:REV-PER-SEC)
    • qk:VaporPermeability (unit: unit:KiloGM-PER-PA-SEC-M)
    • qk:VaporPermeance (for what used to be qk:VaporPermeability, see 'Changed')
  • New Units
    • unit:CYC-PER-SEC
    • unit:KiloLM
    • unit:CD-PER-KiloLM
    • unit:CI (replaces unit:Ci)
    • unit:FLIGHT (replaces unit:Flight)
  • Other Additions

Changed

  • Enforce at most a single qudt:symbol for all instances.
  • Delete spurious qudt:symbol values in a number of quantity kinds
  • Correct the conversion offset for MilliDEG_C
  • Rename qk:VaporPermeability to qk:VaporPermeance and change all unit associations accordingly.
  • Unify PER-X symbols to the 15:1 majority pattern, "/x" where "1/x" is used
  • Unify NUM-PER-X symbols to always represent NUM as # (as has already been used in unit:NUM)
  • Remove qk:NumberDensity from unit:PER-M3
  • Make qk:RotationalFrequency exactMatch of qk:RotationalVelocity, remove broader qk
  • Make qk:AngularFrequency exactMatch of qk:AngularVelocity, remove broader qk

Deprecated

  • unit:Ci (replaced by: unit:CI)
  • unit:Flight (replaced by: unit:FLIGHT)
  • qk:CurrentOfTheAmountOfSubtance (replaced by qk:CurrentOfTheAmountOfSubstance)
  • unit:CFU (replaced by: unit:NUM) - The CFU (colony forming unit) is a context-dependent unit that should
    be part of an ontology with narrower scope than QUDT.
    And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

v2.1.45

15 Nov 18:55
Compare
Choose a tag to compare

Breaking Changes

With this Release, we have migrated to an automated release mechanism.
This includes reorganizing our directory structure.
Please read our updated README.md file (scroll to the bottom) for many of the details.

We hope this does not create too much of an incovenience. We invite you to submit GitHub Issues with any problems you encounter.

QUDT Release v2.1.44

27 Oct 20:58
7f18fc4
Compare
Choose a tag to compare

Updates include:

  • Big housecleaning month! Many of the unused graphs that have been lying around the repository have been moved to a behind-the-scenes repository, including references to some of the unused concepts in our active graphs. If you have been quietly using them yourself in your own work and would like us to restore any of them, please let us know in a new Issue. Otherwise, we now have a more streamlined repository while retaining all the functionality you have been depending on.
  • The qudt:currencyNumber relation now points to a string with the currency code, rather than an integer. This makes sense because it is not used for computation - it is a code in the true sense. (Thanks for this fix, @fkleedorfer)
  • A new quantity kind, ElevationRelativeToNAP, has been added to support the Amsterdam Ordnance System (thanks @RiX012).
  • A number of units now point to quantitykind:MassConcentration in addition to MassDensity and Density. (thanks @J-meirlaen). (MassDensity and Density are already declared as qudt:exactMatch. MassConcentration will be included in these declarations in the future.)

And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

QUDT Release v2.1.43

27 Sep 17:04
4d44787
Compare
Choose a tag to compare

Updates include:

  • Fixed the symbol for unit:PERCENT-PER-DecaKiloCount (i.e. percent per ten thousand)
  • Added new quantity kinds Azimuth and Tilt in support of architectural applications (thanks @lazlop)
  • Fixed some references to URIs that were accidentally represented as quoted strings
  • Updated the README to reflect the fact that QUDT works with version 5.6.4 of Protege
  • You may also notice a new addition to our listing of occam-qudt on our home page, under Community Resources. occam-qudt is a Java library focused on math operations using QUDT. Thanks to Josh Feingold (@occamsystems) for this new capability.

And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

QUDT Release v2.1.42

31 Aug 18:22
0cf021a
Compare
Choose a tag to compare

Updates include:

  • Fixed validation checks to exclude deprecated entities. Note that the file collections/COLLECTION_QUDT_USER_TESTS-v2.1.ttl that is imported by default will still flag the use of a deprecated entity and generate a message directing the user to the replacement entity when the SHACL validator is run.
  • Deprecated a variety of quantity kinds that had URI patterns of "XPerUnitY" in favor of simply "XPerY". An example is "ElectricCurrentPerUnitEnergy" in favor of "ElectricCurrentPerEnergy".
  • Fixed many descriptions containing ill-formed Latex strings.
  • Began taking a closer look at units flagged as derivedCoherent units (for the SI system of units) and removing such flags when the conversionMultiplier is not 1.0. We are rethinking how we generate these qualifiers, so stay tuned for more developments on this front.
  • Fixed some typos, misspellings and inconsistencies (thanks @kctw964_azu)
  • Completed the cross references to all of the IEC 61360 CDD (Common Data Dictionary) unit codes
  • Adopted and implemented a naming rule for prefixed units that do not fall on the "3 orders of magnitude" boundaries, such as unit:PERCENT-PER-DecaKiloCount for "percent per 10,000".
  • At the request of workers in the building management industry, added some new quantity kinds (VolumeFlowRatio, OpeningRatio and SpeedRatio)

And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!

QUDT Release v2.1.41

23 Jul 16:12
20cac17
Compare
Choose a tag to compare

Updates include:

  • Augmented our units URI naming rules (see Rule 6 on our Wiki) to handle the case of "thousands of cubic feet", which is of course distinct from "one thousand feet, cubed". The former has the URI unit:KiloCubicFT. The latter is unit:KiloFT3.
  • Added the cost unit CHF/KiloGM, meaning Swiss Francs per Kilogram. While this could represent a slippery slope in terms of number of units (all currencies combined with all units!), we intend to add them upon request for popular use cases. (Thanks @tpluscode)
  • Updated the QuantityKind referenced by LB_F-PER-IN to be the skos:broader concept EnergyPerArea instead of SurfaceTension (Thanks @mgberg)
  • Added the QuantityKind GaugePressure to support the common use of measuring pressure above ambient atmospheric pressure. A Quantity in QUDT having a QuantityKind of GaugePressure would typically also assert the value of qudt:isDeltaQuantity to be true, indicating that the value is a difference between two pressures. (See the documentation here). Thanks to @TKaluza for suggesting this.

And as always, a big thank-you to all of you for bringing many of these issues to our attention, and even better, for providing submissions to extend the coverage and capabilities of QUDT!