[http://creativecommons.org/licenses/by/3.0/]
This work is licensed under a CC
Attribution 3.0 Unported License [http://creativecommons.org/licenses/by/3.0/]
The first half of the lecture compares XML to alternatives, that also are used as ways to represent and/or manage and/or exchange and/or process data. The most relevant approaches in this space are RDF, JSON, and tabular/relational models such as SQL or NoSQL. One of the reasons why using XML-based approaches for data representation, management, interchange, and processing, is that there is a large landscape of existing standards and technologies and tools, and that for many problems it thus is possible to approach the problem by reusing existing solutions. In the second half of this lecture, we look at a small set of additional standards that were not yet covered.
If the only tool you have is a hammer, you tend to see every problem as a nail.
Abraham Maslow [http://en.wikipedia.org/wiki/Abraham_Maslow]
naturalfor developers
objectsor similar concepts
object structures
<?xml version="1.0"?> <menu id="file" value="File"> <popup> <menuitem value="New" onclick="CreateNewDoc()"/> <menuitem value="Open" onclick="OpenDoc()"/> <menuitem value="Close" onclick="CloseDoc()"/> </popup> </menu>
{ "menu" : { "id" : "file", "value" : "File", "popup" : { "menuitem" : [ { "value" : "New", "onclick" : "CreateNewDoc()" }, { "value" : "Open", "onclick" : "OpenDoc()" }, { "value" : "Close", "onclick" : "CloseDoc()" } ] } }}
http://dbpedia.org/resource/Spoon_%28band%29
[http://dbpedia.org/resource/Spoon_%28band%29]http://dbpedia.org/resource/Mysticism
[http://dbpedia.org/resource/Mysticism]http://lod.taxonconcept.org/ses/QMUrD
[http://lod.taxonconcept.org/ses/QMUrD]Spoon
<elem></elem>
vs. <elem/>
)
IDnessof an attribute is established by its name
xml:id
uses XML's own namespace to identify identifiers
http://www.w3.org/XML/1998/namespace
[http://www.w3.org/XML/1998/namespace] contains a mix of various specs
<section id="introduction">
<section xml:id="introduction">
<x xmlns:xi="http://www.w3.org/2001/XInclude"> <xi:include href="something.xml"/> <xi:include xpointer="xmlns(xi=http://www.w3.org/2001/XInclude)xpointer(x/xi:include[1])" parse="xml"/> </x>
<!ELEMENT xi:include (xi:fallback?)> <!ATTLIST xi:include xmlns:xi CDATA #FIXED "http://www.w3.org/2001/XInclude" href CDATA #IMPLIED parse (xml|text) "xml" xpointer CDATA #IMPLIED encoding CDATA #IMPLIED accept CDATA #IMPLIED accept-language CDATA #IMPLIED >
XML programming language
XMLHttpRequest
[http://www.w3.org/TR/XMLHttpRequest/]language bindingsmap IDL to specific languages such as Java [http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html] or JavaScript [http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding.html]