uniform comparison of data models using containment modeling - e. james whitehead

16
Uniform Comparison of Uniform Comparison of Data Models Using Data Models Using Containment Modeling Containment Modeling - E. James WhiteHead - E. James WhiteHead

Post on 19-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Uniform Comparison of Data Uniform Comparison of Data Models Using Containment Models Using Containment

ModelingModeling

- E. James WhiteHead- E. James WhiteHead

Page 2: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

IntroductionIntroduction

• Containers fill many rolesContainers fill many roles• grouping and organizing data itemsgrouping and organizing data items• model compound documentsmodel compound documents

• The data models of hypertext systems can be viewed as networks of containment relationships.• Composites, links, anchors, objects …all are

containers

• It is valuable to have a model focused on just the containment relationships among hypertext system entities.

Page 3: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Containment Data ModelsContainment Data Models

• Paper describes about containment relationships, Paper describes about containment relationships, containment data models and application of this model.containment data models and application of this model.

• Subset of Entity relationship model.Subset of Entity relationship model.• Entities signify hypertext abstractions such as Entities signify hypertext abstractions such as

works(doucments), links, anchors & container types.works(doucments), links, anchors & container types.• relationships are either a type of containment, storage relationships are either a type of containment, storage

or inheritance.or inheritance.• Key quality of containment data model is their ability to Key quality of containment data model is their ability to

model systems uniformly, allowing a broad range of model systems uniformly, allowing a broad range of systems to be compared consistentlysystems to be compared consistently..

Page 4: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Goals of Modeling MechanismGoals of Modeling Mechanism• Uniformity Uniformity

• Use a minimal set of system neutral abstractionsUse a minimal set of system neutral abstractions

• UtilityUtility• Answer basic questions about data modelAnswer basic questions about data model

• Are links to whole works, or to a subregion within a workAre links to whole works, or to a subregion within a work• Are links separate from, or part of a work.Are links separate from, or part of a work.

• Support AnalysisSupport Analysis• Tease out different design choicesTease out different design choices

• Graph FormalismGraph Formalism• Communicate models quickly and intuitively with Communicate models quickly and intuitively with

figures.figures.• Concise FormatConcise Format

• Fit many models on a single page, for easy comparisonFit many models on a single page, for easy comparison

• Cross DisciplineCross Discipline• Capable of modeling other Content Management Systems.Capable of modeling other Content Management Systems.

Page 5: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Uniform way of Modeling SystemsUniform way of Modeling Systems• Modeling MechanismModeling Mechanism contain system neutral basic contain system neutral basic

modeling blocks. For ex: links in Dexter hypertext model.modeling blocks. For ex: links in Dexter hypertext model.• Creating Data Models using Non-hypertextual entities Creating Data Models using Non-hypertextual entities

mapped onto hypertext system abstractions. Modeling mapped onto hypertext system abstractions. Modeling used: Extended Entity Relationship Model(ER model).used: Extended Entity Relationship Model(ER model).

• Why ER ?Why ER ?• Emphasis on static relationships.Emphasis on static relationships.• Does not involve modeling behavioral aspects of system Does not involve modeling behavioral aspects of system

entitiesentities

• Elements of ER data model are entities and relationships.Elements of ER data model are entities and relationships.• In modeling Hypertext systemsIn modeling Hypertext systems

• Entities represent hypertext abstractions such as works, anchors Entities represent hypertext abstractions such as works, anchors and links.and links.

• Relationships are of type Containment, inheritance and storageRelationships are of type Containment, inheritance and storage

Page 6: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Basic Static ContainmentBasic Static Containment• Aspects of Containment ModelAspects of Containment Model• Abstract Properties of ContainerAbstract Properties of Container

• Mathematic set of properties independent of a specific Mathematic set of properties independent of a specific computer representationcomputer representation

• Containment: object belongs to one set(single) or Containment: object belongs to one set(single) or many(multiple).many(multiple).

• Membership: each object can belong to a set Membership: each object can belong to a set once(single), or many (multiple) times.once(single), or many (multiple) times.

