Xml and distributed applications
This presentation is the property of its rightful owner.
Sponsored Links
1 / 16

XML and Distributed Applications PowerPoint PPT Presentation


  • 61 Views
  • Uploaded on
  • Presentation posted in: General

XML and Distributed Applications. By Quddus Chong Presentation for CS551 – Fall 2001. Overview. Introduction to XML Applications and Vocabularies XML Transformations Schema-Based Programming XML & Databases XML & The Semantic Web XML-RPC & SOAP XML Tools & Resources Online.

Download Presentation

XML and Distributed Applications

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Xml and distributed applications

XML and Distributed Applications

By Quddus Chong

Presentation for CS551 – Fall 2001


Overview

Overview

  • Introduction to XML

  • Applications and Vocabularies

  • XML Transformations

  • Schema-Based Programming

  • XML & Databases

  • XML & The Semantic Web

  • XML-RPC & SOAP

  • XML Tools & Resources Online


Introduction to xml

Introduction to XML

  • Extensible Markup Language (version 1.0)

  • Developed by W3 Consortium, made available as a public specification since 1998.

  • Essentially a markup language that describes the content and structure of data.

  • Key principle: separation of data content and data presentation.

  • Can be transmitted using basic www protocols such as HTTP.

  • Foundation for a universal data exchange and data storage format.


Xml applications vocabularies

XML Applications & Vocabularies

  • XML allows the exchange of data in specific domains such as business, science, education, and healthcare through standard ‘vocabularies.’

    • e.g. Chemical Markup Language (CML), BizTalk, Dublin Core, IMS Global Learning Consortium, Health Level 7.

  • XML vocabularies are formalized using DTDs or XML Schemas.

  • Applications can be built around XML data; two programming APIs are the Document Object Model (DOM) and the Simple API for XML (SAX).


Example dals learner space xml binding of learner profile

Example: DALS Learner SpaceXML binding of learner profile

<?xml version="1.0" encoding="UTF-8"?>

<StudentProfile>

<Student>

<StudentID>12345</StudentID>

<ThinkingStyle>Anarchic</ThinkingStyle>

<SocialPresence>High</SocialPresence>

<StressLevel>High</StressLevel>

<Feedback>Low</Feedback>

<LastModuleName>Recursion</LastModuleName>

<LastTopic>1.0</LastTopic>

<Difficulty>1</Difficulty>

<LastTopicSummary>Complete</LastTopicSummary>

<Grade>85</Grade>

</Student>

</StudentProfile>


Example dals knowledge network xml binding of course content

Example: DALS Knowledge Network XML binding of course content

<?xml version="1.0" encoding="utf-8"?>

<Text>

<PageInfo>

<SubjectName>Networking</SubjectName>

<SubjectID>003</SubjectID>

<ChapterName>Introduction to Networks</ChapterName>

<ChapterID>1</ChapterID>

</PageInfo>

<TopicList>

<Topic>

<TopicName>Router</TopicName>

<TopicID>1</TopicID>

<TextualContent>

Routing is the technique by which data finds its way from

one host computer to another. In the Internet context there

are three major aspects of routing Physical Address Determination

Selection of inter-network gateways Symbolic and Numeric Addresses.

</TextualContent>

</Topic>

</Text>


Example dals e game xml binding of quiz information

Example: DALS E-game XML binding of quiz information

<?xml version="1.0" encoding="UTF-8"?>

<CatItem Category="Discrete Math">

<Topic TopCat="1">

<Difficulty Level="3">

<Item>

<Question>r \/ !r</Question>

<Qans>Always True</Qans>

<Qans>Always False</Qans>

<Qans>Sometimes True, Sometimes False</Qans>

<Answer>1</Answer>

<Explanation>

<E>Truth Table</E>

<E>r !r r \/ !r</E>

<E>T F T</E>

<E>F T T</E>

<E>Regardless of truth value of r, the result is always True.</E>

</Explanation>

</Item>

</Difficulty>

</Topic>

</CatItem>


Xml transformations

XML Transformations

  • A powerful technique which allows the conversion of XML data from one form, into another form, using a set of transformation rules stored in a stylesheet.

  • Can be used to:

    • Format information for display (e.g. XML to HTML/XHTML); multiple presentations generated from a single document.

    • Perform data interchange between different computer systems, or manage data flows within an application.

    • Carry out some report generation (e.g. selection, aggregation, highlighting).


Schema based programming

