SlideShare ist ein Scribd-Unternehmen logo
1 von 16
XML
Data Modeling
Document Modeling
A document model defines a set of element names and attributes
that can appear in an XML document.
A document model, more formally and generally known as a data
model, describes the logical structure of a set of data.
The data model specifies which information a data set contains in
terms of the names of the fields, which data each field can contain,
and the relationships between fields and other sets of data.
Document Model
-You want to define an XML vocabulary, and you need to ensure that
people can computers produce XML documents that conform on the
vocabulary.
-You want to reduce the cost of creating a new XML-aware
application.
-You want to ensure that XML documents meet a certain level of
quality, in terms of their structure and the data that they contain.
-XML documents are created by people or other applications and are
consumed (read) by other applications.
A data model becomes important in the
following scenarios:
There are three major technologies that you can use to create a data
model for your XML documents:
-DTD
-XDR Schema
-XML Schema
Types of Data Models
DTD, or Document Type Definition, is a technology that’s part of the
XML specification. This means that all validating XML parsers must be
able to read and work with a DTD.
A validating XML parser can not only read XML documents, but verify
that they conform to a specific schema.
Data Modeling with DTD
<?xml version=“1.0” encoding=“UTF-8”?>
<!– The DTD follows... -->
<!DOCTYPE people
[
<!ELEMENT people (person+)>
<!ELEMENT person (name)>
<!ELEMENT name (first, last)>
<!ELEMENT first (#PCDATA)>
<!ELEMENT last (#PCDATA)>
]>
Example of a DTD
<!–- The XML data begins here... -->
<people>
<person>
<name>
<first>Erik</first>
<last>Westermann</last>
</name>
</person>
<person>
<name>
<first>Tom</first>
<last>Archer</last>
</name>
</person>
</people>
-DTDs use a specialized syntax that’s different from XML, making
them more difficult to learn for people without a background in SGML
or XML
-DTDs don’t allow you to specify which type of data an element can
contain.
-DTDs have a fixed, non-extensible content model that doesn’t allow
developers to create new elements and attributes.
-DTDs don’t support namespaces.
Disadvantages of DTD
XDR, or XML Data Reduced, is an XML vocabulary invented by
Microsoft taht allows you to describe the schema of an XML
document.
The XDR describes that schema in terms of not only the document’s
content, but also which types of content are contained in the
document’s elements.
The primary drawback to using XDR is that it’s limited to Microsoft
products and technologies – other vendors don’t support XDR.
Data Modeling with XDR Schema
<?xml version=“1.0” encoding=“UTF-8”?>
<Schema name=“Untitled-schema”
xmlns=“urn:schemas-microsfot-com:xml-data”
xmlns:dt=“urn:schemas-microsoft-com:datatypes”>
<ElementType name=“people” model=“closed” content=“eltOnly” order=“seq”>
<AttributeType name=“xmlns” dt:type=“string”/>
<attribute type=“xmlns”/>
<element type=“person” minOccurs=“1” maxOccurs=“*” />
</ElementType>
<ElementType name=“person” model=“closed” content=“eltOnly” order=“seq”>
<element type=“name” minOccurs=“1” maxOccurs=“1” />
</ElementType>
An Example of XDR
<ElementType name=“name” model=“closed” content=“eltOnly” order=“seq”>
<element type=“first” minOccurs=“1” maxOccurs=“1” />
<element type=“last” minOccurs=“1” maxOccurs=“1” />
</ElementType>
<ElementType name=“first” model=“closed” content=“textOnly”
dt:type=“string”/>
<ElementType name=“last” model=“closed” content=“textOnly”
dt:type=“string”/>
</Schema>
XSD, the XML Schema Definition, is a W3C recommendation that
allows you to describe XML schemas using an XML vocabulary.
The XSD describes the XML Document in terms of its data types.
Data Modeling with XSD
<?xml version=“1.0” encoding=“UTF-8”?>
<xs:schema xmlns:xs=“http://www.w3.org/2001/XMLSchema”
elementFormDefault=“qualified”>
<xs:element name=“first” type=“xs:string”/>
<xs:element name=“last” type=“xs:string”/>
<xs:element name=“name”>
<xs:complexType>
<xs:sequence>
<xs:element ref=“first”/>
<xs:element ref=“last”/>
</xs:sequence>
</xs:complexType>
</xs:element>
An Example of XSD
<xs:element name=“people”>
<xs:complexType>
<xs:sequence>
<xs:element ref=“person” maxOccurs=“unbounded”/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name=“person”>
<xs:complexType>
<xs:sequence>
<xs:element ref=“name”/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
DTDs
-Have been around for a long time and enjoy broad support from a
wide range of products and vendors
-Generally well-understood
XDR
-Microsoft-specific technology. Limited support in the industry.
XSD
-W3C Standard. Broader acceptance from vendors.
-New in the market.
Which Dat Modelling Schema Should I use?

Weitere ähnliche Inhalte

Was ist angesagt?

Importance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML DesigningImportance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML DesigningABHISHEK KUMAR
 
Data modeling using the entity relationship model
Data modeling using the entity relationship modelData modeling using the entity relationship model
Data modeling using the entity relationship modelJafar Nesargi
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMSkoolkampus
 
Enhanced E-R diagram
Enhanced E-R diagramEnhanced E-R diagram
Enhanced E-R diagramMayank Jain
 
Dbms classification according to data models
Dbms classification according to data modelsDbms classification according to data models
Dbms classification according to data modelsABDUL KHALIQ
 
Multiplexing in mobile computing
Multiplexing in mobile computingMultiplexing in mobile computing
Multiplexing in mobile computingZituSahu
 
similarity measure
similarity measure similarity measure
similarity measure ZHAO Sam
 
Object Relational Database Management System(ORDBMS)
Object Relational Database Management System(ORDBMS)Object Relational Database Management System(ORDBMS)
Object Relational Database Management System(ORDBMS)Rabin BK
 
software engineering
software engineeringsoftware engineering
software engineeringAbinaya B
 
Object relational database management system
Object relational database management systemObject relational database management system
Object relational database management systemSaibee Alam
 
Data base management system
Data base management systemData base management system
Data base management systemNavneet Jingar
 
Object Oriented Dbms
Object Oriented DbmsObject Oriented Dbms
Object Oriented Dbmsmaryeem
 

Was ist angesagt? (20)

Ordbms
OrdbmsOrdbms
Ordbms
 
Importance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML DesigningImportance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML Designing
 
Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
 
ORDBMS
ORDBMSORDBMS
ORDBMS
 
Data modeling using the entity relationship model
Data modeling using the entity relationship modelData modeling using the entity relationship model
Data modeling using the entity relationship model
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMS
 
Odbms concepts
Odbms conceptsOdbms concepts
Odbms concepts
 
View of data DBMS
View of data DBMSView of data DBMS
View of data DBMS
 
Object oriented database
Object oriented databaseObject oriented database
Object oriented database
 
Database security issues
Database security issuesDatabase security issues
Database security issues
 
Enhanced E-R diagram
Enhanced E-R diagramEnhanced E-R diagram
Enhanced E-R diagram
 
Trends in distributed systems
Trends in distributed systemsTrends in distributed systems
Trends in distributed systems
 
Dbms classification according to data models
Dbms classification according to data modelsDbms classification according to data models
Dbms classification according to data models
 
Multiplexing in mobile computing
Multiplexing in mobile computingMultiplexing in mobile computing
Multiplexing in mobile computing
 
similarity measure
similarity measure similarity measure
similarity measure
 
Object Relational Database Management System(ORDBMS)
Object Relational Database Management System(ORDBMS)Object Relational Database Management System(ORDBMS)
Object Relational Database Management System(ORDBMS)
 
software engineering
software engineeringsoftware engineering
software engineering
 
Object relational database management system
Object relational database management systemObject relational database management system
Object relational database management system
 
Data base management system
Data base management systemData base management system
Data base management system
 
Object Oriented Dbms
Object Oriented DbmsObject Oriented Dbms
Object Oriented Dbms
 

Ähnlich wie XML - Data Modeling

Oracle soa xml faq
Oracle soa xml faqOracle soa xml faq
Oracle soa xml faqxavier john
 
Applied xml programming for microsoft 3
Applied xml programming for microsoft 3Applied xml programming for microsoft 3
Applied xml programming for microsoft 3Raghu nath
 
Enhanced xml validation using srml01
Enhanced xml validation using srml01Enhanced xml validation using srml01
Enhanced xml validation using srml01IJwest
 
Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)CSCJournals
 
Xml viva questions
Xml viva questionsXml viva questions
Xml viva questionsVipul Naik
 
advDBMS_XML.pptx
advDBMS_XML.pptxadvDBMS_XML.pptx
advDBMS_XML.pptxIreneGetzi
 
A Survey on Heterogeneous Data Exchange using Xml
A Survey on Heterogeneous Data Exchange using XmlA Survey on Heterogeneous Data Exchange using Xml
A Survey on Heterogeneous Data Exchange using XmlIRJET Journal
 
eXtensible Markup Language
eXtensible Markup LanguageeXtensible Markup Language
eXtensible Markup LanguageAditya Raj
 
Innovative way for normalizing xml document
Innovative way for normalizing xml documentInnovative way for normalizing xml document
Innovative way for normalizing xml documentAlexander Decker
 
DATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).pptDATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).pptcareerPointBasti
 
