Skip to content

Repository files navigation

SULO: a simplified upper-level ontology (FOUST 2025)

LaTeX source for the paper introducing the Simplified Upper-Level Ontology (SULO), published in the CEUR-WS proceedings of FOUST 2025. The built PDF is main.pdf, which is the corrected version described below.

The ontology itself lives at AIDAVA-DEV/sulo, with the namespace https://w3id.org/sulo/.

This source differs from the version of record

The published paper is the version of record. This repository has since been corrected, and the title note in the PDF says so. The differences are listed here in full.

  • The object property is named hasItem throughout, which is how SULO defines it (sulo:hasItem, inverse sulo:isItemIn; SULO has no hasMember). The published version named it hasMember both in the object property tree and in the comparison with SIO. The figure was already corrected in the source before the rest of this work; the SIO comparison was not.
  • The closing section is titled Acknowledgments rather than Funding. This was already present in the source.

The rest are corrections to the two Turtle listings and the pattern expression. Neither Turtle listing parsed as published. Each was extracted verbatim and parsed with rdflib: Figure 4 failed at line 4, Figure 7 at line 3. Both parse now, to 9 and 16 triples.

Figure 4, the SOLID example:

  • the pato: prefix declaration had no terminating period, which was the parse error
  • xsd:double was used but xsd: was never declared
  • the namespace was given as http://w3id.org/sulo/ rather than https://

Figure 5, the PRO pattern class expression:

  • isFeatureOF corrected to isFeatureOf. As printed the expression does not resolve.

Figure 7, the PRO example:

  • the obo: prefix declaration had no terminating period
  • a period after the :encounter type assertion closed the statement, leaving the following sulo:hasParticipant line without a subject. It is now a semicolon.
  • taxon:NCBITaxon_9606 used a prefix that was never declared, now obo:
  • the stated inference was over :visit_1, which the example data never defines. It is now :encounter, which is what the surrounding prose already said.
  • the namespace was given as http:// rather than https://
  • the role individuals are now also typed sulo:Role

The prose named the second role smith_physician_role while the listing defines :smith_care_provider_role, matching OMRSE_00000012 'health care provider role'. The prose now follows the listing.

No claim, result, or axiom of SULO is changed by any of this.

On the role typing, which is the one change that is not a typo

Figure 6's role chain is correct as published and needs nothing: sulo:hasParticipant's owl:propertyChainAxiom carries no class conditions on any position, so the inference Figure 7 claims follows from the data as printed.

Figure 5's pattern is what requires the typing. Role and isFeatureOf some Object needs the role individuals to be sulo:Role, and they were typed only as OMRSE classes, which are not imported. Without the added typing the example does not instantiate the pattern the section is illustrating.

How the corrections were checked

The corrected Figure 7 was verified against sulo.ttl with a reasoner, not only a parser: the listing extracted verbatim from main.tex entails :encounter sulo:hasParticipant :alice, :drsmith, which is exactly what the figure claims.

Every SULO term the paper names was then checked against sulo.ttl (commit 3299613), to catch any other name that had drifted the way hasMember had:

Checked Result
sulo: prefixed terms in the listings 17 distinct, all defined in SULO
Object property tree 9 properties, covering all 9 inverse pairs, none missing
Object property hierarchy isIn > isPartOf > isDirectPartOf matches; every other node has no superproperty, as drawn
Class taxonomy figure all 17 classes present, none invented
Class hierarchy all 15 parent/child edges asserted or entailed in sulo.ttl
Property names set in bold teletype 37 distinct, 18 not SULO terms, all of them deliberately foreign

The 18 are SNOMED relations (findingSite, RoleGroup), SPHN schema properties (hasAdmission, hasOriginLocation and others), SIO and IAO terms (existsAt, realizes, iao:isAbout), and the domain-specific properties the paper argues against (hasPatient, hasCareProvider, hasTemperature). None is a misspelling of a SULO term. hasMember was the only stale name.

Faithfully adapted versions of both figures are live regression tests in MaastrichtU-IDS/sulo-testharness, including competency questions that recover the participants and the value/quality/unit triple, so the inferences these figures claim are checked against every change to the ontology.

Building

Requires lualatex, bibtex and qpdf.

make main.pdf

The build produces a 14 page PDF, matching the pagination of the published version, so page-level citations remain valid. Note that make exits non-zero on the final qpdf step, which reports a harmless warning about a duplicated /Group key; main.pdf is complete regardless.

Licence

The paper is copyright its authors, used under CC BY 4.0, as stated in the published version. The LaTeX class files are under the LaTeX Project Public Licence; see Copyright.txt. The CEUR-WS logo is under the CEUR-WS Restricted Use Logo Licence.

About

FOUST 2025 SULO manuscript

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages