Given by Geoffrey C. Fox at Rice University Tango Tutorial on October 18 1999. Foils prepared October 19 1999
Outside Index
Summary of Material
Architecture of Training Portal with interfaces, services and distributed educational objects |
Standards and pragmatic use of XML for Educational Objects |
Services and some solutions: Databases for administration and content; Authoring.
|
Relationship of Education and Enterprise Portals |
Outside Index Summary of Material
Rice University Tango Tutorial |
October 18 1999 |
Geoffrey Fox |
NPAC Syracuse University |
Syracuse NY 13244-4100 |
gcf@npac.syr.edu |
3154432163 |
Architecture of Training Portal with interfaces, services and distributed educational objects |
Standards and pragmatic use of XML for Educational Objects |
Services and some solutions: Databases for administration and content; Authoring.
|
Relationship of Education and Enterprise Portals |
We are discussing Web-based education or portals to a virtual university or virtual corporate training center and yesterday you heard about portals to computing |
Merrill Lynch predicts that Enterprise Information portal market will be $15B by 2002 |
So assume that we are building education portals in terms of "Distributed Educational Objects" -- this is not really an assumption but a statement as to "language used" |
Portals are built as a customizable set of XML components ( e.g. Display a thumbnail of the next web-page in lecture or run a Particular Program ) |
There are several important Object Models: COM, CORBA, Java, Web, Oracle Database ...... |
But it doesn't matter!! |
XML File System (Web Site) |
Or |
Middle Tier "Business Logic" dissociates User and Back End |
Export/Import |
Request |
Information |
The two Sweet Spots for defining Universal Interfaces (IDL or Templates) |
Educational Objects can be stored in Databases or Web Sites |
Broker or Server |
XML |
Result |
XML Query |
Rendering Engine |
Browser |
Rendering Engine |
HTML |
Objects |
XML Request for service |
followed by return of XML result |
So we wish to move ahead and enter a world moving with Internet Speed ... |
But neither us nor the world we move in knows quite what we want to do |
We need to set standards so that our infrastructure and content can be largely reused |
If we start now with public domain or commercial systems like "mine", "yours", WebCT, Blackboard, CAPA then how can we do this so can evolve as technology changes |
We could ask system provider to support "standards" but this is not very helpful if standards are insufficient |
Educause IMS (www.imsproject.org) and IEEE P1484 are working on standards (which will be expressed in XML) but currently they seem far from being sufficient. |
So we need to agree on an "architecture" (such as that shown earlier) and decide where the "sweet spots" are to define standards
|
Then standards define interfaces to distributed educational objects (methods and properties) |
XML is useful as a flexible way of specifying object interfaces in a convenient user readable way supported by growing number of tools
|
So XML Web pages are natural XML specified objects but you can use XML as export of an Oracle database |
COM and CORBA define their interfaces in a specialized IDL (Interface Definition Language) |
Java defines its object interfaces in terms of Java the language |
But it does not matter if object is in text file, C (accessed via CORBA or COM), Oracle, Java or JavaScript; one can define interface in XML and map to particular realization |
So XML is Universal Object Specification
|
< npaceducationxml > <question questionID="0000005">
|
</question> </ npaceducationxml> |
<!ELEMENT npaceducationxml (quiz+, lecture+, author+, course+) > |
<!ELEMENT quiz (question)+> |
<!ATTLIST quiz quizID ID #REQUIRED |
authorID IDREF #REQUIRED |
courseID IDREF #REQUIRED |
lectureID IDREF #REQUIRED> |
<!ELEMENT author (name, email+, institution)> |
<!ATTLIST author authorID ID #REQUIRED> |
<!ELEMENT name (family, given)> |
<!ELEMENT family (#PCDATA)> |
<!ELEMENT given (#PCDATA)> |
<!ELEMENT email (#PCDATA)> |
<!ELEMENT institution (#PCDATA)> |
Identify types of educational objects and divide them and their properties into
|
Find where good standards exist and use them |
Work with organizations to eventually agree on important missing standards (as with IMS and DoD ADL) |
Define in XML, the missing interfaces as <yourinstitutiontrainingxml> and insist that vendors either adopt these interfaces or define their proprietary interfaces as <webctxml> <blackboardxml> <iplanetxml> <oraclexmlportlet> etc.
|
Blackboard has popular products (CourseInfo, Campus) which have very good administrative support including linkage to University student databases. |
1000 institutions (300,000 people) using this |
Modest capability to author curricula but good tools such as discussion lists, homework, grading and simple quizzes |
No Built-In Synchronous Delivery |
http://www.blackboard.com |
WebCT has 877 Institutions in 46 countries with stronger authoring capabilities but still rather basic HTML |
Good services such as Glossary |
http://www.webct.com |
http://webct.ncsa.uiuc.edu:8900/ |
WebCT Course Page from NCSA |
WebCT |
Says ..... |
"(better)portalML" -- define the user's customized portal layout and what they can choose from
|
Portal building tools will exist for developers (architect type of portal i.e. differentiate my.NPAC from my.Netscape) and users ( specialize particular portal architecture ) |
Such general tools will be competition for education specific systems like WebCT |
Educational Components and Services are abstracted as a set of hierarchical Toolbars-- perhaps as in Word or similar commodity software |
Toolbars (made of individual commands/object accesses) are defined in XML and rendered in HTML for user interface. |
Toolbars can access a direct middle-tier service or a educational objects |
Education Toolbars include user profile specification (layout, universal access), University Services (sports, tickets) , Choice of different curricula, Access to particular on-line resources (programming labs, chats, bulletin boards etc.), Homework submittal and administrative services, integration with "personal portal" to store notes |
iPlanet and Netscape Custom Netcenter. This supports fixed and personalized channels which can be repositioned. Can add Corporate banners etc. Feeds can be XML or HTML. See http://www.iplanet.com/products/portal_svcs/cnc_corp/index.html |
Excite or Yahoo: http://www.yahoo.com is currently relatively primitive portal technology but no doubt this will be enhanced. |
Desktop.com: http://www.Desktop.com currently has only a Beta version of the service, which isonly available for the PC.
|
http://www.dreamriver.com/ Unclear at present |
Oracle has proposed a Portal Framework built around "Portlets", which are a set of standard Java API's wrapping any existing information or application. The "Portlet" runs on the server (Oracle WebDB 3.0) and delivers a live area of HTML which can then be placed on the Portal site.
|
http://www.portal.com: Infranet6.0, has been implemented by Global Center, the complex Web hosting division of Global Crossing Telecommunication |
http://wwww.datachannel.com: proposes portalML for XML based Portal |
http://www.sequoiasw.com: Interactive Portal Interchange2000 models all source data, including relational databases, as XML documents or objects. See http://www.sequoiasw.com/i2000_product_article.html |
VML is Vector Graphics Mark up Language |
DrawML is designed to support simple technical drawings as sketched on whiteboards and used in (my) PowerPoint |
VRML (3D scenes) re-implemented in XML as X3D |
MathML Mathematical Expressions |
What emerges to support export of Excel, Word for spreadsheets, text etc. |
Database access languages as in ColdFusion |
Resource Description Framework (RDF) standard for metadata exchange, enables better content searching on the Web |
Store PowerPoint on a foil by foil basis, HTML in Database |
Store Images and Multimedia objects (to support education or family photos!) |
Create scripts (play lists) that create new presentations by mixing old ones |
Complete XML Syntax to access database contents from browser and can add your own tags interpreted by Java Servlet |
Java Administrative manager supporting hierarchical (directory style) "courses" |
Edit Categories |
Edit Foils |
<?WWTEMPLATE> |
<?XML VERSION="1.0" CACHE="NO"?> |
<WW_DOCUMENT> |
<WW_CONNECT CONNECTION=""/> |
<html> <head> |
<title> Foilnumber <WW_FOILNUMBER PARENTID="${PID}" FOILID="${FID}"/> :<WW_TITLE FOILID="${FID}" /> </title></head> |
<WW_BODYIMAGE/> |
<tt><a href="#image">Image</a><a href="#buttons"> Buttons</a> </tt><b> <WW_LINK FILENAME="temphelp.tdl" ATTR="">HELP!</WW_LINK> |
</b> version of Foils prepared <WW_MODIFICATIONDATE FOILID ="${FID}" /> </tt> |
Connect to Database |
Insert Foil# |
Insert Date |
Insert Title |
Insert Link with file coming from database |
<h2> Foil <WW_FOILNUMBER PARENTID="${PID}" FOILID="${FID}" /> <WW_TITLE FOILID="${FID}" /> </h2> |
<WW_LINK FILENAME="tempfoilsephtml.tdl" > HTML Version</WW_LINK> |
<hr> <a name="buttons"> |
<WW_NEXT FOILID ="${FID}" PARENTID="${PID}" FILENAME="tempfoilsepimage.tdl" IMAGENAME="ww_next"/> |
<WW_PREV FOILID="${FID}" PARENTID="${PID}" FILENAME="tempfoilsepimage.tdl" IMAGENAME="ww_prev"/> |
<WW_LINK FILENAME="tempfullindex.tdl" ATTR="PID=${PID}"> |
<WW_IMAGE IMAGENAME="ww_up" FOILID="${FID}" PARENTID="${PID}" /> </WW_LINK> |
<WW_SELECTSOUND FOILID="${FID}" NAME="ISSOUND"><INSERT NAME="${ISSOUND}"/> |
</WW_SELECTSOUND> |
........ |
</WW_DOCUMENT> |
Conditional Test on associated audio clip |
being available |
Next and Previous Buttons |
Insert Image from Database |
Title again |
Synchronized Multimedia Integration Language (SMIL) enables simple authoring of TV-like multimedia presentations such as training courses on the Web |
Image and other specialized media descriptors
|
More generally perhaps universalaccessML will allow one to support different renderings of an object needed for different users and clients
|
"People" including students, teachers, administrators |
"Bibliographic" descriptors as in Dublin Core |
CollaborationML as in NPAC's SPW (Shared Portal on the Web) |
Administrative Structure
|
Performance (grading) information |
Assessment data such as surveys, access logs |
Glossaries (there would be a middle tier glossary service to automatically link glossary entries to document fragments |
Quizzes |
Hierarchical Curriculum structure from document fragment to page to lecture to course with provision for linked material for further study
|
Index/Abstract of high level knowledge |
Homework |
Student Annotations |
Glossary service stores current glossary (defined in XML) and integrates with selected document fragments |
Select optimal version (audio, image, high resolution etc.) of an object (Universal Access Service) |
XML Glossary |
Java |
Servlet |
Add Glossary |
Basic Web Server |