distributed system concerned lab sessions
distributed system concerned lab sessionsdistributed system concerned lab sessions
distributed system concerned lab sessionsmilkesa13
 

Ähnlich wie XML - Data Modeling (20)

Er2000
Er2000Er2000
Er2000
 
Oracle soa xml faq
Oracle soa xml faqOracle soa xml faq
Oracle soa xml faq
 
XML1.pptx
XML1.pptxXML1.pptx
XML1.pptx
 
Applied xml programming for microsoft 3
Applied xml programming for microsoft 3Applied xml programming for microsoft 3
Applied xml programming for microsoft 3
 
Enhanced xml validation using srml01
Enhanced xml validation using srml01Enhanced xml validation using srml01
Enhanced xml validation using srml01
 
Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)Catalog-based Conversion from Relational Database into XML Schema (XSD)
Catalog-based Conversion from Relational Database into XML Schema (XSD)
 
Xml viva questions
Xml viva questionsXml viva questions
Xml viva questions
 
XML Introduction
XML IntroductionXML Introduction
XML Introduction
 
XML
XML XML
XML
 
XML Schema.pptx
XML Schema.pptxXML Schema.pptx
XML Schema.pptx
 
Xml Overview
Xml OverviewXml Overview
Xml Overview
 
XML Databases.ppt
XML Databases.pptXML Databases.ppt
XML Databases.ppt
 
