Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSC 330 E-Commerce Teacher Ahmed Mumtaz Mustehsan Ahmed Mumtaz Mustehsan GM-IT CIIT Islamabad GM-IT CIIT Islamabad CIIT Virtual Campus, CIIT COMSATS Institute.

Similar presentations


Presentation on theme: "CSC 330 E-Commerce Teacher Ahmed Mumtaz Mustehsan Ahmed Mumtaz Mustehsan GM-IT CIIT Islamabad GM-IT CIIT Islamabad CIIT Virtual Campus, CIIT COMSATS Institute."— Presentation transcript:

1 CSC 330 E-Commerce Teacher Ahmed Mumtaz Mustehsan Ahmed Mumtaz Mustehsan GM-IT CIIT Islamabad GM-IT CIIT Islamabad CIIT Virtual Campus, CIIT COMSATS Institute of Information TechnologyT2-Lecture-4

2 eXtensible Markup Language (XML) Part - II For Lecture Material/Slides Thanks to: www.w3schools.com

3 Objectives XML Elements are extensible XML Attributes XML Namespaces XML Encoding Viewing XML Files 3 T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

4 XML Elements are Extensible 4 XML elements can be extended to carry more information. Look at the following XML example: ◦ mumtaz tariq Don't forget to attend party on weekend! Let's imagine that we created an application that extracted the,, and elements from the XML document to produce this output: T2-Lecture-3 Ahmed Mumtaz Mustehsan www.w3schools.com Message To: Mumtaz From: Tariq Don't forget to attend party on weekend!

5 XML Elements are Extensible… 5 Imagine that the author of the XML document added some extra information to it: 2008-01-10 Mumtaz Tariq Reminder Don't forget to attend party on weekend! Should the application break or crash? No. The application should still be able to find the,, and elements in the XML document and produce the same output. One of the beauty of XML, is that it can be extended without breaking applications. T2-Lecture-3 Ahmed Mumtaz Mustehsan www.w3schools.com Message To: Mumtaz From: Tariq Don't forget to attend party on weekend!

6 XML Attributes

7 XML Attributes 7 In HTML, attributes provide additional information about elements: XML elements can have attributes, just like HTML. Attributes often provide information that is not a part of the data but it is information about data. Example computer.gif The file type is irrelevant to the data, but can be important to the software that wants to manipulate the element: T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

8 XML Attributes Must be Quoted 8 Attribute values must always be quoted. Either single or double quotes can be used. Example: For a person's sex, the person element can be written like this: or like this: T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

9 XML Attributes Must be Quoted 9 If the attribute value itself contains double quotes we can use single quotes. Example: or you can use character entities: T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

10 XML Elements vs. Attributes 10 Example-1: Amna Atif Example-2: female Amna Atif T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

11 XML Elements vs. Attributes… 11 In Example-1, sex is an attribute. In Example-2, sex is an element. Both examples provide the same information. Although there are no rules about when to use attributes or when to use elements, Attributes are handy in HTML. However: Recommendations are: In XML avoid attribute and use elements. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

12 XML: Different ways to define information. 12 In XML documents the same information can be presented in different ways. The date is presented in three different ways: Example-1: A date is defined as an attribute: Mumtaz Tariq Reminder Don't forget me this weekend! T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

13 XML: Different ways to define information. 13 Example-2: A date is defined as an element : ◦ 10/01/2008 Mumtaz Tariq Reminder Don't forget me this weekend! T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

14 XML: Different ways to define information. 14 Example-3: A date is defined as an expanded date element: 27 05 2009 Mumtaz Tariq Reminder Don't forget me this weekend! T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

15 Avoid XML Attributes? 15 Some of the problems with using attributes are: attributes cannot contain multiple values (elements can) attributes cannot contain tree structures (elements can) attributes are not easily expandable (for future changes) Attributes are difficult to read and maintain. Recommendations: Use elements for data. Use attributes for information that is not relevant to the data. Don't end up like this: ◦ T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

