@prefix wsem: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . @prefix skos: . @prefix prov: . @prefix dcterms: . @prefix qudt: . @prefix unit: . @prefix qk: . @prefix schema: . @prefix vann: . @prefix bibo: . # WebSemantic core ontology. # One common core; each scientific software is described by instances of it, # never by new core classes. Alignments use rdfs:subClassOf / rdfs:seeAlso only: # no owl:equivalentClass is asserted towards external vocabularies. a owl:Ontology ; dcterms:title "WebSemantic core ontology"@en ; dcterms:description "Common vocabulary linking user requests, software contracts, accepted assumptions, executions and qualified simulation outputs."@en ; owl:versionInfo "0.2.6" ; owl:versionIRI ; owl:priorVersion ; dcterms:created "2026-10-06"^^xsd:date ; dcterms:issued "2026-10-08"^^xsd:date ; dcterms:modified "2026-10-10"^^xsd:date ; dcterms:creator ; dcterms:publisher ; dcterms:source ; dcterms:license ; dcterms:bibliographicCitation "Voyant, C. (2026). websemantic (all versions). Zenodo. https://doi.org/10.5281/zenodo.23238902" ; vann:preferredNamespacePrefix "wsem" ; vann:preferredNamespaceUri "https://w3id.org/websemantic/ns#" ; bibo:status "draft" ; schema:logo ; schema:includedInDataCatalog ; bibo:doi "10.5281/zenodo.23238902" ; dcterms:identifier ; rdfs:seeAlso . a schema:Person ; schema:name "Cyril Voyant" ; schema:url . ######################################################################## # 1. Software and contracts ######################################################################## wsem:Software a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:seeAlso schema:SoftwareSourceCode ; rdfs:label "Software"@en, "Logiciel"@fr ; rdfs:comment "Scientific software used unmodified, identified by repository, pinned revision and concept DOI."@en . wsem:Contract a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Contract"@en, "Contrat"@fr ; rdfs:comment "Published, machine-readable description of how a software may be configured for declared tasks and how its outputs must be read."@en . wsem:TaskProfile a owl:Class ; rdfs:label "Task profile"@en, "Profil de tâche"@fr ; rdfs:comment "A bounded use of the software that the contract supports or explicitly excludes."@en . wsem:ParameterDefinition a owl:Class ; rdfs:subClassOf skos:Concept ; rdfs:label "Parameter definition"@en, "Définition de paramètre"@fr ; rdfs:comment "Concept-level description of an input: meaning, quantity kind, canonical unit, bounds, API variable."@en . wsem:OutputVariable a owl:Class ; rdfs:subClassOf skos:Concept ; rdfs:label "Output variable"@en, "Variable de sortie"@fr ; rdfs:comment "Concept-level description of a computed column: quantity kind, unit, aggregation, temporal support."@en . wsem:Bound a owl:Class ; rdfs:label "Bound"@en, "Borne"@fr ; rdfs:comment "Numerical limit with its authority. A user-interface slider limit is not a physical constraint."@en . wsem:BoundAuthority a owl:Class ; rdfs:label "Bound authority"@en . wsem:ValidityLimit a owl:Class ; rdfs:label "Validity limit"@en, "Limite de validité"@fr ; rdfs:comment "Declared condition outside which results must not be used (e.g. no calibration, no clinical decision)."@en . wsem:Aggregation a owl:Class ; rdfs:label "Aggregation"@en, "Agrégation"@fr . wsem:DataOrigin a owl:Class ; rdfs:label "Data origin"@en, "Origine des données"@fr . ######################################################################## # 2. Qualitative semantics (beaucoup, peu, faible, très élevé, ...) ######################################################################## wsem:QualitativeTerm a owl:Class ; rdfs:subClassOf skos:Concept ; rdfs:label "Qualitative term"@en, "Terme qualitatif"@fr ; rdfs:comment "Word or phrase expressing an ordinal level. It has no numerical meaning by itself."@en . wsem:QualifierMapping a owl:Class ; rdfs:label "Qualifier mapping"@en, "Convention qualitative"@fr ; rdfs:comment "Parameter-specific convention turning a qualitative term into a proposed value. Always a proposal requiring acceptance."@en . wsem:ClarificationPolicy a owl:Class ; rdfs:label "Clarification policy"@en ; rdfs:comment "Rule stating that a term or request has no mapping for a parameter and must trigger a question."@en . ######################################################################## # 3. Requests, scenarios and value records ######################################################################## wsem:Request a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Request"@en, "Demande"@fr . wsem:Evidence a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Evidence"@en, "Preuve"@fr ; rdfs:comment "Exact text span of a request supporting a value. Its presence does not prove semantic correctness."@en . wsem:Scenario a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Scenario"@en, "Scénario"@fr . wsem:Experiment a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Experiment settings"@en, "Réglages d'expérience"@fr ; rdfs:comment "Time grid, horizon, realisations and seed; distinct from physical inputs."@en . wsem:Parameter a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Parameter record"@en, "Enregistrement de paramètre"@fr ; rdfs:comment "Value of one parameter in one scenario, with unit, origin, evidence and acceptance state."@en . wsem:UserValue a owl:Class ; rdfs:subClassOf wsem:Parameter ; rdfs:label "User-provided value"@en . wsem:Hypothesis a owl:Class ; rdfs:subClassOf wsem:Parameter ; rdfs:label "Proposed assumption"@en, "Hypothèse proposée"@fr ; rdfs:comment "Default, qualitative convention or sourced proposal. Not executable until accepted."@en . wsem:OperationalSetting a owl:Class ; rdfs:subClassOf wsem:Parameter ; rdfs:label "Operational setting"@en ; rdfs:comment "Technical choice authorised by declared policy (e.g. fixed seed)."@en . wsem:UnknownValue a owl:Class ; rdfs:subClassOf wsem:Parameter ; rdfs:label "Unknown value"@en, "Valeur inconnue"@fr . [] a owl:AllDisjointClasses ; owl:members ( wsem:UserValue wsem:Hypothesis wsem:OperationalSetting wsem:UnknownValue ) . ######################################################################## # 4. Activities (PROV-O) ######################################################################## wsem:Interpretation a owl:Class ; rdfs:subClassOf prov:Activity ; rdfs:label "Interpretation"@en ; rdfs:comment "Extraction of candidate values from a request, by a language model or a rule."@en . wsem:Normalisation a owl:Class ; rdfs:subClassOf prov:Activity ; rdfs:label "Deterministic normalisation"@en ; rdfs:comment "Exact unit or number conversion (2 km -> 2000 m). Not a domain inference."@en . wsem:Acceptance a owl:Class ; rdfs:subClassOf prov:Activity ; rdfs:label "Acceptance"@en, "Accord"@fr ; rdfs:comment "Explicit user decision making a hypothesis executable."@en . wsem:Validation a owl:Class ; rdfs:subClassOf prov:Activity ; rdfs:label "Validation gate"@en . wsem:Execution a owl:Class ; rdfs:subClassOf prov:Activity ; rdfs:label "Execution"@en, "Exécution"@fr . wsem:SimulationOutput a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:seeAlso schema:Dataset ; rdfs:label "Simulation output"@en, "Sortie de simulation"@fr . wsem:Qualification a owl:Class ; rdfs:subClassOf prov:Entity ; rdfs:label "Output qualification"@en, "Qualification des sorties"@fr ; rdfs:comment "Machine-readable statement of units, aggregation, scope, data origin, uncertainty coverage and admitted uses."@en . ######################################################################## # 5. Object properties ######################################################################## wsem:hasContract a owl:ObjectProperty ; rdfs:domain wsem:Software ; rdfs:range wsem:Contract . wsem:supportsTask a owl:ObjectProperty ; rdfs:domain wsem:Contract ; rdfs:range wsem:TaskProfile . wsem:excludesTask a owl:ObjectProperty ; rdfs:domain wsem:Contract ; rdfs:range wsem:TaskProfile . wsem:declaresParameter a owl:ObjectProperty ; rdfs:domain wsem:Contract ; rdfs:range wsem:ParameterDefinition . wsem:declaresOutput a owl:ObjectProperty ; rdfs:domain wsem:Contract ; rdfs:range wsem:OutputVariable . wsem:declaresValidityLimit a owl:ObjectProperty ; rdfs:domain wsem:Contract ; rdfs:range wsem:ValidityLimit . wsem:requiresParameter a owl:ObjectProperty ; rdfs:domain wsem:TaskProfile ; rdfs:range wsem:ParameterDefinition ; rdfs:comment "Parameter that must be provided or accepted for the task."@en . wsem:producesOutput a owl:ObjectProperty ; rdfs:domain wsem:TaskProfile ; rdfs:range wsem:OutputVariable . wsem:quantityKind a owl:ObjectProperty ; rdfs:range qudt:QuantityKind ; rdfs:comment "QUDT quantity kind of a parameter or output."@en . wsem:canonicalUnit a owl:ObjectProperty ; rdfs:range qudt:Unit ; rdfs:comment "QUDT unit in which values are stored and validated."@en . wsem:hasBound a owl:ObjectProperty ; rdfs:domain wsem:ParameterDefinition ; rdfs:range wsem:Bound . wsem:authority a owl:ObjectProperty ; rdfs:domain wsem:Bound ; rdfs:range wsem:BoundAuthority . wsem:aggregation a owl:ObjectProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range wsem:Aggregation . wsem:dataOrigin a owl:ObjectProperty ; rdfs:range wsem:DataOrigin . wsem:term a owl:ObjectProperty ; rdfs:domain wsem:QualifierMapping ; rdfs:range wsem:QualitativeTerm . wsem:appliesTo a owl:ObjectProperty ; rdfs:domain [ owl:unionOf ( wsem:QualifierMapping wsem:ClarificationPolicy ) ] ; rdfs:range wsem:ParameterDefinition . wsem:concept a owl:ObjectProperty ; rdfs:domain wsem:Parameter ; rdfs:range wsem:ParameterDefinition . wsem:hasParameter a owl:ObjectProperty ; rdfs:domain wsem:Scenario ; rdfs:range wsem:Parameter . wsem:hasExperiment a owl:ObjectProperty ; rdfs:domain wsem:Scenario ; rdfs:range wsem:Experiment . wsem:forTask a owl:ObjectProperty ; rdfs:domain wsem:Scenario ; rdfs:range wsem:TaskProfile . wsem:supportedBy a owl:ObjectProperty ; rdfs:domain wsem:UserValue ; rdfs:range wsem:Evidence . wsem:fromRequest a owl:ObjectProperty ; rdfs:domain wsem:Evidence ; rdfs:range wsem:Request . wsem:followsConvention a owl:ObjectProperty ; rdfs:domain wsem:Hypothesis ; rdfs:range wsem:QualifierMapping . wsem:acceptedBy a owl:ObjectProperty ; rdfs:domain wsem:Hypothesis ; rdfs:range wsem:Acceptance . wsem:qualifiedBy a owl:ObjectProperty ; rdfs:domain wsem:SimulationOutput ; rdfs:range wsem:Qualification . ######################################################################## # 6. Datatype properties ######################################################################## wsem:apiVariable a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:comment "Exact backend identifier (e.g. TunnelConfig.length_m)."@en . wsem:fieldPath a owl:DatatypeProperty ; rdfs:range xsd:string . wsem:repository a owl:DatatypeProperty ; rdfs:range xsd:anyURI . wsem:pinnedRevision a owl:DatatypeProperty ; rdfs:range xsd:string . wsem:conceptDOI a owl:DatatypeProperty ; rdfs:range xsd:string . wsem:boundValue a owl:DatatypeProperty ; rdfs:domain wsem:Bound . wsem:boundKind a owl:DatatypeProperty ; rdfs:domain wsem:Bound ; rdfs:range xsd:string ; rdfs:comment "min, max, min_exclusive or max_exclusive."@en . wsem:proposedValue a owl:DatatypeProperty ; rdfs:domain wsem:QualifierMapping . wsem:requiresAcceptance a owl:DatatypeProperty ; rdfs:domain wsem:QualifierMapping ; rdfs:range xsd:boolean . wsem:sourceNote a owl:DatatypeProperty ; rdfs:range xsd:string . wsem:value a owl:DatatypeProperty ; rdfs:domain wsem:Parameter . wsem:accepted a owl:DatatypeProperty ; rdfs:domain wsem:Parameter ; rdfs:range xsd:boolean . wsem:evidenceText a owl:DatatypeProperty ; rdfs:domain wsem:Evidence ; rdfs:range xsd:string . wsem:temporalSupport a owl:DatatypeProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range xsd:string ; rdfs:comment "native step, daily, hourly envelope, whole period, per course..."@en . wsem:additive a owl:DatatypeProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range xsd:boolean ; rdfs:comment "True if values may be summed over time steps (energy), false otherwise (power, ratios, doses per course)."@en . # Relational properties used by the domain extensions (condition B3). wsem:derivedFrom a owl:ObjectProperty ; rdfs:domain wsem:ParameterDefinition ; rdfs:range wsem:ParameterDefinition ; rdfs:comment "The quantity is computed from others; an inconsistent stated value is a conflict."@en . wsem:convertibleTo a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:domain wsem:ParameterDefinition ; rdfs:range wsem:ParameterDefinition ; rdfs:comment "Two expressions of one physical state related by the stated wsem:derivationRule (e.g. S0 = RH_fraction - 1). Not a numerical equality and not a unit change alone."@en . wsem:dependsOnReference a owl:ObjectProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range wsem:ParameterDefinition ; rdfs:comment "Output meaningful only with the stated reference parameter."@en . wsem:invalidates a owl:ObjectProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range wsem:OutputVariable ; rdfs:comment "Direction: boolean backend flag -> output. When the flag (subject) is true, the object output must not be reported as a result."@en . wsem:derivationRule a owl:DatatypeProperty ; rdfs:range xsd:string . wsem:derivedFromOutput a owl:ObjectProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range wsem:OutputVariable ; rdfs:comment "Output obtained from another output by an exact conversion (unit change, x100...)."@en . wsem:codeDefault a owl:DatatypeProperty ; rdfs:domain wsem:ParameterDefinition ; rdfs:comment "Default set by the backend code; stated, never treated as user data."@en . wsem:validityFlag a owl:DatatypeProperty ; rdfs:domain wsem:OutputVariable ; rdfs:range xsd:string . wsem:groupInstance a owl:DatatypeProperty ; rdfs:domain wsem:Parameter ; rdfs:range xsd:string ; rdfs:comment "Identifier of the course, aerosol mode or other repeated group a record belongs to; checks never mix instances."@en . wsem:requiresInstance a owl:DatatypeProperty ; rdfs:domain wsem:ParameterDefinition ; rdfs:range xsd:boolean ; rdfs:comment "Records of this parameter must carry wsem:groupInstance (repeated course, aerosol mode...)."@en . wsem:partOfGroup a owl:DatatypeProperty ; rdfs:domain wsem:ParameterDefinition ; rdfs:range xsd:string ; rdfs:comment "Parameters that must be supplied together."@en . ######################################################################## # 7. Controlled individuals ######################################################################## wsem:AuthorityCode a wsem:BoundAuthority ; rdfs:label "enforced by backend code"@en . wsem:AuthorityUI a wsem:BoundAuthority ; rdfs:label "user-interface limit, not physical"@en . wsem:AuthorityPolicy a wsem:BoundAuthority ; rdfs:label "experimental policy of the study"@en . wsem:AuthorityDomain a wsem:BoundAuthority ; rdfs:label "domain literature or expert"@en . wsem:SyntheticSimulation a wsem:DataOrigin ; rdfs:label "synthetic simulation"@en . wsem:Measured a wsem:DataOrigin ; rdfs:label "measured"@en . wsem:Assumed a wsem:DataOrigin ; rdfs:label "assumed"@en . wsem:AggNativeStep a wsem:Aggregation ; rdfs:label "value at native time step"@en . wsem:AggSum a wsem:Aggregation ; rdfs:label "sum over steps"@en . wsem:AggMean a wsem:Aggregation ; rdfs:label "mean over steps"@en . wsem:AggMax a wsem:Aggregation ; rdfs:label "maximum over steps"@en . wsem:AggQuantileAcrossRuns a wsem:Aggregation ; rdfs:label "empirical quantile across realisations, not a confidence interval"@en . wsem:AggExtrapolation a wsem:Aggregation ; rdfs:label "linear extrapolation (e.g. 365/n_days), not an observed year"@en . wsem:AggPerCourse a wsem:Aggregation ; rdfs:label "per treatment course"@en . # Ordinal qualitative scale shared by all software. Values are given only by # parameter-specific wsem:QualifierMapping instances in each contract. wsem:QualitativeScale a skos:ConceptScheme ; skos:prefLabel "Échelle qualitative commune"@fr, "Shared qualitative scale"@en . wsem:LevelVeryLow a wsem:QualitativeTerm ; skos:inScheme wsem:QualitativeScale ; skos:prefLabel "très faible"@fr, "very low"@en ; skos:altLabel "très peu"@fr ; wsem:rank 1 . wsem:LevelLow a wsem:QualitativeTerm ; skos:inScheme wsem:QualitativeScale ; skos:prefLabel "faible"@fr, "low"@en ; skos:altLabel "peu"@fr, "court"@fr ; wsem:rank 2 . wsem:LevelTypical a wsem:QualitativeTerm ; skos:inScheme wsem:QualitativeScale ; skos:prefLabel "courant"@fr, "typical"@en ; skos:altLabel "moyen"@fr, "normal"@fr ; wsem:rank 3 . wsem:LevelHigh a wsem:QualitativeTerm ; skos:inScheme wsem:QualitativeScale ; skos:prefLabel "élevé"@fr, "high"@en ; skos:altLabel "beaucoup"@fr, "fort"@fr, "long"@fr ; wsem:rank 4 . wsem:LevelVeryHigh a wsem:QualitativeTerm ; skos:inScheme wsem:QualitativeScale ; skos:prefLabel "très élevé"@fr, "very high"@en ; skos:altLabel "énormément"@fr, "très fort"@fr ; wsem:rank 5 . wsem:rank a owl:DatatypeProperty ; rdfs:domain wsem:QualitativeTerm ; rdfs:range xsd:integer . ######################################################################## # 8. Software instances (identity and task profiles only; full parameter # definitions are exported from each descriptor) ######################################################################## wsem:TLS a wsem:Software ; rdfs:label "Tunnel Load Simulator" ; wsem:repository "https://github.com/cyrilvoyant/tunnel-load-simulator"^^xsd:anyURI ; wsem:pinnedRevision "748e053e129669cf3e896d381e3c0ac01c763edd" ; wsem:conceptDOI "10.5281/zenodo.20080042" ; wsem:hasContract wsem:TLSContract . wsem:TLSContract a wsem:Contract ; wsem:supportsTask wsem:TaskTunnelDemand ; wsem:excludesTask wsem:TaskTunnelCertification ; wsem:declaresValidityLimit wsem:LimitNoCalibration . wsem:TaskTunnelDemand a wsem:TaskProfile ; rdfs:label "Estimate electricity demand of a road tunnel under stated assumptions"@en . wsem:TaskTunnelCertification a wsem:TaskProfile ; rdfs:label "Certify design values or predict consumption of a real tunnel"@en . wsem:LimitNoCalibration a wsem:ValidityLimit ; rdfs:label "Synthetic first-order model, not calibrated against measured tunnels"@en . wsem:LQLEquiv a wsem:Software ; rdfs:label "LQL-Equiv" ; wsem:repository "https://github.com/cyrilvoyant/LQL-Equiv-web"^^xsd:anyURI ; wsem:pinnedRevision "dfc9a338205b8864b8e3470c4ae245b019e88844" ; wsem:conceptDOI "10.5281/zenodo.21948623" ; wsem:hasContract wsem:LQLContract . wsem:LQLContract a wsem:Contract ; wsem:supportsTask wsem:TaskFractionationEquivalence ; wsem:excludesTask wsem:TaskPatientDecision ; wsem:declaresValidityLimit wsem:LimitNotMedicalDevice . wsem:TaskFractionationEquivalence a wsem:TaskProfile ; rdfs:label "Compare fractionation schedules (BED, EQD2, NTCP, TCP) for research and education"@en . wsem:TaskPatientDecision a wsem:TaskProfile ; rdfs:label "Prescribe, modify or validate treatment for an individual patient"@en . wsem:LimitNotMedicalDevice a wsem:ValidityLimit ; rdfs:label "Research and education software; not a medical device"@en . wsem:Pyrcel a wsem:Software ; rdfs:label "pyrcel" ; wsem:repository "https://github.com/darothen/pyrcel"^^xsd:anyURI ; wsem:pinnedRevision "977e9094644ec4a17d658d657094651928591c89" ; rdfs:comment "Version 2.0.0, BSD-3-Clause, used unmodified."@en ; wsem:hasContract wsem:PyrcelContract . wsem:PyrcelContract a wsem:Contract ; wsem:supportsTask wsem:TaskParcelActivation ; wsem:excludesTask wsem:TaskWeatherForecast ; wsem:declaresValidityLimit wsem:LimitAdiabaticParcel . wsem:TaskParcelActivation a wsem:TaskProfile ; rdfs:label "Simulate adiabatic parcel ascent and aerosol activation for a stated updraft, initial state and aerosol population"@en . wsem:TaskWeatherForecast a wsem:TaskProfile ; rdfs:label "Forecast clouds or precipitation for a real place and time"@en . wsem:LimitAdiabaticParcel a wsem:ValidityLimit ; rdfs:label "Zero-dimensional adiabatic parcel; not a weather forecast or a cloud-resolving simulation"@en . ######################################################################## # 9. Worked example of a qualifier mapping (TLS relative traffic), taken # from docs/qualificatifs.md. Full tables are exported from descriptors. ######################################################################## wsem:TLS_traffic_level a wsem:ParameterDefinition ; skos:prefLabel "Trafic relatif"@fr, "Relative traffic"@en ; wsem:apiVariable "TunnelConfig.traffic_level" ; wsem:fieldPath "inputs.traffic_level" ; wsem:quantityKind qk:Dimensionless ; wsem:canonicalUnit unit:UNITLESS ; skos:definition "Multiplier of the reference traffic profile; not vehicles per day."@en . wsem:TLSContract wsem:declaresParameter wsem:TLS_traffic_level . wsem:TLS_traffic_low a wsem:QualifierMapping ; wsem:term wsem:LevelLow ; wsem:appliesTo wsem:TLS_traffic_level ; wsem:proposedValue 0.3 ; wsem:requiresAcceptance true ; wsem:sourceNote "Study convention, not a traffic count." . wsem:TLS_traffic_typical a wsem:QualifierMapping ; wsem:term wsem:LevelTypical ; wsem:appliesTo wsem:TLS_traffic_level ; wsem:proposedValue 1.0 ; wsem:requiresAcceptance true ; wsem:sourceNote "Reference level of the backend profile." . wsem:TLS_traffic_high a wsem:QualifierMapping ; wsem:term wsem:LevelHigh ; wsem:appliesTo wsem:TLS_traffic_level ; wsem:proposedValue 1.5 ; wsem:requiresAcceptance true ; wsem:sourceNote "Study convention, not a traffic count." . wsem:TLS_traffic_veryhigh a wsem:QualifierMapping ; wsem:term wsem:LevelVeryHigh ; wsem:appliesTo wsem:TLS_traffic_level ; wsem:proposedValue 2.0 ; wsem:requiresAcceptance true ; wsem:sourceNote "Study convention, not a traffic count." . wsem:TLS_lighting_type a wsem:ParameterDefinition ; skos:prefLabel "Éclairage"@fr ; wsem:apiVariable "TunnelConfig.lighting_type" ; wsem:fieldPath "inputs.lighting_type" ; skos:definition "Lighting technology and control; not an illuminance."@en . wsem:TLS_lighting_intensity_policy a wsem:ClarificationPolicy ; wsem:appliesTo wsem:TLS_lighting_type ; rdfs:comment "Intensity words (fortement / faiblement éclairé) have no mapping: TLS has no illuminance parameter. Ask the user."@en . wsem:TLS_specific_energy a wsem:OutputVariable ; skos:prefLabel "Énergie spécifique annualisée"@fr ; wsem:apiVariable "kpis.specific_kwh_m_year" ; wsem:quantityKind qk:Energy ; wsem:aggregation wsem:AggExtrapolation ; wsem:additive false ; wsem:temporalSupport "whole period, extrapolated by 365/n_days, per metre of tunnel (all tubes)" ; wsem:dataOrigin wsem:SyntheticSimulation . wsem:TLS_power a wsem:OutputVariable ; skos:prefLabel "Puissance électrique"@fr ; wsem:apiVariable "representative.power_kw" ; wsem:quantityKind qk:Power ; wsem:canonicalUnit unit:KiloW ; wsem:aggregation wsem:AggNativeStep ; wsem:additive false ; wsem:temporalSupport "native step" ; wsem:dataOrigin wsem:SyntheticSimulation . wsem:TLS_energy_step a wsem:OutputVariable ; skos:prefLabel "Énergie du pas"@fr ; wsem:apiVariable "representative.energy_kwh" ; wsem:quantityKind qk:Energy ; wsem:canonicalUnit unit:KiloW-HR ; wsem:aggregation wsem:AggNativeStep ; wsem:additive true ; wsem:temporalSupport "native step" ; wsem:dataOrigin wsem:SyntheticSimulation . # Human-readable labels derived from the term names (FOOPS VOC3); definitions are only given where written. wsem:accepted rdfs:label "accepted"@en . wsem:acceptedBy rdfs:label "accepted by"@en . wsem:additive rdfs:label "additive"@en . wsem:aggregation rdfs:label "aggregation"@en . wsem:apiVariable rdfs:label "api variable"@en . wsem:appliesTo rdfs:label "applies to"@en . wsem:authority rdfs:label "authority"@en . wsem:boundKind rdfs:label "bound kind"@en . wsem:boundValue rdfs:label "bound value"@en . wsem:canonicalUnit rdfs:label "canonical unit"@en . wsem:codeDefault rdfs:label "code default"@en . wsem:concept rdfs:label "concept"@en . wsem:conceptDOI rdfs:label "concept doi"@en . wsem:convertibleTo rdfs:label "convertible to"@en . wsem:dataOrigin rdfs:label "data origin"@en . wsem:declaresOutput rdfs:label "declares output"@en . wsem:declaresParameter rdfs:label "declares parameter"@en . wsem:declaresValidityLimit rdfs:label "declares validity limit"@en . wsem:dependsOnReference rdfs:label "depends on reference"@en . wsem:derivationRule rdfs:label "derivation rule"@en . wsem:derivedFrom rdfs:label "derived from"@en . wsem:derivedFromOutput rdfs:label "derived from output"@en . wsem:evidenceText rdfs:label "evidence text"@en . wsem:excludesTask rdfs:label "excludes task"@en . wsem:fieldPath rdfs:label "field path"@en . wsem:followsConvention rdfs:label "follows convention"@en . wsem:forTask rdfs:label "for task"@en . wsem:fromRequest rdfs:label "from request"@en . wsem:groupInstance rdfs:label "group instance"@en . wsem:hasBound rdfs:label "has bound"@en . wsem:hasContract rdfs:label "has contract"@en . wsem:hasExperiment rdfs:label "has experiment"@en . wsem:hasParameter rdfs:label "has parameter"@en . wsem:invalidates rdfs:label "invalidates"@en . wsem:partOfGroup rdfs:label "part of group"@en . wsem:pinnedRevision rdfs:label "pinned revision"@en . wsem:producesOutput rdfs:label "produces output"@en . wsem:proposedValue rdfs:label "proposed value"@en . wsem:qualifiedBy rdfs:label "qualified by"@en . wsem:quantityKind rdfs:label "quantity kind"@en . wsem:rank rdfs:label "rank"@en . wsem:repository rdfs:label "repository"@en . wsem:requiresAcceptance rdfs:label "requires acceptance"@en . wsem:requiresInstance rdfs:label "requires instance"@en . wsem:requiresParameter rdfs:label "requires parameter"@en . wsem:sourceNote rdfs:label "source note"@en . wsem:supportedBy rdfs:label "supported by"@en . wsem:supportsTask rdfs:label "supports task"@en . wsem:temporalSupport rdfs:label "temporal support"@en . wsem:term rdfs:label "term"@en . wsem:validityFlag rdfs:label "validity flag"@en . wsem:value rdfs:label "value"@en . ######################################################################## # Definitions of the remaining core terms (FOOPS VOC4), written from their use in descriptors, scenarios and shapes. ######################################################################## wsem:Aggregation rdfs:comment "How an output value summarises its native values: per step, per course, sum, mean, median across realisations or maximum. Fixes which values can be added or compared."@en . wsem:BoundAuthority rdfs:comment "Origin of a bound: the backend code itself, a profile policy of the contract, or a scientific source. A code bound cannot be relaxed by the contract."@en . wsem:DataOrigin rdfs:comment "Nature of the data behind a value or output, e.g. synthetic simulation, user statement or measurement. Simulated outputs are never presented as measurements."@en . wsem:Execution rdfs:comment "Controlled run of a pinned backend on a validated scenario, producing simulation outputs and a manifest."@en . wsem:Request rdfs:comment "Natural-language request of a user, kept verbatim as the source of the evidence spans that support provided values."@en . wsem:Scenario rdfs:comment "Machine-readable configuration built from a request: task, parameters with origin and acceptance, and experiment settings. Only a validated scenario is executed."@en . wsem:SimulationOutput rdfs:comment "Result produced by an execution (series, indicators, flags), linked to its scenario, software revision and qualification."@en . wsem:UnknownValue rdfs:comment "Parameter whose value is neither given, derived, nor accepted; it blocks execution and leads to a clarification."@en . wsem:UserValue rdfs:comment "Parameter value stated in the request, or an exact unit conversion of a stated value, supported by evidence from the request."@en . wsem:Validation rdfs:comment "Activity checking a scenario against the contract before execution: types, units, bounds, complete groups, acceptance and relational shapes."@en . wsem:accepted rdfs:comment "True when the user explicitly accepted a proposed default or convention; an unaccepted proposal cannot be executed."@en . wsem:boundValue rdfs:comment "Numerical limit of a bound, in the canonical unit of the parameter."@en . wsem:conceptDOI rdfs:comment "DOI that resolves to all versions of an archived software or dataset (Zenodo concept DOI)."@en . wsem:derivationRule rdfs:comment "Documented rule linking a quantity to others (e.g. total dose = dose per fraction x fractions). Documentary; executed checks are the SHACL shapes and the Python gate."@en . wsem:evidenceText rdfs:comment "Exact span of the request that supports a value; quoted, never paraphrased."@en . wsem:fieldPath rdfs:comment "Path of the field in the published scenario JSON (e.g. inputs.length_m, courses[k].dose_per_fraction)."@en . wsem:pinnedRevision rdfs:comment "Exact source revision (commit or tag) of the backend used for execution."@en . wsem:proposedValue rdfs:comment "Numerical value that a qualitative convention proposes for a parameter, in its canonical unit, pending acceptance."@en . wsem:rank rdfs:comment "Position of a qualitative term on the shared ordinal scale (1 very low to 5 very high); carries no number by itself."@en . wsem:repository rdfs:comment "URL of the original source repository of a software."@en . wsem:requiresAcceptance rdfs:comment "True when a convention may only be proposed and must be accepted by the user before execution."@en . wsem:sourceNote rdfs:comment "Short statement of the source or rationale of a convention, default or bound."@en . wsem:validityFlag rdfs:comment "Name of the backend flag that marks an output as invalid or saturated (e.g. Result.oar_total_valid); flagged values are not reported as valid results."@en . wsem:value rdfs:comment "Value of a parameter in a scenario, expressed in the canonical unit of its definition."@en . wsem:acceptedBy rdfs:comment "Links a hypothesis to the explicit acceptance that allows its use in execution."@en . wsem:aggregation rdfs:comment "Links an output variable to the aggregation that defines it."@en . wsem:appliesTo rdfs:comment "Links a qualifier mapping or clarification policy to the parameter it concerns."@en . wsem:authority rdfs:comment "Links a bound to its authority (code, profile policy or source)."@en . wsem:concept rdfs:comment "Links a parameter value in a scenario to the parameter definition that gives its meaning, unit and bounds."@en . wsem:dataOrigin rdfs:comment "Links a value or output to the nature of its data (simulated, stated, measured)."@en . wsem:declaresOutput rdfs:comment "Links a contract to an output variable it publishes with quantity, unit and aggregation."@en . wsem:declaresParameter rdfs:comment "Links a contract to a parameter definition it publishes."@en . wsem:declaresValidityLimit rdfs:comment "Links a contract to a declared limit of validity or use (e.g. not a medical device)."@en . wsem:excludesTask rdfs:comment "Links a contract to a task profile it explicitly refuses (e.g. patient treatment decision)."@en . wsem:followsConvention rdfs:comment "Links a hypothesis to the qualitative convention it applies."@en . wsem:forTask rdfs:comment "Links a scenario to the supported task profile it instantiates."@en . wsem:fromRequest rdfs:comment "Links evidence to the request it is quoted from."@en . wsem:hasBound rdfs:comment "Links a parameter definition to one of its bounds."@en . wsem:hasContract rdfs:comment "Links a software to its semantic contract."@en . wsem:hasExperiment rdfs:comment "Links a scenario to its experiment settings (period, step, realisations, seed or solver settings)."@en . wsem:hasParameter rdfs:comment "Links a scenario to one of its parameter values."@en . wsem:producesOutput rdfs:comment "Links a task profile to an output variable it produces."@en . wsem:qualifiedBy rdfs:comment "Links a simulation output to its qualification (quantity, unit, support, origin, limits)."@en . wsem:supportedBy rdfs:comment "Links a user value to the request evidence that supports it."@en . wsem:supportsTask rdfs:comment "Links a contract to a task profile it supports."@en . wsem:term rdfs:comment "Links a qualifier mapping to the qualitative term of the shared scale that it interprets."@en .