# Semantic parameterization

Semantic parameterization is a conceptual modeling process for expressing natural language descriptions of a domain in first-order predicate logic. The process yields a formalization of natural language sentences in Description Logic to answer the who, what and where questions in the Inquiry-Cycle Model (ICM) developed by Colin Potts and his colleagues at the Georgia Institute of Technology. The parameterization process complements the Knowledge Acquisition and autOmated Specification (KAOS) method, which formalizes answers to the when, why and how ICM questions in Temporal Logic, to complete the ICM formalization. The artifacts used in the parameterization process include a dictionary that aligns the domain lexicon with unique concepts, distinguishing between synonyms and polysemes, and several natural language patterns that aid in mapping common domain descriptions to formal specifications.

## Relationship to other theories

Semantic Parameterization defines a meta-model consisting of eight roles that are domain-independent and reusable. Seven of these roles correspond to Jeffrey Gruber's thematic relations and case roles in Charles Fillmore's case grammar:
Meta-model Mapping to Case Frames and Thematic Relations :
| Breaux's Meta-model | Fillmore's Case Roles | Thematic Relations |
| Subject | Agentive | Agent |
| Action | |
| Object | Objective/ Factitive | Theme/ Patient |
| Target | Dative | Goal |
| Source | Source | Source |
| Instrument | Instrumental | Instrument |
| Purpose | | Purposive |
| Location | Locative | Location |
| | Comitative | Accompaniment |
The Inquiry-Cycle Model (ICM) was introduced to drive elicitation between engineers and stakeholders in requirements engineering. The ICM consists of who, what, where, why, how and when questions. All but the when questions, which require a Temporal Logic to represent such phenomena, have been aligned with the meta-model in semantic parameterization using Description Logic (DL).
Mapping from DL roles to questions in the Inquiry-Cycle Model :
| DL Role in Meta-model | ICM Question |
| isSubjectOf.Activity | Who performs the action? |
| isObjectOf.Activity | Upon what is the action performed? |
| isTargetOf.Activity | With whom is the transaction performed? |
| isPurposeOf.Activity | Why is the action performed? |
| isInstrumentOf.Activity | How is the action performed? |
| isLocationOf.Activity | Where is the action performed? |

## Introduction with Example

The semantic parameterization process is based on Description Logic, wherein the TBox is composed of words in a dictionary, including nouns, verbs, and adjectives, and the ABox is partitioned into two sets of assertions: 1) those assertions that come from words in the natural language statement, called the grounding, and 2) those assertions that are inferred by the (human) modeler, called the meta-model. Consider the following unstructured natural language statement (UNLS) (see Breaux et al. for an extended discussion):

### UNLS$_{1.0}$

    The customer$_{1,1}$ must not share$_{2,2}$ the access-code$_{3,3}$ of the customer$_{1,1}$ with someone$_{4,4}$ who is not the provider$_{5,4}$.
The modeler first identifies intensional and extensional polysemes and synonyms, denoted by the subscripts: the first subscript uniquely refers to the intensional index, i.e., the same first index in two or more words refer to the same concept in the TBox; the second subscript uniquely refers to the extensional index, i.e., two same second index in two or more words refer to the same individual in the ABox. This indexing step aligns words in the statement and concepts in the dictionary. Next, the modeler identifies concepts from the dictionary to compose the meta-model. The following table illustrates the complete DL expression that results from applying semantic parameterization.
The grounding G and meta-model M derived from UNLS$_{1.0}$ :
| Grounding (G) | Meta-model (M) |
| Customer(p$_1$) ⨅ Share(p$_2$) ⨅ isAccessCodeOf(p$_3$, p$_1$) ⨅ Someone(p$_4$) ⨅ Provider(p$_4$) | Activity(p$_5$) ⨅ hasSubject(p$_5$, p$_1$) ⨅ hasAction(p$_5$, p$_2$) ⨅ hasObject(p$_5$, p$_3$) ⨅ hasTarget(p$_5$, p$_4$) ⨅ isRefrainmentOf(p$_5$, p$_1$) |