• Ordering: persistently ordered, unordered, indexed, Ordering: persistently ordered, unordered, indexed, grouped.grouped.

• Containment typeContainment type• Two ways to represent that a container contains a Two ways to represent that a container contains a

particular entityparticular entity• Referential – a pointer to another objectReferential – a pointer to another object• Inclusion – contained object is a sub-part of Inclusion – contained object is a sub-part of

container object.container object.

Page 7: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Containment TypesContainment Types

• Inclusion: item is physically part of container

• Referential containment types:• Describes identifier storage

• On container• On object• On container and object

• First-class containment relationship• A new container is introduced, and storage is delegated to it.

• Hybrid • First-class container plus one other

Page 8: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead
Page 9: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Advanced ContainmentsAdvanced Containments• Containment ConstraintsContainment Constraints

• Type of contained objectsType of contained objects• Number of contained objectsNumber of contained objects• Typing of ContainerTyping of Container

• Dynamic ContainmentDynamic Containment• Mapping from objects to collections is generated by Mapping from objects to collections is generated by

functionsfunctions• Queries can be used to determine collection membership• Query results specify the endpoint of a single containment

relationship• Often used in hypertext versioning, where the query

specifies a revision selection criteria within a versioned object

• Query typically returns a single object• Storage of query predicate varies• Query results specify the membership of the collection• Query returns multiple objects

Page 10: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead
Page 11: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Hypertext System Data Hypertext System Data ModelsModels

• Modeling a broad set of systems Modeling a broad set of systems • Monolithic Hypertext SystemsMonolithic Hypertext Systems

• NoteCards, KMS, Intermedia, HyperCard, NoteCards, KMS, Intermedia, HyperCard, Storyspace 1Storyspace 1

• Dexter reference modelDexter reference model• WWWWWW• Link Server Link Server

• Sun’s Link service, Microcosm, Chimera, Sun’s Link service, Microcosm, Chimera, MulticardMulticard

• Open HyperbaseOpen Hyperbase• Sepia, Hyperdisco and HURLSepia, Hyperdisco and HURL

Page 12: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Observations on Monolithic Hypertext Observations on Monolithic Hypertext systemssystems

• Each System is modeled directly w/o any additional Each System is modeled directly w/o any additional mapping beyond system abstractions to entities.mapping beyond system abstractions to entities.

• KMS and HyperCard SystemsKMS and HyperCard Systems• links embedded within frame/card.links embedded within frame/card.• do not have distinct identifiers & are not separable from do not have distinct identifiers & are not separable from

frames/card.frames/card.• links are modeled as separate entities.links are modeled as separate entities.

Page 13: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Observations on Monolithic Hypertext Observations on Monolithic Hypertext systemssystems

• Story Space 1 and Notecards ModelStory Space 1 and Notecards Model• shows how the containment model shows similarities b/w system shows how the containment model shows similarities b/w system

data model.data model.• since both models have a single file that contains nodes and since both models have a single file that contains nodes and

links.links.• story space can be viewed as refinement of Notecard Model, story space can be viewed as refinement of Notecard Model,

adding notion of guard fields and anchor to its links. adding notion of guard fields and anchor to its links.

Page 14: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

Observations on Dexter modelObservations on Dexter model• Concisely represents Dexter data model.Concisely represents Dexter data model.• Collects huge amounts of data in single placeCollects huge amounts of data in single place• Easy to understandEasy to understand• Good uniformity of modeling mechanism.Good uniformity of modeling mechanism.

Page 15: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

The WebThe Web

Page 16: Uniform Comparison of Data Models Using Containment Modeling - E. James WhiteHead

ConclusionConclusion

• Containment data modeling is capable of uniformly and concisely modeling a wide range of existing data models

• Permits structural cross-comparison of system data models

• Dexter and the Web can be modeled, just like other hypertext systems

• Focuses on Modeling the static aspects of system data model.

• Could be used in modeling systems in other domains.