Schema-Based Programming

  • An experimental model of programming; “The schema is the API”: the XML document is the application.

  • Makes use of declarative language approach of XSLT; processing of data is triggered by the pattern of the data itself.

  • The XML document contains:

    • State information (model)

    • Script code to control processing for events (intentions)

    • Elements to link intentions to views in the web page (events)

    • XSLT stylesheets to implement the behavior to update a particular view (views)

  • SBP may provide a useful alternative to describe and process high-level behavior, e.g. for distributed systems where resources and interactions remain fixed.


Xml databases

XML & Databases

  • XML provides an alternative way to represent information ‘outside’ the database.

  • Can easily represent hierarchical views.

  • Provide ‘neutral’ storage format; allows data from heterogeneous data storage systems to be integrated or exchanged.

  • XML support included in most major enterprise DBMS (MS SQL Server 2000, IBM DB2, Oracle).

  • Research issues: XQuery, Relational Schema Generation, semistructured data.


Xml and distributed applications

Example:

Inform Study patient record (data source)


Example inform study patient record in xml

Example: Inform Study patient record in XML

<?xml version="1.0" ?>

<InformScreenRecord xmlns="http:/www.mahi.org/informscreen" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="InformScreen-test.xsd"

id="rec001" version="1.0" StudyID="123456" LName=“Doe" AdmitDate="2001-01-11" DOB="1977-10-11" SSN="999199990" PtAcctNo="0127512345" ExclNonEnglish="0" ExclOthEtio="0" ExclSecondary="0" ExclHospice="0" ExclDementia="0" ExclDied="0" ExclRefused="0" ExclMissed="0" ExclStabXfer="0" ExclPrevEnr="0" CPSubPress="1" CPStress="0" CPLikePrior="0" CPRestNitro="0" CPOtherCP="0" CPNoCP="0" CPDur="1" CPMI2Wk="0" CPASA7d="0" CPPro="1" CPMultPro24="1" CPRest="0" CPMultRest48="0" CPIncrMo="0" CPNewAng="0" CPStabAng="0" CPNoAng="0" EnrollStatus="1" EnrollDate="2001-10-01" />


Example xml schema for inform study fragment

Example: XML Schema for Inform Study (fragment)

<?xml version="1.0"?>

<schema targetNamespace="http:/www.mahi.org/informscreen“ xmlns="http://www.w3.org/2001/XMLSchema">

<!-- Inform Screening Form -->

<!-- Study ID -->

<attribute name="StudyID" use="required"><simpleType><restriction base="string"><minLength value="6"/><maxLength value="6"/></restriction>

</simpleType></attribute>

<!-- Enrollment Status -->

<!-- New enrollee/Did not meet criteria/Already enrolled -->

<attribute name="EnrollStatus" use="required"><simpleType><restriction base="integer"><minInclusive value="1"/><maxInclusive value="3"/></restriction></simpleType></attribute>

<!-- Date Enrolled -->

<attribute name="EnrollDate" type="date"/>


Xml the semantic web

XML & The Semantic Web

  • “Semantic web”: vision of data on the web defined and linked in a way that can be used by machines for automation, integration, and reuse. (Dr. Tim Berners-Lee)

  • Web pages to store semantic metadata, creating environment for software agents to roam from page to page to carry out automated tasks for users.

  • An XML standard for metadata is the Resource Description Framework (RDF). RDF provides:

    • An abstract ‘model’ for metadata.

    • A transportable XML representation of that model.


Xml rpc soap

XML-RPC & SOAP

  • XML can be used as the data format for communications protocols in distributed computing environments.

  • XML-RPC is an XML vocabulary that describes remote procedure calls which are transmitted over HTTP. XML-RPC clients makes procedure requests of XML-RPC servers, which return results to the XML-RPC client.

  • SOAP (Simple Object Access Protocol) is a mechanism for data messaging using HTTP or SMTP; it can provide access to an object’s methods and properties.

  • Both SOAP and XML-RPC are lightweight and easy methods to integrate multiple computing environments; they form the underlying technology being adopted for developing web services architectures.


Xml tools resources online

XML Tools & Resources Online

  • Some useful open source XML tools:

    • IBM XML4J (XML parser)

    • Apache Xalan (XSL Transformation processor)

    • JDOM, JAXP (Java APIs for XML programming)

  • Resources online:

    • http://www.w3.org

    • http://www.xml.com

    • http://xml.coverpages.org


  • Login