Presentation is loading. Please wait.

Presentation is loading. Please wait.

ACG 6415 XML Schemas XML Namespaces XMLink. The XML Foundation  Many participants – an extended family! XML documents – carry data in context  Each.

Similar presentations


Presentation on theme: "ACG 6415 XML Schemas XML Namespaces XMLink. The XML Foundation  Many participants – an extended family! XML documents – carry data in context  Each."— Presentation transcript:

1 ACG 6415 XML Schemas XML Namespaces XMLink

2 The XML Foundation  Many participants – an extended family! XML documents – carry data in context  Each must be parsed into its component parts XML schemas – define the rules a class of documents must follow  Can be used to validate documents & contents XSLT – provide processing instructions  Can be used to process XML documents Namespaces – qualify elements & attributes  Differentiate & associate them with a URI XPath … XLink … XQuery …  XML Processors are not designed equally!

3 XML Languages - Schema  Instance Document Elements (tag sets) meta-data about data  Schema Well-formatted XML document  Definition: “provide a means for defining the structure, content and semantics of XML documents. in more detail.” (W3C)W3C Defines structure and contents of Instance Document  Similar to an ER-Diagram for databases  Defines Each Element and Attribute  Its Structure Includes Business Rules  Cardinalities Used to Validate Instance Document  Means Instance Document conforms to Schema Rules

4 XML Schema .xsd extension  Defines each attribute and extension  Root element is a namespace  Define an Element: Simple  contain only data Complex  contain other elements (i.e. Root & Parent)  contain attributes

5 Simple Element Definition  Declare Name  Declare Type  Type= Defines the data type:  string  Integer  date  decimal  other types other types

6 Complex Element (Parent)  Declares Name  Declares type  Declares Structure

7 Complex Element (attribute)  Declare Name  Declare Type  Define element and attribute(s) 

8 Create a Schema from a non- vocabulary instance document  Identify types of elements Simple Complex – Parent Complex – Attribute  Create Prolog  Create Root element  Work down from 1 st element to last

9 Vocabularies & Schemas  XBRL & UBL are vocabularies XBRL for Financial Reporting UBL for Business Documents  Vocabularies are designed using Agreed upon element names Agreed upon element types Agreed upon element sequence/structure  Defined by Schemas

10 Vocabularies and Namespaces  Namespace A Unique Identifier  Unique Prefix refers to URI Points to where information in an XML Document can be found. (URI) Attribute of Root Element  Definition: “XML namespace: In XML, a namespace is a collection of names, identified by a URI reference, that are used in XML documents as element types and attribute names. In order for XML documents to be able to use elements and attributes that have the same name but come from different sources, there must be a way to differentiate between the markup elements that come from the different sources.” (Webopeida) (Technical Information from W3.org)“XMLURI attributeWebopeidaTechnical Information  Used to preclude naming collisions Method for distinguishing between the same element name for different elements  10001... 

11 UBL Schemas  Schemas for each document type & Schemas for each document type  Common Basic Components Defines Simple Elements Defines Complex (attribute) Elements Prefix: cbc  Common Aggregate Components Defines Complex (Parent) Elements Prefix: cac

12 Declaring a Namespace (in the UBL instance document) <Catalogue xmlns="UBLCatalogueDocument" xmlns:cbc="UBLCommonBasicComponents" xmlns:cac="UBLCommonAggregateComponents">  Since UBLCatalogueDocument does NOT have a prefix any element in the instance document without a prefix relates to this namespace.  UBL Catalogue Instance with namespaces UBL Catalogue Instance with namespaces

13 Creating UBL Document Schemas  Declare NameSpaces and qualifiers  Import necessary Schemas  Define Root Element Reference Reusable data components Declare Cardinalities

14 UBL Namespace Declaration <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="UBLCatalogueDocument" xmlns="UBLCatalogueDocument" xmlns:cbc="UBLCommonBasicComponents" xmlns:cac="UBLCommonAggregateComponents" elementFormDefault="qualified" attributeFormDefault="unqualified">

15 Namespace Clarification  targetNamespace="UBLCatalogueDocument“ The schema being created/used is applied to the UBLCatalogueDocument namespace  elementFormDefault="qualified“ Element names will use a namespace prefix  CAC:  CBC:  attributeFormDefault="unqualified“ Attribute names will not use a namespace prefix

16 UBL Import <xs:import namespace="UBLCommonBasicComponents" schemaLocation="http://www.buec.udel.edu/whitec/UBL CommonBasicComponents/UBLCommonBasicCompone ntsSchema.xsd"/> <xs:import namespace="UBLCommonAggregateComponents" schemaLocation="http://www.buec.udel.edu/whitec/UBL CommonAggregateComponents/UBLCommonAggregate ComponentsSchema.xsd"/>

17 UBL Root Element (Catalogue) Put it all together: The Entire Schema

18 Validating XML  Ensure that Instance Document Follows business rules Data types are correct Data is properly sequenced

19 XML Linking Language  XLink Uses attributes to describe relationships between elements  Simple: HTML type links  Extended: More complex Relationship links


Download ppt "ACG 6415 XML Schemas XML Namespaces XMLink. The XML Foundation  Many participants – an extended family! XML documents – carry data in context  Each."

Similar presentations


Ads by Google