16 XML Attributes for Metadata 16 Sometimes ID references are assigned to elements. These IDs can be used to identify XML elements the same way as the id attribute in HTML. Example: mumtaz tariq Reminder Don't forget me this weekend! mumtaz tariq Re: Reminder Thank you for attending the party T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

17 XML Attributes for Metadata… 17 The id attributes above are for identifying the different notes. It is not a part of the note itself. Recommendations: Metadata (data about data) should be stored as attributes, and the data itself should be stored as elements. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

18 XML Namespaces

19 Before we Begin: a review of URI 19 Uniform Resource Identifier (URI) : A Uniform Resource Identifier (URI) is a string of characters which identifies an Internet Resource. The most common URI is the Uniform Resource Locator (URL) which identifies an Internet domain address. Another, not so common type of URI is the Universal Resource Name (URN). In our examples we will only use URLs. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

20 XML Namespaces 20 In XML, element names are defined by the developer. This often results in a conflict when trying to mix XML documents from different XML applications. XML Namespaces provide a method to avoid element name conflicts. Example-1: This XML example carries HTML table information: Apples Bananas T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

21 XML Namespaces… 21 Example-2: This XML example carries information about a table (a piece of furniture): African Coffee Table 80 120 If these XML fragments were added together, there would be a name conflict. Both contain a element, but the elements have different content and meaning. A user or an XML application will not know how to handle these differences. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

22 Solving the Name Conflict Using a Prefix 22 Name conflicts in XML can easily be avoided using a name prefix. This XML carries information about an HTML table, and a piece of furniture: ◦ Apples Bananas African Coffee Table 80 120 In the example above, there will be no conflict because the two elements have different names. But are we allowed to use prefix with a : ? T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

23 XML Namespaces : The xmlns Attribute 23 When using prefixes in XML namespace namespace for the prefix must be defined. xmlns attribute The namespace is defined by the xmlns attribute in the start tag of an element. The namespace declaration has the following syntax: Example xmlns:prefix="URI". T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

24 XML Namespaces - The xmlns Attribute 24 The namespace declaration as an attribute can be defined: xmsns Example-1: each attribute is defined with separate xmsns Apples Bananas African Coffee Table 80 120 T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

25 XML Namespaces - The xmlns Attribute… 25 The namespace declaration as an attribute can be defined: xmsns defination Example-1: each attribute is defined with combined xmsns defination Apples Bananas African Coffee Table 80 120 Note: The namespace URI is not used by the parser to look up information. The purpose is to give the namespace a unique name. However, often companies use the namespace as a pointer to a web page containing namespace information. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

26 Default Namespaces 26 Defining a default namespace for an element saves us from using prefixes in all the child elements. It has the following syntax: xmlns="namespaceURI" Example: 1. This XML carries HTML table information: Apples Bananas 2. This XML carries information about a piece of furniture: African Coffee Table 80 120 T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

27 XML Encoding

28 XML Encoding 28 XML documents may contain international characters, like Norwegian æøå, or French êèé. To avoid errors, we should specify the encoding used, or save the XML files as UTF-8. Character Encoding ◦ Character encoding defines a unique binary code for each different character used in a document. ◦ In computer terms, character encoding are also called character set, character map, code set, and code page. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

29 Unicode 29 Unicode is an industry standard for character encoding of text documents. It defines (nearly) every possible international character by a name and a number. Unicode has two variants: UTF-8 and UTF-16. UTF = Universal character set Transformation Format. UTF-8 uses a single byte (8-bits) to represent commonly used characters and two (or three) bytes for the rest. UTF-16 uses two bytes (16 bits) for most characters, and three bytes for the rest. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

30 UTF-8 - The Web Standard 30 UTF-8 is the standard character encoding on the web. It (UTF-8) is the default character encoding for: HTML-5, CSS, JavaScript, PHP, SQL, and XML. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

