Difference between revisions of "Databases"
From Suhrid.net Wiki
Jump to navigationJump to search| Line 36: | Line 36: | ||
|Ordering | |Ordering | ||
| Fundamentally UNORDERED. e.g. Order by clause is required in SQL in case order is desired. | | Fundamentally UNORDERED. e.g. Order by clause is required in SQL in case order is desired. | ||
| − | | Ordering is implied - e.g. the way the text is laid out in the XML document. | + | | Ordering is implied - e.g. the way the text is laid out in the XML document or in the Stream. |
|- | |- | ||
|Implementation | |Implementation | ||
| Line 46: | Line 46: | ||
* Single root element | * Single root element | ||
| + | * XML parser is used to validate XML. | ||
| + | * DOM parser - treats XML as a document, SAX parser - treats XML as a stream. | ||
* Matched tags, proper nesting | * Matched tags, proper nesting | ||
* Unique attributes within each element | * Unique attributes within each element | ||
| + | |||
| + | == Displaying XML == | ||
| + | |||
| + | * Since XML occurs a lot on the internet, a convenient way is required to display XML. | ||
| + | * Use rule based languages such as CSS, XSL to translate XML to HTML. | ||
| + | * XML document is fed to a CSS/XSL interpreter alongwith rules and a HTML document is generated. | ||
Revision as of 23:40, 7 December 2013
Contents
Relational Databases
- Set of named relations (tables)
- Each relation has a set of named attributes (columns)
- Each tuple (row) has a value for each attribute
- Each attribute has a type (or domain)
- All queries return relations (tables), so it can said to be compositional or closed.
XML Data
- Alternative to relational model to store data
- Standard for data representation and exchange
- Document format similar to HTML, however tags represent content instead of formatting.
- XML consists of tagged elements which can be nested, attributes of elements and the text (values/data)
- XML document can be thought of as a tree with values/text forming the leaves.
Relational vs XML
| Relational | XML | |
|---|---|---|
| Structure | Tables | Hierarchical/Tree |
| Schema | Fixed in advance | Flexible, self-describing. e.g. all elements need not have same attributes. (In relational, we would need to have NULL values). Inconsistencies in the structure is NOT a problem. |
| Queries | Relatively simple | Complicated compared to Relational / SQL. |
| Ordering | Fundamentally UNORDERED. e.g. Order by clause is required in SQL in case order is desired. | Ordering is implied - e.g. the way the text is laid out in the XML document or in the Stream. |
| Implementation | Mature - native implementation | Add - on. (Underlying implementation is relational) |
Well formed XML
- Single root element
- XML parser is used to validate XML.
- DOM parser - treats XML as a document, SAX parser - treats XML as a stream.
- Matched tags, proper nesting
- Unique attributes within each element
Displaying XML
- Since XML occurs a lot on the internet, a convenient way is required to display XML.
- Use rule based languages such as CSS, XSL to translate XML to HTML.
- XML document is fed to a CSS/XSL interpreter alongwith rules and a HTML document is generated.