pmm05 16
DESCRIPTION
fdgdfTRANSCRIPT
School of Computer Science & Information Technology
School of Computer Science & Information Technology
G6DPMM - Lecture 16G6DPMM - Lecture 16
Architecture of Multimedia SystemsArchitecture of Multimedia Systems
Multimedia Architecture
Multimedia consists of :Multimedia consists of : Resources (media)Resources (media) Hypermedia LinksHypermedia Links
Multimedia software thus requires :Multimedia software thus requires : Media viewerMedia viewer Link managerLink manager DatabaseDatabase
Monolithic Architecture
Software EngineSoftware EngineThis is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
Shell Architecture
Software EngineSoftware Engine
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
This is some text. It probably won’t be legible, and it doesn’t really matter what it says.
Advantages of a “Shell” design
Save development effort in large projectsSave development effort in large projects Reusability of contentReusability of content PortabilityPortability
Link Management
Authoring SystemsAuthoring Systems DatabaseDatabase
Flat-field or relationalFlat-field or relational Media file names are usually stored in fieldsMedia file names are usually stored in fields Many suitable development systems Many suitable development systems
(eg Visual Basic and Delphi)(eg Visual Basic and Delphi)
Markup LanguageMarkup Language
Markup LanguagesMarkup Languages
The word “Markup” is derived from the printing The word “Markup” is derived from the printing industryindustry Detailed stylistic instructions for typesettingDetailed stylistic instructions for typesetting Usually hand-written on the copy (eg underlining some Usually hand-written on the copy (eg underlining some
text that is to be set in italics).text that is to be set in italics). Markup languages do the same job for computerised Markup languages do the same job for computerised
documentation systems.documentation systems. Markup adds logical structure to a document, or Markup adds logical structure to a document, or
indicates how it is to be laid out (on paper or screen).indicates how it is to be laid out (on paper or screen). Markup languages are a set of instructions that are Markup languages are a set of instructions that are
amenable to automatic processing.amenable to automatic processing.
Markup Languages (cont.)Markup Languages (cont.)
Usually a sequence of characters in a text (ASCII) file that Usually a sequence of characters in a text (ASCII) file that indicate structure or behaviour of the content.indicate structure or behaviour of the content.
For example (in HTML)For example (in HTML) This is <B>bold</B> and This is <B>bold</B> and thisthis is <I>italic</I> is <I>italic</I> <TITLE>This is the title.</TITLE><TITLE>This is the title.</TITLE>
Markup may be created by directly editing the symbols, but is Markup may be created by directly editing the symbols, but is more usually hidden from end-users.more usually hidden from end-users.
ExamplesExamples HTMLHTML RTFRTF HytimeHytime
Markup
This is a simple document with bold, italic and red text.
{This is a simple document with {\b bold,}{\i italic}{ and }{\cf6 red}{text. \par }}
RTF
<P>This is a simple document with <B>bold,</B> <I>italic</I> and <FONT COLOR=RED>red</FONT> text.</P>
HTML
Generalised Markup
Flexible MetalanguageFlexible Metalanguage Tags indicate the structure of the information - not Tags indicate the structure of the information - not
how it appears.how it appears. For example :For example :
Title, Caption, Objectives, FilenameTitle, Caption, Objectives, FilenameNOTNOT
Bold, Italic, Red or CentredBold, Italic, Red or Centred
This ensures consistencyThis ensures consistency
Generalised Markup (2)
Semantics - what do the tags mean?Semantics - what do the tags mean? Document TypesDocument Types StylesheetsStylesheets
Define the appearance and behaviourDefine the appearance and behaviour Content is described by markup languageContent is described by markup language Simple (eg word processor)Simple (eg word processor) Complex (can contain program code)Complex (can contain program code)
SGML - HistorySGML - History Standard Generalised Markup LanguageStandard Generalised Markup Language 1969 - GML from IBM 1969 - GML from IBM
text editingtext editing formattingformatting information retrievalinformation retrieval
1980 SGML first published1980 SGML first published 1980’s SGML adopted by US IRS & DOD1980’s SGML adopted by US IRS & DOD 1986 - ISO standard1986 - ISO standard
ISO 8879: Information processing--Text and office systems--ISO 8879: Information processing--Text and office systems--Standard Generalized Markup Language (SGML), ([Geneva]: ISO, Standard Generalized Markup Language (SGML), ([Geneva]: ISO, 1986). 1986).
SGMLSGML SGML defines a system of tag markupSGML defines a system of tag markup
<TAG>This is a pair of SGML tags</TAG><TAG>This is a pair of SGML tags</TAG> SGML is a standard for how to specify a tag set.SGML is a standard for how to specify a tag set. Document Type Definition (DTD)Document Type Definition (DTD) SGML documents contain structural elements that can SGML documents contain structural elements that can
be described without consideration of how they are be described without consideration of how they are displayed.displayed.
SGML application.SGML application. HTML is an SGML application.HTML is an SGML application.
Benefits of SGMLBenefits of SGML Documents are created by thinking in terms of structure Documents are created by thinking in terms of structure
rather than appearance (which may change over time). rather than appearance (which may change over time).
Documents are portable because any SGML compliant Documents are portable because any SGML compliant software can interpret them by reference to the DTD.software can interpret them by reference to the DTD.
Documents originally intended for one medium can Documents originally intended for one medium can easily be re-purposed for other media, such as the easily be re-purposed for other media, such as the computer display screen. computer display screen.
Stylesheets are sometimes used.Stylesheets are sometimes used.
Disadvantages of SGML
Very complexVery complex Creating DTD’s requires exacting software engineeringCreating DTD’s requires exacting software engineering Linking tends to be complexLinking tends to be complex Writing SGML software is extremely hardWriting SGML software is extremely hard SGML tools tend to be expensiveSGML tools tend to be expensive
Hytime is extremely complex and not widely used.Hytime is extremely complex and not widely used.
XML vs SGMLXML vs SGML
XML is based upon SGML, but is substantially simplified for use XML is based upon SGML, but is substantially simplified for use on the WWW.on the WWW.
Like SGML, XML is a metalanguageLike SGML, XML is a metalanguage arbitrary definition of elementsarbitrary definition of elements
<TITLE> <PARAGRAPH> <ChapterHeading> <PRICE><TITLE> <PARAGRAPH> <ChapterHeading> <PRICE><PARTNUMBER> <MANUFACTUER> <ExamGrade><PARTNUMBER> <MANUFACTUER> <ExamGrade>
Syntax may Syntax may optionallyoptionally be described by a DTD (or Schema) be described by a DTD (or Schema) Legal XML without a DTD is well formedLegal XML without a DTD is well formed Valid documents have SchemaValid documents have Schema
Style and content are completely separateStyle and content are completely separate XML documents contain contentXML documents contain content Style is specified by Style is specified by stylesheetsstylesheets
An Example XML DocumentAn Example XML Document
<!--?XML version="1.0"?-->
<!DOCTYPE memo PUBLIC "memo.dtd"> <!--A very simple XML document -->
<MEMO> <FROM>Tim Brailsford</FROM> <TO>A.N. Student</TO> <SUBJECT>Your Work</SUBJECT> <DATE>14th February, 2000</DATE> <BODY> <P>This is to confirm that I received your work</P> <P>Thanks, Tim.</P> </BODY></MEMO>
An Example XML DocumentAn Example XML Document
<!--?XML version="1.0"?-->
<!DOCTYPE memo PUBLIC "memo.dtd"> <!--A very simple XML document -->
<MEMO> <FROM>Tim Brailsford</FROM> <TO>A.N. Student</TO> <SUBJECT>Your Work</SUBJECT> <DATE>14th February, 2000</DATE> <BODY> <P>This is to confirm that I received your work</P> <P>Thanks, Tim.</P> </BODY></MEMO>
<!ELEMENT MEMO (FROM, TO, SUBJECT, DATE, BODY)><!ELEMENT FROM (#PCDATA)><!ELEMENT TO (#PCDATA)><!ELEMENT SUBJECT (#PCDATA)><!ELEMENT DATE (#PCDATA)><!ELEMENT BODY (P+)><!ELEMENT P (#PCDATA)>
An Example XML DocumentAn Example XML Document
<!--?XML version="1.0"?-->
<!DOCTYPE memo PUBLIC "memo.dtd"> <!--A very simple XML document -->
<MEMO> <FROM>Tim Brailsford</FROM> <TO>A.N. Student</TO> <SUBJECT>Your Work</SUBJECT> <DATE>14th February, 2000</DATE> <BODY> <P>This is to confirm that I received your work</P> <P>Thanks, Tim.</P> </BODY></MEMO>
<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns:xsd="http://www.w3.org/2000/10/XMLSchema" > <xsd:element name="BODY"> <xsd:complexType><xsd:sequence> <xsd:element ref="P" maxOccurs="unbounded"/> </xsd:sequence></xsd:complexType> </xsd:element> <xsd:element name="DATE" type="xsd:string"/> <xsd:element name="FROM" type="xsd:string"/> <xsd:element name="MEMO"> <xsd:complexType><xsd:sequence> <xsd:element ref="FROM"/> <xsd:element ref="TO"/> <xsd:element ref="SUBJECT"/> <xsd:element ref="DATE"/> <xsd:element ref="BODY"/> </xsd:sequence></xsd:complexType> </xsd:element> <xsd:element name="P" type="xsd:string"/> <xsd:element name="SUBJECT" type="xsd:string"/> <xsd:element name="TO" type="xsd:string"/></xsd:schema>
Contents vs StyleContents vs Style XML tags contain meaning XML tags contain meaning notnot appearance. appearance. This allows extra information to be extractedThis allows extra information to be extracted Consider the example of the scientific names of animals.Consider the example of the scientific names of animals.
scientific names are in latinscientific names are in latin by convention they are always printed in italicsby convention they are always printed in italics
The scientific name of the domestic dogis Canis familiaris, and of the domestic cat is Felis catus.
Contents vs StyleContents vs Style
XML tags contain meaning XML tags contain meaning notnot appearance. appearance. This allows extra information to be extractedThis allows extra information to be extracted Consider the example of the scientific names of Consider the example of the scientific names of
animals.animals. scientific names are in latinscientific names are in latin by convention they are always printed in italicsby convention they are always printed in italics
The scientific name of the domestic dogis Canis familiaris, and of the domestic cat is Felis catus.
In HTML
<P>The <I>scientific</I> name of the domestic dog is <I>Canis familiaris</I>, and of the domestic cat is <I>Felis catus.</I></P>
NB there is no distinction between scientific names and emphasis.
In HTML
<P>The <I>scientific</I> name of the domestic dog is <I>Canis familiaris</I>, and of the domestic cat is <I>Felis catus.</I></P>
NB there is no distinction between scientific names and emphasis.
Contents vs StyleContents vs Style
XML tags contain meaning XML tags contain meaning notnot appearance. appearance. This allows extra information to be extractedThis allows extra information to be extracted Consider the example of the scientific names of Consider the example of the scientific names of
animals.animals. scientific names are in latinscientific names are in latin by convention they are always printed in italicsby convention they are always printed in italics
The scientific name of the domestic dogis Canis familiaris, and of the domestic cat is Felis catus.
In XML
<P>The <emph>scientific</emph> name of the domestic dog is <sci>Canis familiaris</sci>, and of the domestic cat is <sci>Felis catus.</sci></P>
NB emphasis and scientific names are different tags. They may both be displayed as italic, but they can be treated separately.
In XML
<P>The <emph>scientific</emph> name of the domestic dog is <sci>Canis familiaris</sci>, and of the domestic cat is <sci>Felis catus.</sci></P>
NB emphasis and scientific names are different tags. They may both be displayed as italic, but they can be treated separately.
StylesheetsStylesheets Style in XML is defined by stylesheetsStyle in XML is defined by stylesheets Styleseets define the physical appearance of a document, and its Styleseets define the physical appearance of a document, and its
behaviourbehaviour Stylesheets are not a new conceptStylesheets are not a new concept
Word processors/DTPWord processors/DTP SGMLSGML HTML 4.0HTML 4.0
Stylesheet languagesStylesheet languages CSS (Cascading StyleSheets) - developed for HTMLCSS (Cascading StyleSheets) - developed for HTML XSL - developed specifically for XMLXSL - developed specifically for XML
XSLT - transformationsXSLT - transformations FO - formatting objectsFO - formatting objects