Semantic parameterization

Semantic parameterization is a conceptual modeling process for expressing natural language descriptions of a domain in first-order predicate logic.[1][2][3] 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.[4] The parameterization process complements the Knowledge Acquisition and autOmated Specification (KAOS) method,[5] 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[6] and case roles in Charles Fillmore's case grammar:[7]

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.[4] 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.[3] for an extended discussion):

UNLS1.0
The customer1,1 must not share2,2 the access-code3,3 of the customer1,1 with someone4,4 who is not the provider5,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 UNLS1.0
Grounding (G) Meta-model (M)
Customer(p1)

⨅ Share(p2)
⨅ isAccessCodeOf(p3, p1)
⨅ Someone(p4)
⨅ Provider(p4)

Activity(p5)

⨅ hasSubject(p5, p1)
⨅ hasAction(p5, p2)
⨅ hasObject(p5, p3)
⨅ hasTarget(p5, p4)
⨅ isRefrainmentOf(p5, p1)

gollark: It's just a fuzzer/issue detection thing, right? Not as good as actually having the type system enforce non-stupid stuff.
gollark: Or they could just use tools which make it harder to write code with memory leaks/corruption/whatever.
gollark: I *was* considering recompiling nginx with LibreSSL.
gollark: There is, what is it again, rustls, though. Maybe they'll provide some way to replace openssl with that.
gollark: I hope security-critical stuff like OpenSSL gets done in Rust or something.

References

  1. Travis D. Breaux and Annie I. Antón (2004). Deriving Semantic Models from Privacy Policies Archived 2011-07-28 at the Wayback Machine. North Carolina State University Computer Science Technical Report TR-2004-36.
  2. Travis D. Breaux and Annie I. Antón (2008). "Mining Rule Semantics to Understand Legislative Compliance" Archived 2011-07-28 at the Wayback Machine. North Carolina State University Computer Science Technical Report TR-2005-31.
  3. T.D. Breaux, A.I. Anton, J. Doyle, "Semantic parameterization: a process for modeling domain descriptions" Archived 2008-05-17 at the Wayback Machine, ACM Transactions on Software Engineering Methodology, vol. 18, no. 2, Article 5, 2008.
  4. C. Potts, K. Takahashi, and A.I. Anton, "Inquiry-based requirements analysis", IEEE Software 11(2): 21–32, 1994.
  5. A. Dardenne, A. van Lamsweerde and S. Fickas, "Goal-Directed Requirements Acquisition", Science of Computer Programming v. 20, North Holland, 1993, pp. 3-50.
  6. J. Gruber, Lexical Structures in Syntax and Semantics, North Holland, New York, 1976.
  7. C. Fillmore, "The Case for Case", Universals in Linguistic Theory, Holt, Rhinehart and Winston, New York, 1968.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.