Advertisement
type: Class
ROLE: Abstract
subclass of: Content

Article
type: Class
comment: Articles are included here as soon as they are written--they could go for a while without being published. For example, an article on gardening could be submitted on Monday and not be published until Thursday (when the gardening section is included in the paper).
subclass of: Content

Article Type
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
SLOT-VALUE-TYPE: Advice
SLOT-VALUE-TYPE: News
SLOT-VALUE-TYPE: Opinion
slot value type extension: Symbol
domain: Article

Author
type: Class
ROLE: Abstract
comment: Authors are the people or organizations which provide articles
subclass of: Resource

Content
type: Class
ROLE: Abstract
comment: This is an abstract superclass of both advertisements and articles, containing the the information common to them both.
subclass of: Resource

Content Layout
type: Class
comment: Defines a rectangle of space on a page
subclass of: Layout info

Contents
type: Property
comment: Lists what's in the paper
range: Content
domain: Newspaper

Date
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
comment: When the paper was published
domain: Newspaper
range: Literal

Editor
type: Class
comment: Editors are responsible for the content of sections.
subclass of: Author
subclass of: Employee

Employee
type: Class
ROLE: Abstract
subclass of: Person

FacetInformation Instance0
type: FacetInformation
facet name property: :DOCUMENTATION-IN-FRAME
facet value property: Rectangles are named bacuse, in the publishing industry, there are lots of distinguished rectonagles ("quarter page" etcetera).
facet slot property: name
facet value type property: string

Layout info
type: Class
ROLE: Abstract
subclass of: Resource

News Service
type: Class
comment: This is a use of classes as abstract placeholders. We need some way to indicate a fixed (yet changeable) list of values. In a way, this is just a list of strings, but with constraints in place.
subclass of: Author

Prototype
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Newspaper
range: Prototype Newspaper

Prototype Newspaper
type: Class
comment: This is basically a reified relationship that must always hold.Entries here reflect facts like "On Wednesday, the paper has a Gardening Section and ads in it cost this much..."
subclass of: Layout info

Rectangle
type: Class
comment: Defines a rectangle for space upon the page
facet information property: FacetInformation Instance0
subclass of: Layout info

Reporter
type: Class
comment: A reporter is an employee who writes articles.
subclass of: Author
subclass of: Employee

Salesperson
type: Class
comment: A salesperson sells, and is reponsible for the content of, advertisements.
subclass of: Employee

Section
type: Class
comment: List of possible sections of the paper
subclass of: Layout info

ad name
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Advertisement
range: Literal

ad salesperson
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Advertisement
range: Salesperson

article author
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
comment: Usually a reporter or editor. Could be left blank if it's from one of the big 3 (UP, API, Reuters).
domain: Article
range: Author

breakable
type: Property
SLOT-DEFAULTS: false
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Boolean
domain: Content Layout

byname
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Author
range: Literal

contact person
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: News Service
range: Person

containing section
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
comment: Lists the sections this piece of content could go in. They are ordered by preferences (e.g. the first section in the list is the best one for this article).
domain: Content
range: Section

cost chart
type: Property
slot value type extension: Float
domain: Billing Chart
range: Literal

current job title
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Employee
range: Literal

date hired
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Employee
range: Literal

expiration date
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
comment: Expiration date is really only relevant if an article isn't urgent. For example, an article on the Spring fashions in Paris probably isn't urgent (and could thus be bumped from an issue if urgent news came up). But, it shouldn't be included in Autumn-- thus it needs an expiration date.
domain: Content
range: Literal

headline
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Article
range: Literal

height
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Float
comment: In "points" (the publishing industry's unit of measurement)
domain: Rectangle
range: Literal

image
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
comment: pointer to the file containing the fully laid out ad.
domain: Standard Ad
range: Literal

layout
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Content
range: Content Layout

main rectangle
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Content Layout
range: Rectangle

name
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Billing Chart
domain: Organization
domain: Person
domain: Rectangle
range: Literal

number of pages
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Integer
domain: Newspaper
range: Literal

other information
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
comment: A slot to add infomation about the person that isn't covered by the hierarchy (annotations like "Not available Fridays" or "Prefers voice mail to e-mail" or "This reporter is never around when Superman appears").
domain: Person
range: Literal

page number
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Integer
domain: Content
range: Literal

phone number
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Person
range: Literal

prototype billing chart
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
range: Billing Chart
domain: Prototype Newspaper

published in
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Content
range: Newspaper

purchaser
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Advertisement
range: Person

reading level
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
SLOT-VALUE-TYPE: College
SLOT-VALUE-TYPE: Elementary
SLOT-VALUE-TYPE: High_school
SLOT-VALUE-TYPE: Middle_school
slot value type extension: Symbol
comment: We want to have a good mix in our paper-- from 3'rd grade through adult reading levels.
domain: Article

salary
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Float
domain: Employee
range: Literal

section name
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Section
range: Literal

sub rectangles
type: Property
comment: If the content_layout is breakable, then it breaks into these rectangles.
domain: Content Layout
range: Rectangle

text
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Article
domain: Personals Ad
range: Literal

the organization
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
domain: Library
range: Organization

urgent
type: Property
SLOT-DEFAULTS: false
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Boolean
comment: Urgent content is usually news, advertisements, or opinions (editorials that comment on recent events are a principle example of the latter). If content is urgent, it will be added to the next possible newspaper.
domain: Content

weekday
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
SLOT-VALUE-TYPE: Friday
SLOT-VALUE-TYPE: Monday
SLOT-VALUE-TYPE: Saturday
SLOT-VALUE-TYPE: Sunday
SLOT-VALUE-TYPE: Thursday
SLOT-VALUE-TYPE: Tuesday
SLOT-VALUE-TYPE: Wednesday
slot value type extension: Symbol
domain: Prototype Newspaper

width
type: Property
SLOT-MAXIMUM-CARDINALITY: 1
slot value type extension: Float
comment: In "points" (the publishing industry's unit of measurement)
domain: Rectangle
range: Literal