XML Unit 01
XML Unit 01XML Unit 01
XML Unit 01
 
advDBMS_XML.pptx
advDBMS_XML.pptxadvDBMS_XML.pptx
advDBMS_XML.pptx
 
A Survey on Heterogeneous Data Exchange using Xml
A Survey on Heterogeneous Data Exchange using XmlA Survey on Heterogeneous Data Exchange using Xml
A Survey on Heterogeneous Data Exchange using Xml
 
eXtensible Markup Language
eXtensible Markup LanguageeXtensible Markup Language
eXtensible Markup Language
 
Innovative way for normalizing xml document
Innovative way for normalizing xml documentInnovative way for normalizing xml document
Innovative way for normalizing xml document
 
DATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).pptDATA INTEGRATION (Gaining Access to Diverse Data).ppt
DATA INTEGRATION (Gaining Access to Diverse Data).ppt
 
Bt0078
Bt0078Bt0078
Bt0078
 
distributed system concerned lab sessions
distributed system concerned lab sessionsdistributed system concerned lab sessions
distributed system concerned lab sessions
 

Mehr von Joel Briza

Management Information Systems - Chapter 3
Management Information Systems - Chapter 3Management Information Systems - Chapter 3
Management Information Systems - Chapter 3Joel Briza
 
Management Information Systems - Chapter 2
Management Information Systems - Chapter 2Management Information Systems - Chapter 2
Management Information Systems - Chapter 2Joel Briza
 
