Competency questions are frequently written as anonymous strings even though ontology scope, requirements, formalization, evidence, and review evolve independently. This specification defines a first-class RDF contract that preserves those distinctions and supports traceability, machine-extractable natural-language templates, executable SPARQL evaluation, lifecycle governance, and recursive testing of the ontology's own competency questions.

This is an unofficial 0.1 Editor's Draft maintained by Inferal. Feedback should be sent to contact@inferal.com.

Conformance

The key words MUST, MUST NOT, SHOULD, and MAY are to be interpreted as described in BCP 14 when they appear in all capitals.

A publisher emits RDF using the vocabulary. A data graph conforms when its targeted resources pass the declared SHACL validation regime with the base ontology and its imported MOD and PROV semantics available. A query processor executes a formal query under its declared language and graph assumptions. A validator applies SHACL; it does not execute query source merely because that source is present in RDF.

Vocabulary meaning is open-world RDFS/OWL meaning. Cardinality, required links, cross-resource consistency, and malformed graph rejection are closed-world SHACL concerns. Query results and execution statuses are operational evidence. No inverse triples or inferred types need to be materialized by publishers, but validators MUST make the imported type hierarchy available when applying class constraints.

Introduction and audience

Treating a competency question as a string on an ontology loses its identity when the wording is translated, revised, assigned to a stakeholder, formalized more than once, or evaluated against a new version. Treating the SPARQL text as the question loses the human requirement and incorrectly makes one implementation definitive. Treating a passing SHACL report as the answer confuses graph well-formedness with domain truth.

Ontology authors use this model to state requirements and scope. Reviewers use it to inspect rationale, lifecycle, and coverage. Test runners use it to locate query artifacts, fixtures, and expected results. Catalog and governance tools use stable question IRIs rather than attempting to reconcile changing text.

Scope and non-goals

The ontology owns the identity and traceability contract around competency questions. It models natural-language formulations, requirements, use cases, stakeholders, semantic-artifact targets and versions, expectations, query artifacts, fixtures, executions, machine-observed results, qualified expectation assessments, lifecycle and review states, ordered template elements, and qualified coverage.

It does not provide a general project-management or requirements-management ontology. It does not translate natural language into SPARQL, define a universal scoring metric, or infer that unrecorded coverage is false. It does not claim that a passed query proves the target ontology complete, nor that self-application proves the initial requirements correct or independent.

Competency questions

The ontology's own acceptance corpus asks:

  1. Which first-class questions define this ontology, and what formulations express them?
  2. Which requirement, use case, and stakeholder motivate each question?
  3. Which module and version does each question target?
  4. Which expected answer or answer constraint belongs to each question?
  5. Which formal query, fixture, execution, result, and status provide evidence?
  6. What lifecycle and review states apply?
  7. Which CQ kinds classify the questions, and which natural-language templates are available for qualified realization?
  8. Which ordered fixed-text and slot occurrences constitute each template?
  9. Which declared public terms lack qualified coverage, and which seeded mutations escape detection?
  10. Which resources constitute the seed that exists before self-description?
  11. Which machine-checkable expectations are satisfied by observed results, and is empty distinct from unknown?
  12. Which passing executions used a target version other than the question's current target?
  13. Do multiple formal queries for one question agree over the shared semantic fixture?

Identity, traceability, governance, template structure, and the bootstrap boundary are visibly answered by the self-application graph. Coverage, ordered element extraction, satisfaction, evidence currency, and co-formalization are also acceptance criteria for executable queries, SHACL constraints, and mutation tests.

Namespace and dependencies

PrefixNamespaceRole
cqo https://ontology.inferal.com/modules/competency-question/ Terms defined by this specification.
mod https://w3id.org/mod# Semantic-artifact identity for question targets. [[MOD]]
prov http://www.w3.org/ns/prov# Agents, entities, activities, attribution, generation, and time. [[PROVO]]

MOD's mod:competencyQuestion is a datatype property whose value is a string. It MAY provide a lossy catalog summary, but cqo:hasCompetencyQuestion is intentionally not its subproperty or equivalent because it relates a resource.

