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/.
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
hasItemthroughout, which is how SULO defines it (sulo:hasItem, inversesulo:isItemIn; SULO has nohasMember). The published version named ithasMemberboth 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:doublewas used butxsd:was never declared- the namespace was given as
http://w3id.org/sulo/rather thanhttps://
Figure 5, the PRO pattern class expression:
isFeatureOFcorrected toisFeatureOf. As printed the expression does not resolve.
Figure 7, the PRO example:
- the
obo:prefix declaration had no terminating period - a period after the
:encountertype assertion closed the statement, leaving the followingsulo:hasParticipantline without a subject. It is now a semicolon. taxon:NCBITaxon_9606used a prefix that was never declared, nowobo:- 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 thanhttps:// - 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.
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.
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.
Requires lualatex, bibtex and qpdf.
make main.pdfThe 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.
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.