1 Enterprise IT [Πληροφοριακές Τεχνολογίες της Επιχείρησης] Lecture 4 & 5: XML Overview Univ. of the Aegean Financial and Management Engineering Dpt Petros KAVASSALIS
2 What you will learn in this course A set of fundamental concepts for understanding basic Enterprise Information Technologies A set of fundamental concepts for understanding basic Enterprise Information Technologies Enterprise Software Applications Enterprise Architecture Integration (EAI) Best practices and techniques for building and migrating to a service- oriented enterprise Best practices and techniques for building and migrating to a service- oriented enterprise Strategies for integrating applications using standard technologies Strategies for integrating applications using standard technologies XML Web Services Familiarization with concepts such as: Familiarization with concepts such as: Interoperability e-business e-government 2.0
3 Communication tools Course web site: see FME web site Course web site: see FME web site
4 Students evaluation Class Participation (20%) Class Participation (20%)+ Assignments (20%) Assignments (20%)+ Final Exam (650%) Final Exam (650%)
First go to 5
XML in a nutshell XML: Extensible Markup Language XML: Extensible Markup Language XML Working Group at W3C (please visit!) Used for the definition of methods of storing, processing and managing information (texts) in electronic form Used for the definition of methods of storing, processing and managing information (texts) in electronic form Device independent System independent Used to represent business transactions within and outside the enterprise and mediate communication between systems that support transactions Used to represent business transactions within and outside the enterprise and mediate communication between systems that support transactions Example: purchase orders, invoices, shipping, bills of lading, warehousing information delivery etc Used to standardize the process by which enterprise applications exchange message in the context of a transaction (within the enterprise or between trading partners) Used to standardize the process by which enterprise applications exchange message in the context of a transaction (within the enterprise or between trading partners) 6
Markup etc. Markup Markup Describe annotations or special marks (codes) inserted into electronic texts to govern text formatting, processing, printing etc. Make explicit the representation of text Markup language Markup language A set of conventions put together for encoding texts o What markup? o What is required? o What does it mean? o How can it be distinguished from text? Meta-language Meta-language Provides a way of formally describing a language, i.e. a markup language XML: no predetermined tags XML: Descriptive markup (the mark-up annotations simply categorize parts of the document) 7
Re-usability A language for creating other languages! A language for creating other languages! One uses XML to design his (her) own custom markup language (XMP application) The, he(she) uses this custom language to format documents A tag identifies (characterizes) data, data in that way become available for other tasks A tag identifies (characterizes) data, data in that way become available for other tasks Labeled information that can be re-used Sister technology: XML Schemas Sister technology: XML Schemas Defines the custom markup language one creates with XML o Specifies tags to use in a document o Tags and attributes these tags can contain 8
XML: Why do we need it? [from S. Madnick Course at MIT ] 9
XML: Elements, Attributes and Values Tove Jani Reminder Don't forget me this weekend!
Note: [ Reference for the following examples]
XML: Declaring the version, root element and other rules Closing tags are required Closing tags are required Case matters Case matters Values must enclosed in quotations Values must enclosed in quotations 12
XML: Nesting elements XML: Nesting elements <endangered_species><animal> Tiger Tiger poachers poachers 500 pounds 500 pounds </animal> Important: The elements in an XML document form a document tree. The tree starts at the root and branches to the lowest level of the tree. An element nested with another is referred to as “child element” (or, inversely, “parent element”) Important: The elements in an XML document form a document tree. The tree starts at the root and branches to the lowest level of the tree. An element nested with another is referred to as “child element” (or, inversely, “parent element”) animal: 3 child elements
XML: Attributes <endangered_species><animal> Tiger Tiger panthera tigris panthera tigris poachers poachers 500 pounds 500 pounds 14
XML: Empty Elements <endangered_species><animal> Tiger Tiger panthera tigris panthera tigris poachers poachers 500 pounds 500 pounds 15
XML: Writing comments <endangered_species><animal> Tiger Tiger panthera tigris panthera tigris poachers poachers 500 pounds 500 pounds </endangered_species> 16
XML: Special Symbols (&, <, >, ", &apos) <endangered_species><animal> Tiger Tiger panthera tigris panthera tigris poachers poachers <500 pounds <500 pounds 17
XML: Displaying elements as text <xml_book><tags><appearance> <animal> Tiger panthera tigris Tiger panthera tigris <threat>poachers</threat> 500 pounds 500 pounds ]]></appearance></tags></xml_book> 18
Check point: Understand an XML document 19 Please visit: Debugging an XML document Please visit: Debugging an XML document
Homework Take a catalogue from a furniture shop Take a catalogue from a furniture shop Create an XML document Create an XML document 20
Check point: Create an XML Document [Reference: Allen Schmidt Class Support Home Page] Items = {Item} <--This means that there are multiple Item entries within Items Item contains Items = {Item} <--This means that there are multiple Item entries within Items Item contains Item Number Description Selling Price Cost Quantity On Hand Date Last Received Quantity Sold; Year-To-Date (current) / *modification Warehouse Section Warehouse Shelve {Supplier} <-- This means that there are several suppliers for each item Instructions Instructions First structure the information Then, create the document At the end, validate it! 21