Landscape, reuse, and non-reuse

C-ODO established that a competency question can be a use-case pattern and a motivating query usable as a unit test. Its legacy upper-ontology commitments and dependency closure are much stronger than this module's portable contract, so it is cited but not imported or aligned. [[CODO]]

CORAL makes an ontological requirement a resource, while its CQ and answer remain literals and every requirement is committed to a lexico-syntactic pattern. This module preserves the useful distinctions but rejects import and subclass alignment because not every valid CQ has that mandatory pattern commitment. [[CORAL]]

The QuO model used by ROCQS defines five CQ kinds by their function and distinguishing constituents. This module preserves those definitions as locally governed values with source provenance, not as imported classes, because ROCQS is a CC0 research corpus rather than a stable RDF vocabulary. QuO explicitly leaves room for further kinds, so the local range remains extensible. [[ROCQS]]

CLaRO motivates separate question, formulation, and template resources. Its XML serialization distinguishes ordered text, entity, and predicate chunks rather than leaving a template only as presentation text. This module adopts that occurrence-and-order insight while using locally governed RDF terms; it does not import or equate the XML element names, which have no stable RDF vocabulary IRIs. [[CLARO]] [[CLARO-REPOSITORY]] A template still does not entail one query. The CQ/SPARQL-OWL dataset demonstrates many-to-many and missing mappings between linguistic patterns and formal query signatures. These sources therefore support an explicit, non-functional CQ-to-query relation. [[CQSPARQLOWL]]

Version 0.1.0 makes no external OWL equivalence or subclass alignment. Similar labels across these sources do not establish identical identity, lifecycle, or entailments.

Conceptual model

The model follows a question from authoring intent to operational evidence without collapsing the resources that change at different times. A question can retain its identity while its wording is translated, its target advances to a new version, a second query is added, or a new execution supersedes earlier evidence. The following table is a boundary guide; the normative patterns are explained in the sections that follow.