Management Information Technology - Chapter 1
Management Information Technology - Chapter 1Management Information Technology - Chapter 1
Management Information Technology - Chapter 1Joel Briza
 
System analysis and design Part2
System analysis and design Part2System analysis and design Part2
System analysis and design Part2Joel Briza
 
System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and DesignJoel Briza
 
Web programming and development - Introduction
Web programming and development - IntroductionWeb programming and development - Introduction
Web programming and development - IntroductionJoel Briza
 
Business software packages mkis
Business software packages   mkisBusiness software packages   mkis
Business software packages mkisJoel Briza
 
Network security Encryption
Network security EncryptionNetwork security Encryption
Network security EncryptionJoel Briza
 
Business software packages - Accounting Software Systems
Business software packages - Accounting Software SystemsBusiness software packages - Accounting Software Systems
Business software packages - Accounting Software SystemsJoel Briza
 
Business software packages
Business software packagesBusiness software packages
Business software packagesJoel Briza
 
Database management systems
Database management systemsDatabase management systems
Database management systemsJoel Briza
 

Mehr von Joel Briza (11)

Management Information Systems - Chapter 3
Management Information Systems - Chapter 3Management Information Systems - Chapter 3
Management Information Systems - Chapter 3
 
Management Information Systems - Chapter 2
Management Information Systems - Chapter 2Management Information Systems - Chapter 2
Management Information Systems - Chapter 2
 
Management Information Technology - Chapter 1
Management Information Technology - Chapter 1Management Information Technology - Chapter 1
Management Information Technology - Chapter 1
 
System analysis and design Part2
System analysis and design Part2System analysis and design Part2
System analysis and design Part2
 
System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and Design
 
Web programming and development - Introduction
Web programming and development - IntroductionWeb programming and development - Introduction
Web programming and development - Introduction
 
Business software packages mkis
Business software packages   mkisBusiness software packages   mkis
Business software packages mkis
 
Network security Encryption
Network security EncryptionNetwork security Encryption
Network security Encryption
 
Business software packages - Accounting Software Systems
Business software packages - Accounting Software SystemsBusiness software packages - Accounting Software Systems
Business software packages - Accounting Software Systems
 
Business software packages
Business software packagesBusiness software packages
Business software packages
 
Database management systems
Database management systemsDatabase management systems
Database management systems
 

Kürzlich hochgeladen

Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Lecture # 8 software design and architecture (SDA).ppt
Lecture # 8 software design and architecture (SDA).pptLecture # 8 software design and architecture (SDA).ppt
Lecture # 8 software design and architecture (SDA).pptesrabilgic2
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
1C_PNS.pdf Philippines National standard
1C_PNS.pdf Philippines National standard1C_PNS.pdf Philippines National standard
1C_PNS.pdf Philippines National standardraffietividad53
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 

Kürzlich hochgeladen (20)

Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Lecture # 8 software design and architecture (SDA).ppt
Lecture # 8 software design and architecture (SDA).pptLecture # 8 software design and architecture (SDA).ppt
Lecture # 8 software design and architecture (SDA).ppt
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
1C_PNS.pdf Philippines National standard
1C_PNS.pdf Philippines National standard1C_PNS.pdf Philippines National standard
1C_PNS.pdf Philippines National standard
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 