31 XML Encoding 31 The first line in an XML document is called the prolog: The prolog is optional. Normally it contains the XML version number. It can also contain information about the encoding used in the document. This prolog specifies UTF-8 encoding: The XML standard states that all XML software must understand both UTF-8 and UTF-16. UTF-8 is the default for documents without encoding information. In addition, most XML software systems understand encodings like ISO-8859-1, Windows-1252, and ASCII. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

32 XML Errors 32 Most often, ◦ XML documents are created on one computer. ◦ uploaded to a server on a second computer, ◦ displayed by a browser on a third computer. If the encoding is not correctly interpreted by all the three computers, the browser might display meaningless text, or you might get an error message. Example: “This XML file does not appear to have any style information associated with it.” T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

33 Conclusion 33 When you write an XML document: Use an XML editor that supports encoding Make sure you know what encoding the editor uses Describe the encoding in the encoding attribute UTF-8 is the safest encoding to use which is a web standard T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

34 Viewing XML Files

35 35 Raw XML files can be viewed in all major browsers. Don't expect XML files to be displayed as HTML pages. - mumtaz tariq Reminder Don't forget me this weekend! The XML document will be displayed with color-coded root and child elements. A plus (+) or minus sign (-) to the left of the elements can be clicked to expand or collapse the element structure. To view the raw XML source (without the + and - signs), select "View Page Source" or "View Source" from the browser menu. Note: In Safari, only the element text will be displayed. To view the raw XML, you must right click the page and select "View Source" T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

36 Viewing an Invalid XML File 36 If an erroneous XML file is opened, some browsers might report the error, some may display it incorrectly. Try to open this XML file in different browsers: T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

37 Why Does XML Display Like This? 37 XML documents do not carry information about how to display the data. Since XML tags are "invented" by the author of the XML document, browsers do not know if a tag like describes an HTML table or a dining table. Without any information about how to display the data, most browsers will just display the XML document as it is. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com

38 The second line links the XML file to the CSS file: Empire Burlesque Bob Dylan USA Columbia 10.90 1985 Hide your heart Bonnie Tyler UK CBS Records 9.90 1988... A Section of the XML file. T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 38

39 It is possible to use CSS to format an XML document. Below is an example of how to use a CSS style sheet to format an XML document: Take a look at this XML file: The CD catalogThe CD catalog Then look at this style sheet: The CSS fileThe CSS file Finally, view: The CD catalog formatted with the CSS fileThe CD catalog formatted with the CSS file Displaying your XML Files with CSS T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 39

40 XML Technologies T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 40 Some XML Technologies: XML XSLT XML Xpath XML Xlink XML Xpointer XML Xquery Recommended by W3C

41 Displaying XML with XSLT XSLT (eXtensible Stylesheet Language Transformations) is the recommended style sheet language for XML. XSLT is far more sophisticated than CSS. Elements and attributes can be added/removed Elements can also be rearranged and sorted, perform tests and make decisions about which elements to hide and display, etc. XSLT uses XPath to find information in an XML document. XML - XSLT T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 41

42 XPath is Used in XSLT XPath is a syntax for defining parts of an XML document XPath uses path expressions to navigate in XML documents XPath contains a library of standard functions XPath is a major element in XSLT XPath is also used in XQuery, XPointer and XLink XML - Xpath T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 42

43 XLink is used to create hyperlinks within XML documents Any element in an XML document can behave as a link XLink supports simple links (like HTML) and extended links (for linking multiple resources together) With XLink, the links can be defined outside the linked files XLink is a W3C Recommendation XML - XLink T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 43

44 XPointer allows the links to point to specific parts of an XML document XPointer uses XPath expressions to navigate in the XML document XPointer is a W3C Recommendation XML - XPointer T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com 44

45 The End XML Part-II T2-Lecture-4 Thank You 45 T2-Lecture-4 Ahmed Mumtaz Mustehsan www.w3schools.com


Download ppt "CSC 330 E-Commerce Teacher Ahmed Mumtaz Mustehsan Ahmed Mumtaz Mustehsan GM-IT CIIT Islamabad GM-IT CIIT Islamabad CIIT Virtual Campus, CIIT COMSATS Institute."

Similar presentations


Ads by Google