Phillips et al.: "Semiotic Modeling for Text String De- Duplication"


Several central themes in object-oriented modeling and design have been demonstrated with this work.

  • Abstraction consists of focusing on essential behaviors of an object or class of objects, while ignoring incidental properties. Abstraction, when applied to the design of classes and objects, denotes the process of identifying the potential uses and manipulations pertinent to a hypothetical object before considering how implementation should occur. This approach was put to use in designing the String class, since a number of potential class member functions were designed prior to the class and any associated objects being implemented.
  • Encapsulation is the process of separating the external aspects of an object, which are accessible to operations outside the class, from the internal workings of a class, which are hidden from all entities external to the class. Encapsulation prevents code from becoming so interdependent that small changes can have a ripple effect and impact far-flung portions of the program that were beyond the designeržs intentions. The String class developed herein uses encapsulation to good effect by providing class member functions that control access to object data, while protecting the data most vital to each object (specifically, the memory location and the string length).
  • Polymorphism is the ability to use similar operations in different contexts. For example, the String class defines an equality operator to be used to compare two strings, and a concatenate operator (+=) that appends one string to another in order to form one longer string.
  • Inheritance is a property that was not needed for this single- class system, but may be employed in future work that will build on that presented herein.
  • Reusability is related to encapsulation in that avoiding interdependence of code allows portions of code to be used in new applications with minimal editing. The importance of this property is evidenced by the code in the Appendix having been adapted from previous applications, and from adaptation of code from other object-oriented designs to future applications (Phillips, et al., 1999).


We find that work has broken new ground in applying principles of object-oriented programming to semiotic modeling. The advantages of an object-oriented approach are intertwined with those of using a word stack approach. There are a number of benefits associated with the code in the Appendix relative to code developed for string processing using previous approaches, most of which were procedural, as opposed to object-oriented. Future work is expected to expand upon these benefits and advantages, and apply them to even more challenging problems.

Page - 1     Page + 1

AS/SA Nº 6/7, Article 1 : Page 11 / 13

© 1999 AS/SA

E-mail to the editors
Pour écrire à la rédaction