flowchart LR
    R["Ontology
requirement"] -->|"addressed by"| CQ["Competency
question"] U["Use case"] -->|"supported by"| CQ S["Stakeholder"] -->|"has interest in"| CQ CQ -->|"has formulation"| F["Question
formulation"] CQ -->|"has instantiation"| I["Template
instantiation"] I -->|"uses"| T["Question
template"] I -->|"realizes"| F T -->|"has ordered element"| E["Text segment
or slot"] CQ -->|"has expectation"| A["Expected answer
or constraint"] CQ -->|"has formal query"| Q["Executable
formal query"] Q -->|"uses fixture"| X["Test fixture"] Q -->|"run by"| RUN["Query execution"] RUN -->|"generates"| RESULT["Execution result"] RESULT -->|"compared with expectation"| ASSESS["Expectation
assessment"]
The principal traceability path. Template elements describe natural-language structure; the separate query, execution, result, and assessment path provides operational evidence.
ResourceRepresentsDoes not imply
cqo:CompetencyQuestionPersistent evaluative requirement identityOne wording or one formalization
cqo:QuestionSetA governed collection assembled for a purposeThat every relevant question is present
cqo:QuestionFormulationA language-specific expressionA distinct question
cqo:OntologyRequirementA semantic capability or boundary the ontology should provideA question, test, or implementation task
cqo:UseCaseThe stakeholder situation or decision motivating evaluationThat the described workflow has occurred
cqo:QuestionTemplateA language-specific rendering plus an ordered element sequenceA controlled grammar, slot binding, or executable query
cqo:TemplateTextSegmentOne fixed text occurrence, including significant whitespace or punctuationA replaceable input
cqo:TemplateSlotOne replaceable occurrence at an ordered positionThe logical input or its bound value
cqo:TemplateParameterA template-local logical input shared by slot occurrencesA query variable or one occurrence
cqo:TemplateInstantiationA qualified realization of one template as one formulationA loose linguistic classification or formal query
cqo:TemplateBindingOne parameter's semantic value and surface text in an instantiationAn ontology axiom or query-variable binding
cqo:ExpectedAnswerA reviewable required resultThat execution occurred
cqo:AnswerConstraintA machine- or human-interpretable boundary on acceptable answersThat any result satisfies it
cqo:FormalQueryExecutable processor inputAn ontology axiom or unique translation
cqo:TestFixtureFixed evaluation inputA hand-authored proof of output
cqo:QueryExecutionOne time-bounded act of running a formal queryThat the result passed or is still current
cqo:ExecutionResultStatus and machine observations from one runSatisfaction of a particular expectation
cqo:ExpectationAssessmentA qualified result-to-expectation judgementAn ontology entailment or universal truth
cqo:CoverageAssertionA qualified traceability claimClosed-world completeness beyond its evidence

Question identity and context

A cqo:CompetencyQuestion is the durable identity of the capability being asked about. Its IRI is suitable for review, coverage, execution, and lifecycle links. Editing punctuation, adding a translation, or attaching another formal query does not by itself create a new question. A materially different requirement or target scope normally does.

A conforming competency question MUST have at least one formulation, requirement, use case, stakeholder, kind, purpose, target artifact, answer expectation, lifecycle state, and review state. A question MAY have several formulations and purposes. A target version, when supplied, MUST identify the target artifact with dcterms:isVersionOf.

A cqo:QuestionSet gives a collection its own governance context: stakeholder and purpose belong to the set as well as, or independently of, individual members. Membership is intentionally open. A set described as a “release suite” does not become exhaustive merely because no additional cqo:containsQuestion values are present.

Formulations and templates

A cqo:QuestionFormulation is one natural-language expression of a question. It is a resource rather than a literal on the question so publishers can attach language, attribution, and provenance, and so translations or deliberate paraphrases remain distinguishable. Two formulations connected through cqo:hasFormulation express the same question identity; the ontology does not infer that arbitrary similar strings are equivalent.

A cqo:QuestionTemplate is a reusable authoring pattern for producing or recognizing formulations. It carries exactly one language-tagged cqo:templateText rendering and one or more cqo:TemplateElement occurrences through cqo:hasTemplateElement. Logical inputs are separate cqo:TemplateParameter resources connected through cqo:hasTemplateParameter. The rendering remains useful for people, but consumers MUST use the element and parameter graph rather than parsing square brackets or another punctuation convention.

Every element MUST have exactly one zero-based cqo:elementIndex within exactly one template. Indices in a complete conforming template are unique and contiguous from zero. A cqo:TemplateTextSegment carries exactly one language-tagged cqo:segmentText, including significant whitespace and punctuation. A cqo:TemplateSlot uses exactly one parameter through cqo:usesParameter. Each parameter carries one non-empty cqo:parameterName and MAY carry one resource-valued cqo:parameterRole. Names and roles describe the input; the parameter IRI carries identity. Roles do not imply a corresponding ontology class, property, or formal-query variable.

Element resources are occurrences. Two slot occurrences in one template MAY use the same parameter when one logical input appears more than once. The parameter is bound once per instantiation and its binding text is reused at each occurrence. This preserves distinct positions without making string equality carry identity semantics.

Because this ontology does not prescribe a placeholder-rendering syntax, SHACL cannot prove that punctuation in cqo:templateText is a lossless serialization of the element graph. Publishers MUST ensure that both views communicate the same pattern. Processors that require deterministic structure MUST treat the elements as authoritative and the rendering as a display view.

flowchart LR
    T["QuestionTemplate"] -->|"has element"| E0["0 · Text segment"]
    T -->|"has element"| E1["1 · Slot occurrence"]
    T -->|"has parameter"| P["TemplateParameter"]
    E1 -->|"uses parameter"| P
    I["TemplateInstantiation"] -->|"uses template"| T
    I -->|"has binding"| B["TemplateBinding"]
    B -->|"binds parameter"| P
    B -->|"binding text"| V["Rendered phrase"]
    I -->|"realizes"| F["QuestionFormulation"]
    I -.->|"does not bind"| Q["FormalQuery"]
Occurrence order, logical parameter identity, and an instantiation binding are separate. The dashed edge marks a prohibited shortcut: natural-language realization does not bind or generate a formal query.

A cqo:TemplateInstantiation is the qualified resource connected from a question by cqo:hasTemplateInstantiation. It identifies exactly one template with cqo:usesTemplate, exactly one formulation with cqo:realizesFormulation, and its bindings with cqo:hasTemplateBinding. The linked formulation MUST belong to that question. Each declared template parameter MUST be bound exactly once, and no undeclared parameter may be bound.

A cqo:TemplateBinding binds one parameter through cqo:bindsParameter, supplies exactly one semantic value through either cqo:boundResource or cqo:boundLiteral, and supplies the exact surface phrase through cqo:bindingText. The semantic value and its language-specific rendering remain distinct. Processors realize a formulation by ordering elements by cqo:elementIndex and concatenating each fixed cqo:segmentText or the binding text for the slot's parameter. CLaRO motivates ordered linguistic structure, while CQ/SPARQL-OWL cautions against treating this realization as a deterministic query signature. Template bindings MUST NOT be interpreted as formal-query variable bindings. [[CLARO]] [[CQSPARQLOWL]]

Requirements, use cases, and stakeholders

A cqo:OntologyRequirement states the capability or boundary the target ontology is expected to provide. A cqo:UseCase states why that capability matters in a stakeholder situation or decision. The competency question is the interrogative instrument used to examine the requirement in that context. Keeping all three resources separate permits one requirement to motivate several questions and one question to support several use cases without duplicating their prose.

cqo:hasStakeholder points to a prov:Agent with an interest or responsibility in the question, requirement, use case, or set. Stakeholder is not synonymous with author, reviewer, or executor; those roles require their own provenance statements when relevant.

Kind, purpose, lifecycle, and review

Four independent axes prevent convenient labels from becoming hidden lifecycle logic. cqo:questionKind records the question's semantic function and distinguishing constituents under the QuO/ROCQS model. It is not inferred from words such as “which”, “relationship”, or “foundational”. cqo:questionPurpose is Inferal's separate operational-use axis: design, evaluation, or regression. A question authored as an answerable validation constraint can therefore guide design and later serve regression without changing its kind. [[ROCQS]]

KindQuO/ROCQS boundaryIllustrative question
cqo:ScopingQuestion Mentions domain entities and helps demarcate the subject domain and candidate ontology content; it need not yet be formalizable or answerable. Which brewing techniques belong in the coffee ontology?
cqo:ValidationQuestion Validates ontology content and is intended to be formalizable and answerable without exceeding the permitted representation language. Which equipment does the ontology require for steeping coffee?
cqo:FoundationalQuestion Uses an entity or characteristic from a foundational ontology to align or interrogate a distinct domain entity. Can brewing method be aligned with DOLCE's perdurant branch?
cqo:RelationshipQuestion Examines a relationship's arity, elementarity, participants or domain/range, or an expressible relational property. Is the affects taste relationship transitive?
cqo:MetapropertyQuestion Applies an ontological metaproperty criterion to classify a foundational or domain entity. Is being a coffee bean rigid throughout an instance's existence?

cqo:lifecycleState records whether the question is draft, accepted, or deprecated. cqo:reviewState independently records whether review is absent, active, approved, or has requested changes. Acceptance does not entail approval, and approval does not prove the expected answer true. The controlled values are extensible individuals; their absence cannot be interpreted as a default value under open-world semantics.

Expectations, formal queries, and fixtures

cqo:AnswerExpectation is the common type for two different contracts. A cqo:ExpectedAnswer names concrete answer text or answer resources that reviewers expect to see. A cqo:AnswerConstraint carries an expression together with the language or convention that gives the expression meaning. Neither class records an observed answer.

A cqo:FormalQuery is an executable artifact, not merely an illustrative code snippet. It MUST declare query text, the query language that interprets that text, at least one fixture describing its input contract, and a retrievable artifact location. A cqo:TestFixture identifies a fixed graph or dataset used for evaluation; it is input evidence, not a hand-authored assertion that the query passed. Formalization remains optional at the vocabulary level because not every foundational or stakeholder question can be safely reduced to a graph query.

A machine comparison MUST use an cqo:ExpectationAssessment to identify both the observed result and the assessed expectation. This qualified form permits one result to be compared with several expectations without treating one unqualified boolean as their shared judgement. The local result cardinality convention interprets a non-negative integer expression as the required row count.

Execution and coverage

A cqo:QueryExecution is a concrete prov:Activity. It MUST name the query, every evaluated question, its fixtures, completion time, at least one used semantic-artifact version, and one result. Re-running unchanged query text is a new execution because time, processor context, input retrieval, and target version may differ.

A cqo:ExecutionResult is the prov:Entity generated by that activity and MUST point back to it. Passed and failed results MUST record a cardinality or boolean machine observation. Not-run and errored results MUST NOT claim those observations: absence remains unknown rather than zero or false. A diagnostic cqo:resultMessage helps humans but is not a substitute for the typed observation.

A passed execution is current evidence for a question only when the version named through prov:used equals that question's current cqo:targetsVersion. Historical executions remain valid provenance records after a target changes, but no longer satisfy the current recursive acceptance contract.

An cqo:ExpectationAssessment qualifies the comparison of exactly one result with exactly one expectation. This avoids treating “passed execution” and “expected answer satisfied” as synonyms when one result is checked against several expectations.

A cqo:CoverageAssertion qualifies question-to-resource traceability because a direct many-to-many edge cannot carry scope, provenance, or degree. Covered, partial, and uncovered are explicit claims about the named pair. A covered assertion does not entail that another unmentioned resource is uncovered, and a complete list of assertions is complete only under an external closed-world acceptance rule such as this ontology's self-test.

Self-application and recursive acceptance

This ontology's fourteen competency questions are instances of cqo:CompetencyQuestion. They target this ontology and its 0.1.0 version, link to requirements, use cases, stakeholders, formulations, answers, kinds, purposes, and, where an exact realization is claimed, qualified template instantiations. Two boundary-setting questions are Scoping CQs; the twelve answerable checks on module content are Validation CQs. None is mislabeled Foundational merely because it concerns bootstrapping, or Relationship merely because it retrieves RDF links. One question specifically asks for the ordered elements of the ontology's own templates and is answered by an independent extraction query. A second asks whether qualified parameter bindings reconstruct linked formulations and is answered by an ordered-fragment realization query. The primary row-producing query evaluates the recursive contract; the co-formalization question also has a boolean query over the same semantic fixture.

The reference query returns a row for any missing recursive link, inconsistent target version, incomplete query artifact, stale passed evidence, missing machine observation or expectation assessment, malformed template structure, non-regression corpus member, incorrect self-corpus kind assignment, or public class or property without a covered assertion. A passing result is zero rows. Its qualified assessment compares that observed cardinality with the declared zero-row constraint. Implementations claiming this recursive capability MUST execute the query; copying a hand-authored passing result is insufficient.

The alternate boolean formalization returns true for the complete graph. Removing a public-term coverage assertion makes the row-producing query return a diagnostic and the boolean query return false. Agreement is therefore demonstrated by execution on both the valid graph and a checked mutation, rather than inferred merely because both artifacts are linked to one question.

Bootstrap boundary

Self-description begins from a seed: RDF/Turtle syntax, stable vocabulary IRIs, initial class and property declarations, question instances, and executable query text must exist before those resources can be described with this vocabulary. Once asserted, the ontology can describe the seed and the query can evaluate the combined graph.

This is not a logical proof of the vocabulary by the vocabulary. The questions do not entail their own class declarations, and the passing query does not prove that the initial requirements are exhaustive. It proves only that the declared recursive contract is internally present and operationally exercised.

Examples

Validation and entailment

The complete-question shape targets explicit cqo:CompetencyQuestion instances. It requires contextual traceability, controlled states, and answer expectations. The target version consistency constraint checks dcterms:isVersionOf. Query and execution shapes require artifact identity, query language, fixtures, completion time, a used semantic-artifact version, result generation, and agreement between an execution's query and each evaluated question. Completed-result constraints require a machine observation; not-run and error states prohibit one. Expectation assessments bind one result to one expectation and check the local result-cardinality convention when selected.

Template validation requires one rendering and at least one element, exactly one owning template and index per element, exactly one element kind, unique contiguous indices, and parameters owned and used by the same template. Parameter names are unique within a template. Instantiation validation requires one owning question, one template, one formulation belonging to that question, and exactly one binding for every declared parameter. Binding validation distinguishes a resource value from a literal value and requires one language-tagged surface phrase. These checks validate supplied structure; SHACL does not parse cqo:templateText, concatenate fragments, or generate elements, bindings, or formulations.

SHACL conformance establishes structural consistency under the declared data and ontology graphs. It cannot establish that a natural-language answer is correct, that a stakeholder truly approved a question, or that the question set is exhaustive. [[SHACL]]

RDFS domains and ranges infer types; they are not validation filters. The OWL addendum types classes, object properties, datatype properties, and controlled individuals. It deliberately adds no functional properties, equivalences, keys, disjointness, or cardinality axioms.

Validation shape reference

The following named shapes provide basic coverage for every public class: cqo:CompetencyQuestionShape, cqo:QuestionSetShape, cqo:QuestionFormulationShape, cqo:OntologyRequirementShape, cqo:UseCaseShape, cqo:QuestionTemplateShape, cqo:TemplateElementShape, cqo:TemplateTextSegmentShape, cqo:TemplateSlotShape, cqo:TemplateParameterShape, cqo:TemplateInstantiationShape, cqo:TemplateBindingShape, cqo:FormalQueryShape, cqo:TestFixtureShape, cqo:AnswerExpectationShape, cqo:ExpectedAnswerShape, cqo:AnswerConstraintShape, cqo:QueryExecutionShape, cqo:ExecutionResultShape, cqo:ExpectationAssessmentShape, cqo:CoverageAssertionShape, cqo:CompetencyQuestionKindShape, cqo:QuestionPurposeShape, cqo:LifecycleStateShape, cqo:ReviewStateShape, cqo:ExecutionStatusShape, and cqo:CoverageStatusShape.

Operational behavior

A processor evaluates a question only when it can load the query text under the declared query language and the named fixtures or target graph. It MUST report an error rather than fabricate a passed result when the query cannot be prepared, required input is unavailable, or graph assumptions are contradictory.

The recursive reference behavior uses SPARQL 1.1 [[SPARQL11]] and returns diagnostic rows. Missing evidence fails closed by producing a row; a processor never infers a pass from the absence of an execution record. A completed tabular execution records its observed row count; a boolean execution records its observed boolean. A processor evaluating a result-cardinality constraint compares the integer expression with the observed count and emits a qualified assessment.

The template-element reference query returns one row for each ordered occurrence, including its owning template, element IRI, index, element class, fixed text or parameter identity, name, and optional role. It orders rows by template and index and never inspects cqo:templateText. Returning those rows is data extraction, not SHACL validation or ontology entailment.

The template-realization reference query returns one ordered fragment per element of each qualified instantiation. For a text segment the fragment is cqo:segmentText; for a slot it is the cqo:bindingText attached to that slot's parameter. A processor concatenates the fragments in numeric index order and MUST compare the result with the linked formulation text when claiming exact realization. This is an explicit natural-language transformation, not an OWL entailment, SHACL rule, or formal-query variable binding.

The reference corpus supplies row-producing and boolean co-formalizations. Both are executed over the same semantic graph and MUST agree on the declared pass and on the seeded coverage failure. Repeated evaluation over an unchanged RDF dataset is deterministic because neither query generates identifiers nor depends on solution ordering.

Security and privacy

Questions, fixtures, expected answers, stakeholder links, and query results can reveal product strategy, unpublished ontology scope, personal identities, sensitive test data, or attack-oriented queries. Publishers SHOULD apply access controls appropriate to each resource and MUST NOT infer that a public ontology requires every connected fixture or stakeholder record to be public.

Processors MUST treat query text and fixture locations as untrusted input. This vocabulary does not authorize network access, mutation, entailment regimes, or processor extensions.

Evolution and governance

Public term IRIs are stable. Meanings that must change incompatibly will be represented with new terms and migration guidance rather than silent redefinition. Question IRIs SHOULD remain stable across wording changes; replaced questions SHOULD be deprecated while their prior formulations, executions, and coverage evidence remain traceable.

Design, evaluation, and regression purposes are independent. A question reused from construction during regression proves adherence to an accepted requirement, not held-out generalization. Claims of domain coverage SHOULD use independently elicited evaluation questions and disclose their provenance.

Term reference

Classes

TermNormative role
cqo:CompetencyQuestionPersistent question identity, not a wording or query.
cqo:QuestionSetNamed question collection without an implicit completeness claim.
cqo:QuestionFormulationLanguage-tagged expression of a question.
cqo:OntologyRequirementRequired semantic capability or boundary.
cqo:UseCaseStakeholder situation or intended decision motivating a question.
cqo:QuestionTemplateLanguage-specific rendering and ordered natural-language element sequence, not a formalization.
cqo:TemplateElementOne indexed occurrence owned by exactly one template.
cqo:TemplateTextSegmentFixed language-tagged text occurrence, including significant spacing or punctuation.
cqo:TemplateSlotReplaceable ordered occurrence that uses one logical parameter.
cqo:TemplateParameterResource-identified logical input declared by one template and shared by one or more slots.
cqo:TemplateInstantiationQualified realization of one template as one question formulation.
cqo:TemplateBindingAssignment of one parameter to a semantic value and language-specific surface phrase.
cqo:FormalQueryExecutable query artifact interpreted by its declared language.
cqo:TestFixtureFixed graph or dataset supplied to execution.
cqo:AnswerExpectationSuperclass for concrete answers and acceptable-answer constraints.
cqo:ExpectedAnswerConcrete expected text or RDF resource.
cqo:AnswerConstraintExpression constraining acceptable answers.
cqo:QueryExecutionConcrete PROV activity that runs a formal query.
cqo:ExecutionResultPROV entity generated by one query execution.
cqo:ExpectationAssessmentQualified comparison of one result with one answer expectation.
cqo:CoverageAssertionQualified claim about question-to-resource coverage.
cqo:CompetencyQuestionKindRole of what a question asks.
cqo:QuestionPurposeUse of a question in its lifecycle.
cqo:LifecycleStateAuthoring and maintenance state.
cqo:ReviewStateIndependent review disposition.
cqo:ExecutionStatusOutcome category for one execution result.
cqo:CoverageStatusDegree claimed by one coverage assertion.

Properties

TermNormative role
cqo:hasCompetencyQuestionResource-to-question relation; not MOD's literal property.
cqo:containsQuestionQuestion-set membership.
cqo:hasFormulationConnects a question to a wording resource.
cqo:formulationTextLanguage-tagged wording text.
cqo:addressesRequirementQuestion-to-requirement traceability.
cqo:requirementTextLanguage-tagged requirement statement.
cqo:supportsUseCaseQuestion-to-use-case traceability.
cqo:useCaseTextLanguage-tagged use-case statement.
cqo:hasStakeholderInterested or responsible PROV agent, not necessarily author.
cqo:questionKindSemantic CQ role.
cqo:questionPurposeDesign, evaluation, or regression operational use, independent of kind and lifecycle state.
cqo:targetsArtifactSemantic artifact evaluated by a question.
cqo:targetsVersionSpecific target version linked to its artifact by Dublin Core.
cqo:hasAnswerExpectationConnects expected answer or constraint.
cqo:hasFormalQueryPotentially non-unique executable formalization.
cqo:hasTemplateInstantiationConnects a question to a qualified natural-language realization.
cqo:hasTemplateElementTemplate-to-element occurrence relation; RDF serialization order is irrelevant.
cqo:hasTemplateParameterDeclares a logical input owned by a question template.
cqo:usesParameterConnects a slot occurrence to the parameter rendered at that position.
cqo:usesTemplateIdentifies the template used by an instantiation.
cqo:realizesFormulationIdentifies the exact formulation realized by an instantiation.
cqo:hasTemplateBindingConnects an instantiation to one of its parameter assignments.
cqo:bindsParameterIdentifies the logical parameter assigned by a binding.
cqo:lifecycleStateCurrent authoring lifecycle state.
cqo:reviewStateCurrent review disposition.
cqo:templateTextSingle language-tagged human-readable template rendering.
cqo:elementIndexZero-based occurrence position, unique and contiguous per conforming template.
cqo:segmentTextExact fixed text carried by a text-segment occurrence.
cqo:parameterNameNon-empty template-local display name; the parameter IRI carries identity.
cqo:parameterRoleOptional extensible logical-input role; not a query-variable binding.
cqo:boundResourceIRI assigned as the semantic value of a binding.
cqo:boundLiteralLiteral assigned as the semantic value of a binding.
cqo:bindingTextExact language-tagged surface phrase rendered for a parameter.
cqo:queryTextExecutable source interpreted only under the query language.
cqo:queryLanguageIRI identifying the query language.
cqo:usesFixtureFixture used by a query contract or execution.
cqo:answerTextLanguage-tagged concrete expected answer.
cqo:answerResourceRDF resource expected in an answer.
cqo:constraintExpressionExpression restricting acceptable answers.
cqo:constraintLanguageIRI identifying how to interpret the constraint.
cqo:executionOfFormal query run by an execution.
cqo:evaluatesQuestionQuestion evaluated by an execution.
cqo:hasExecutionResultResult generated by an execution.
cqo:executionStatusControlled outcome of a result.
cqo:resultMessageOptional diagnostic text, not machine proof.
cqo:resultCardinalityObserved row count from a completed tabular query; absence is not zero.
cqo:resultBooleanObserved boolean from a completed boolean query; absence is not false.
cqo:assessesResultResult compared by an expectation assessment.
cqo:assessesExpectationAnswer expectation compared by an assessment.
cqo:expectationSatisfiedBoolean assessment judgement under the declared expectation interpretation.
cqo:coverageQuestionQuestion supporting a coverage assertion.
cqo:coveredResourceResource evaluated for coverage.
cqo:coverageStatusDegree claimed by the assertion.

Controlled values

TermMeaning
cqo:ScopingQuestionDemarcates subject domain and candidate content by mentioning domain entities; need not yet be formalizable or answerable.
cqo:ValidationQuestionValidates ontology content through an intended formalizable and answerable question within the permitted representation language.
cqo:FoundationalQuestionUses a foundational-ontology entity or characteristic to align or interrogate a domain entity.
cqo:RelationshipQuestionExamines relationship arity, elementarity, participants or domain/range, or a relational property.
cqo:MetapropertyQuestionApplies an ontological metaproperty criterion to classify a foundational or domain entity.
cqo:DesignPurposeGuides scoping or modeling.
cqo:EvaluationPurposeEvaluates a target artifact.
cqo:RegressionPurposeDetects loss of accepted capability.
cqo:DraftStateQuestion may change without deprecation.
cqo:AcceptedStateQuestion belongs to the current contract.
cqo:DeprecatedStateRetained for compatibility, not new use.
cqo:UnreviewedStateNo review disposition is recorded.
cqo:InReviewStateQuestion is under review.
cqo:ApprovedStateQuestion passed the claimed review regime.
cqo:ChangesRequestedStateReview requires revision.
cqo:NotRunStatusNo completed execution is available.
cqo:PassedStatusDeclared execution assertions succeeded.
cqo:FailedStatusExecution completed but assertions failed.
cqo:ErrorStatusProcessing failed before a valid evaluative result.
cqo:CoveredStatusQuestion covers the resource under stated evidence.
cqo:PartialCoverageStatusCoverage is explicitly partial.
cqo:UncoveredStatusResource is explicitly not covered under review.
cqo:ResultCardinalityConstraintLanguageLocal convention interpreting a non-negative integer expression as a required result-row count.