XML - Data Modeling

  • 3. A document model defines a set of element names and attributes that can appear in an XML document. A document model, more formally and generally known as a data model, describes the logical structure of a set of data. The data model specifies which information a data set contains in terms of the names of the fields, which data each field can contain, and the relationships between fields and other sets of data. Document Model
  • 4. -You want to define an XML vocabulary, and you need to ensure that people can computers produce XML documents that conform on the vocabulary. -You want to reduce the cost of creating a new XML-aware application. -You want to ensure that XML documents meet a certain level of quality, in terms of their structure and the data that they contain. -XML documents are created by people or other applications and are consumed (read) by other applications. A data model becomes important in the following scenarios:
  • 5. There are three major technologies that you can use to create a data model for your XML documents: -DTD -XDR Schema -XML Schema Types of Data Models
  • 6. DTD, or Document Type Definition, is a technology that’s part of the XML specification. This means that all validating XML parsers must be able to read and work with a DTD. A validating XML parser can not only read XML documents, but verify that they conform to a specific schema. Data Modeling with DTD
  • 7. <?xml version=“1.0” encoding=“UTF-8”?> <!– The DTD follows... --> <!DOCTYPE people [ <!ELEMENT people (person+)> <!ELEMENT person (name)> <!ELEMENT name (first, last)> <!ELEMENT first (#PCDATA)> <!ELEMENT last (#PCDATA)> ]> Example of a DTD
  • 8. <!–- The XML data begins here... --> <people> <person> <name> <first>Erik</first> <last>Westermann</last> </name> </person> <person> <name> <first>Tom</first> <last>Archer</last> </name> </person> </people>
  • 9. -DTDs use a specialized syntax that’s different from XML, making them more difficult to learn for people without a background in SGML or XML -DTDs don’t allow you to specify which type of data an element can contain. -DTDs have a fixed, non-extensible content model that doesn’t allow developers to create new elements and attributes. -DTDs don’t support namespaces. Disadvantages of DTD
  • 10. XDR, or XML Data Reduced, is an XML vocabulary invented by Microsoft taht allows you to describe the schema of an XML document. The XDR describes that schema in terms of not only the document’s content, but also which types of content are contained in the document’s elements. The primary drawback to using XDR is that it’s limited to Microsoft products and technologies – other vendors don’t support XDR. Data Modeling with XDR Schema
  • 11. <?xml version=“1.0” encoding=“UTF-8”?> <Schema name=“Untitled-schema” xmlns=“urn:schemas-microsfot-com:xml-data” xmlns:dt=“urn:schemas-microsoft-com:datatypes”> <ElementType name=“people” model=“closed” content=“eltOnly” order=“seq”> <AttributeType name=“xmlns” dt:type=“string”/> <attribute type=“xmlns”/> <element type=“person” minOccurs=“1” maxOccurs=“*” /> </ElementType> <ElementType name=“person” model=“closed” content=“eltOnly” order=“seq”> <element type=“name” minOccurs=“1” maxOccurs=“1” /> </ElementType> An Example of XDR
  • 12. <ElementType name=“name” model=“closed” content=“eltOnly” order=“seq”> <element type=“first” minOccurs=“1” maxOccurs=“1” /> <element type=“last” minOccurs=“1” maxOccurs=“1” /> </ElementType> <ElementType name=“first” model=“closed” content=“textOnly” dt:type=“string”/> <ElementType name=“last” model=“closed” content=“textOnly” dt:type=“string”/> </Schema>
  • 13. XSD, the XML Schema Definition, is a W3C recommendation that allows you to describe XML schemas using an XML vocabulary. The XSD describes the XML Document in terms of its data types. Data Modeling with XSD
  • 14. <?xml version=“1.0” encoding=“UTF-8”?> <xs:schema xmlns:xs=“http://www.w3.org/2001/XMLSchema” elementFormDefault=“qualified”> <xs:element name=“first” type=“xs:string”/> <xs:element name=“last” type=“xs:string”/> <xs:element name=“name”> <xs:complexType> <xs:sequence> <xs:element ref=“first”/> <xs:element ref=“last”/> </xs:sequence> </xs:complexType> </xs:element> An Example of XSD
  • 15. <xs:element name=“people”> <xs:complexType> <xs:sequence> <xs:element ref=“person” maxOccurs=“unbounded”/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name=“person”> <xs:complexType> <xs:sequence> <xs:element ref=“name”/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
  • 16. DTDs -Have been around for a long time and enjoy broad support from a wide range of products and vendors -Generally well-understood XDR -Microsoft-specific technology. Limited support in the industry. XSD -W3C Standard. Broader acceptance from vendors. -New in the market. Which Dat Modelling Schema Should I use?