Presentation is loading. Please wait.

Presentation is loading. Please wait.

XML blocks XML STRUCTURE The most basic building blocks of an XML file are elements, attributes and comments. Compiled based on Tutorial PhUSE 2008 XML.

Similar presentations


Presentation on theme: "XML blocks XML STRUCTURE The most basic building blocks of an XML file are elements, attributes and comments. Compiled based on Tutorial PhUSE 2008 XML."— Presentation transcript:

1 XML blocks XML STRUCTURE The most basic building blocks of an XML file are elements, attributes and comments. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 1

2 Elements Elements define sections of information within an XML file and are defined using so called “XML tags”. XML tags consist of an opening tag and a closing tag which together mark the borders of the information section. An opening tag represents the name of the element enclosed by “ ” and a closing tag would contain the same name enclosed by “ ”, where the “/” indicates that this is a closing tag. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 2

3 Examples of an Element An element called “PatientHeight” with the information representing the patient height, 181, enclosed in the “PatientHeight” XML tags 181 If for some reason the element contains no information, the element will be described in a single tag which represents a merged start and end tag as the “/” is now moved to the end of the element Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 3

4 Examples of an Element (cont’d) Elements within an XML document can be nested. This allows the information to be bundled. The following example shows the nesting of patient information such as height and weight nested within the “PatientInformation” element. 181 78 Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 4

5 Attributes Attributes allow for additional descriptive information to be added to the element tag. The attribute is placed after the name of the element but within the start tag. The syntax for an attribute is the name of the attribute, in this case “Unit” followed by an equal sign and the value of the attribute in quotes. 71.2 If the element contains no information the element will be described in a single tag. An example of an empty element with an attribute is shown Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 5

6 Comments You can place comments within XML documents. These comments can provide additional information for a programmer, but is ignored by programs that process XML files (XML parsers). The syntax of a comment also consists of a start and an end tag. The start tag is defined as “ ”. The following example shows the comment “This is an example comment”. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 6

7 The Two Structures of an XML-document The Default Structure (see slides 8 to 12) The Custom Structure (Definition Document) see slides (13 to 21 ) TWO most commonly used are: DTD : D ocument T ype D efinition. XSD: X ML S chema D efinition. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 7

8 THE DEFAULT STRUCTURE OF AN XML DOCUMENT XML is a structured language. The default structure of any XML file is defined in the XML specification for creating XML files. These specifications are defined and maintained by W3C (http://www.w3.org/XML/) which is an international consortium responsible for developing protocols and guidelines to define web standards. XML files that adhere to this standard are referred to as “a well-formed XML”. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 8

9 Basic Rules for a well-formed XML file The most basic rules are : The XML file must contain a single “root” element (to nest the content of the XML file). Every element must be correctly nested. Non-empty elements must have begin and end tags. Empty elements are denoted by a single tag ending with a slash (/). All attribute values must be enclosed in double quotation marks or single quotation marks. The content of the XML file is case sensitive. Special Characters in the content must be “escaped”. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 9

10 An example of the default structure of an XML document. Example of a well-formed XML file SUBJ001 181 78 0.789 Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 10

11 Cont’d ; The example of a default XML document SUBJ002 SUBJ003 173 66 < 0.434 Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 11

12 Comments on the Example The mandatory element to indicate the file type. It describes the version of XML and the encoding type. The single root element for nesting the information of the file is: “Study_ABC”. Special Characters : are represented as :<, &, > A double quotation mark as : " A single quotation mark as : &apos; Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 12

13 The Custom Structure for an XML document DTD : D ocument T ype D efinition. Older version. Has limitations with respect to describing rules for the data. XSD: X ML S chema D efinition. More recent version. Does not have the limitations of DTD. Recommended to use for describing the Custom structure of an XML document. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 13

14 Back to the same example If we look at the structure of the XML file we can see that: The element “Study_ABC“ is the root element of the file, which nests the content of the XMLfile. Within this nesting the element “PatientInformation” occurs multiple times. The element “PatientInformation” nests the elements “PatientID”, “PatientHeight”, “PatientWeight” and “PatientLabValue”. This means: “Study_ABC” has multiple patients and for each patient the ID, height, weight and lab value are stored”. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 14

15 Back to the example (cont’d) When examining the individual elements, we can see that the: Elements “PatientHeight” and “PatientWeight”contain an attribute called “Unit”. Regarding the type of data in the elements, we can see that: The element “PatientID” must be a character value, The elements “PatientHeight” and “PatientWeight” are (most likely) numeric values, and that The “PatientLabValue” must be character, as we can see the “<” sign in the last value. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 15

16 Back to the example cont’d: So, by examining the XML file in the example we have described : The structure, The elements, The additional information of the elements in the form of attributes, and The type of data to be stored in the different elements. The XSD describing the Custom Structure of the same example is on the next slides: Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 16

17 XSD describing the Custom Structure of the Example 1. 2. <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" 3. xmlns:xs="http://www.w3.org/2001/XMLSchema"> 4. 5. 6. 7. 8. 9. 10 11. 12. 13. 14. 15. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 17

18 Cont’d ; XSD describing the Custom Structure of the Example: 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 18

19 Cont’d :XSD describing the Custom Structure of the Example: 30. 31. 32. 33. 34. 35. 36. -----36 lines of code. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 19

20 Final Comments on the XSD describing the Custom structure of the Example: Comments: Line 2(schema) closes with line 36(schema). Line 4 root (element “Study_ABC” ) closes with line 35(element). Line 5(complex type) closes with line 34(complex type). Line 6(sequence ) closes with line 33(sequence). Line 7 (element) closes with line 32(element). Line 8(complex type) closes with line 31(Complex type). Line 9 (sequence ) closes with line 30 (sequence). Line 10,11,20 and 29are all elements on the same depth (PatientID), (PatientHeight), (PatientWeight) and (PatientLabValue) respectively. Line15 and Line 24 (attribute name”Unit”) are at the same depth. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 20

21 Final Comments (cont’d)on the XSD describing the Custom structure of the Example When we have both the XML file and the XSD file we can use an XML parser to validate the content. This will verify that the XML document is well structured, adheres to the custom structure and has the correct data types. This means that when you store character data into a numeric element, this would result in a validation error. An example of an application capable of parsing XML and validating XML files according to their XSD is “XML Notepad 2007” which can be downloaded from the Microsoft website. Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 21

22 Recommended Reading Check the following sources: 1) Read this for more background information on XML and XML specifications http://www.w3.org/XML/ 2) Read this for a tutorial on XML http://www.w3schools.com/xml/ Compiled based on Tutorial PhUSE 2008 XML by eXaMpLe authored by Raymond Ebben OCS consulting, The Netherlands 22


Download ppt "XML blocks XML STRUCTURE The most basic building blocks of an XML file are elements, attributes and comments. Compiled based on Tutorial PhUSE 2008 XML."

Similar presentations


Ads by Google