To Previous Chapter To Table of Contents To Bottom of Page To Next Chapter

Chapter 4 - The Semantic Object Model

first developed in 1988 by Codd, Hammer and McLeod
  1. Semantic Objects
    1. "purpose of a database application is to provide forms, reports and queries so that the user can record data and obtain the information they need about entities or objects important to their work"
    2. "main goals of the early stages of database development are to build a data model that documents the things to be represented in the database, to determine the characteristics of those those things that need to be stored, and to establish the relationships among them"
    • Defining Semantic Objects
      • A semantic object is a named collection of attributes that sufficiently describe a distinct identity (representation of some identifiable thing in the users' work environment
      • Attributes respresent all of the characteristics of the identifier being represented
      • Identities are the nouns about which the information is to be produced
      • Identities that the object represent may or may not have a physical representation
    • Attributes
      • simple attributes have a single value
      • group attributes are composites of other attributes
      • semantic object attributes establish a relationship between semantic objects
      • semantic object diagram (object diagram)
        IDDEPARTMENT1.1
          DepartmentName1.1
        CampusAddress

        Building1.1
        OfficeNumber1.1

        0.1

          PhoneNumber1.N
          FaxPhoneNumber0.1
          COLLEGE1.1
          PROFESSOR1.N
          STUDENT1.N
      • object links (object attributes)
      • ATTRIBUTE CARDINALITY (minimum and maximum)
      • OBJECT INSTANCES
      • PAIRED ATTRIBUTES (ex. DEPARTMENT contains COLLEGE & COLLEGE contains DEPARTMENT
    • Object Identifiers - one or more object attributes that are used to identify object instances (i.e. StudentName, StudentID)
      group identifier (identifier has more than one attribute)
    • Attribute Domains - description of an attribute's possible values [may be an enumerated list
    • Semantic Object Views - portion of an object that is visible to a particular application [can be used to develop the data model]

  2. Creating Data Models with Semantic Objects
    • reverse engineer from reports, forms, and queries
    • start from scratch

  3. An Example: The Highline University Administration Database
    1. THE COLLEGE OBJECT
      COLLEGE
       ID CollegeName1.1
        DeanName1.1
        PhoneNumber1.N
      CampusAddress

      Building1.1
      OfficeNumber1.1

      0.1

        DEPARTMENT1.N
    2. THE DEPARTMENT OBJECT
      DEPARTMENT
       ID DeptName1.1
        ChairPerson1.1
        PhoneNumber1.N
        TotalMajors1.1
      CampusAddress

      Building1.1
      OfficeNumber1.1

      0.1

        COLLEGE1.1
        PROFESSOR1.N
        STUDENT1.N
    3. THE PROFESSOR OBJECT
      PROFESSOR
       ID ProfessorName1.1
        PhoneNumber1.N
      CampusAddress

      Building1.1
      OfficeNumber1.1

      0.1

        DEPARTMENT1.1
    4. THE STUDENT OBJECT
      STUDENT
       ID StudentName1.1
       ID StudentNumber1.1
        PhoneNumber1.N
        DEPARTMENT1.1
    • Specifying Objects
      Semantic Object Specification
      Object
      Name
      Property
      Name
      Min
      Card
      Max
      Card
      ID
      Status
      Domain
      Name
      COLLEGECollegeName11IDCollegeName
       DeanName11 PersonName
         FirstName01 FirstName
         LastName11 LastName
       PhoneNumber01 Phone
       CampusAddress01 CampusAddress
         Building11 Building
         OfficeNumber11 OfficeNumber
       DEPARTMENT1N DEPARTMENT
      DEPARTMENT
      PROFESSOR
      STUDENT

      Domain Specifications
      Domain Name Type Semantic DescriptionPhysical Description
      AddressGroupA U.S. AddressStreet, City, State, Zip
      BuildingSimpleA name of a building on campus Text 20
      Campus AddressGAn address on campusBuilding, Office Number
      CitySA city nameText 25
      COLLEGESemantic ObjectOne of Highline's ten collegesSee semantic object specification table
      CollegeNameSThe official name of a college at HighlineText 25
      DEPARTMENTSOAn academic department on campusSee semantic object specification table

  4. Types of Objects
    • Simple Objects - contains only single-valued, nonobject attributes (ex. EQUIPMENT)
    • Composite Objects - contains one or more multivalued nonobject attributes (ex. HOTEL-BILL)
    • Compound Objects - contains at least one object attribute (ex. COLLEGE)
      Four Types of Compound Objects
      Object2
      Can
      Contain
      Object1 Can Contain
      One Many
      One 1:1 1:N
      Many M:1 M:N
    • Hybrid Objects - combinations of objects of two types (semantic object with at least one multivalued group attribute that includes a semantic object attribute
      DORMITORY Hybrid Object
      DORMITORY
      ID  DormName
           ResidentAssistant
           Phone
           StudentRent
           STUDENT1.1

             Rent0.1

      1.N

    • Association Objects - object that relates two (or more) objects and stores data that are peculiar to that relationship [ex. FLIGHT is an association object that associates AIRPLANE and PILOT objects
    • Parent/Subtype Objects - the subtype inherits all of the attributes of its parent [ex. MANAGER / EMPLOYEE where a manager is also an employee]
    • Archtype/Version Objects - produces other semantic objects that represent versions, releases, or editions of the archetype [ex. TEXTBOOK produces EDITIONs]

  5. Comparing the Semantic Object and the E-R Model
    • Similarities
      1. both are tools for understanding and documenting the structure of the users' data
      2. both strive to model the structure of the things in the users' world and the relationships among them
    • Differences
      1. principal difference is one of orientation
      2. E-R model: concept of entity is basic [entities and relationships are pieces of the data model]
      3. S-O model: concept of semantic object is basic[set of semantic objects in a data model is a map of the essential structure of the things that the user considers important]
      4. semantic objects are semantically self-contained (contains metadata about the "objects")

To Previous Chapter To Table of Contents To top of page To Next Chapter