00:000 to hero XML. So let's talk about the XML basics. Let's start off with just
00:07understanding what it is, why was it born, where is it coming from. So let's
00:13dig in immediately and actually start from the origins.
00:18By the way, if you're a history buff and you have some corrections to my
00:22history, I don't personally care about the history that much. It's more about
00:26giving you enough information to get a picture of why XML exists. Now,
00:30obviously we will be more than happy to hear your comments and our community, but
00:35I think just for the sake of learning the topic of XML, we're gonna rewrite a
00:40little bit of history and kind of present it in a way which will make it
00:42really, really easy for anyone to understand what is XML for and how to
00:46start integrating it into your work. Alright, so first of all, before we do
00:51anything, the first thing that we really have to do is we really have to
00:54understand that XML originates from HTML. HTML in the beginning when the web
01:00first was created was really the only way to show information. And originally
01:05when HTML was created, it was an amazing language. It was capable of doing
01:10really a lot of stuff and when you think about it, when the internet started, no
01:13one really thought that Dendre is going to be what it is today. I'm sure some
01:17had some projections, but the reality was is the developer or the person sitting
01:22on the computer that was building up the HTML applications really was doing
01:26everything. There wasn't such a thing as a designer, there wasn't a developer
01:30separately, there wasn't all these different key components of businesses
01:34that we have today. And actually, HTML from the get-go was capable of doing
01:39quite a lot of stuff, even though it was just a natural thing. Now, by the
01:42way, if you don't know XML, it's fine. You don't have to know XML to do this
01:46course. Obviously, it will help you. Obviously, it would help you to know
01:50another programming language to get XML, to be able to start working in XML, but
01:55we're going to get off under the assumption that you know some basics in
01:59at least one programming language and a little, little basic understanding in HTML,
02:03which is not really mandatory. Alright, so HTML, HTML had a structure, had
02:08content, it was it in theory was capable of creating interactiveness and it had
02:15a layout and a design. So originally when the web was created, all these
02:20different functionalities really were all combined into this one thing, which
02:23was our HTML. And there are all these different ways of visual graphical ways
02:28of actually getting all these functionalities done in one single place.
02:32Now, as the industry grew, and as suddenly websites are built by more than
02:36one person, and actually a lot of people sometimes, the need and
02:42as the internet got more sophisticated, suddenly there was a need
02:46for really, really complicated interactive stuff and videos and music and YouTube
02:52and you name it. And suddenly HTML just wasn't good enough. And as the years
02:57went by, HTML's versions grew and grew. And as the versions grew, there was a
03:02really clear understanding that data needs to start separating out. And as
03:06that was discovered, and as that happened, there were really four main clusters
03:11that really grew into this world of HTML where CSS really took the most
03:17of the work when it came down to the layout and the design. JavaScript started
03:21taking JavaScript and plugins, which are Flash and Silverlight and Java and
03:25other plugins, started taking the ownership of interactiveness. Well, XML
03:30started taking the responsibility of managing content. Now, as you can see,
03:35there isn't a clear cut that every content is in XML or everything
03:40about layout is outside in your CSS. But that was really the what HTML4 really
03:46strived for. So 3d4, you know, like all the ideas were basically, let's separate
03:51things. Let's put the, let's put the aesthetics into the CSS, let's put the
03:56interactiveness into JavaScript. And if it's too complicated, let's use some
03:59sort of plugin, such as Flash, Silverlight, Java, or you name it. And
04:04let's put data that like a lot of data or data that needs to be
04:07structured. Let's put it inside of an XML. Let's take that data out. And we're
04:11going to look at why we wanted to take the data out. But the one thing that's
04:14really important to notice here is especially we're living now in a world
04:17where everyone's saying buzzwords and everyone's saying HTML5. What really
04:22the whole premise behind HTML5 is we're going to be more strictly
04:28adherent to these rules where HTML is going to be more about structure
04:32and CSS, we're going to do all our CSS stuff, layout and design, and
04:37sometimes even animation. And our JavaScript is going to take over the
04:41more complicated things and our XML is going to take out all the content related
04:45things or anything that really is a saying that's going to be used in a
04:49structural way or that it needs to be used in other applications as well.
04:53Now, a lot of people are asking you, so where are the plugins going? And as you
04:58can see, there's a bit very big fight on the web. There's some sites that are
05:01really taking all the plugins out, some sites that are keeping them,
05:04and it really just depends on the case per case. Really, HTML, whenever HTML
05:09will be compatible enough and will be able to give all the stuff that are
05:12needed. And really that goes into a little
05:14separate topic where HTML is obviously maturing a lot with HTML5
05:18and is bringing in a lot of functionalities that in the past,
05:22a lot of times in the past, JavaScript and plugins have to take over.
05:25So there's a few stuff that are just built in directly into the browsers if
05:29it's going to be video players, if it's going to be different form fields,
05:32different things that just make it easier for programmers to program because
05:35they don't have to build it. It's going to just be part of the browser.
05:38It's going to be part of their HTML. Now, anything that they need to build,
05:41they're always going to go back to their JavaScript.
05:43And anything that's extremely complicated, there's just too much for
05:46JavaScript, will probably end up at Flash if it's games,
05:50if it's really sophisticated video players. But really,
05:53really what are Flash and third-party plugins,
05:57it looks like their future is really driven into the more
06:00elite programs, the more sophisticated things, if it's
06:04complicated applications, if it's complicated games mainly,
06:08if it's complicated 3D things, which obviously HTML currently at this shape
06:12would just can't really deal with something like that.
06:15So that's really the scope of the world of where we're living in.
06:17Now, XML really, when we look more deeply into XML, like we're saying,
06:22XML contains our content, XML kind of grew as something that's
06:26beyond just our HTML. And it's true also for
06:29probably all the other topics as well. Although they originated from the web,
06:33today they're part of almost any application.
06:36If it's your operating system, if it's, there's so many places where you're
06:40going to meet XML. And XML, you're going to meet XML really,
06:43because it's a really convenient way of storing content
06:46separately from your application, making it really easy for groups of people to
06:50work together, making it really easy to make
06:52minor copy updates without needing to change your application,
06:56making it easy to share your information with others. So let's look a
07:00little bit deeper into this concept of content.
07:02And when we're talking about content, we're really talking about structured
07:05content when we're talking about XML, which
07:08means it's content that we want to organize in a specific way.
07:11If it's for a few reasons, there's quite a lot of reasons actually, but one
07:15of them is if we just want to organize our data,
07:17such as if we have a hundred students and they have a hundred scores,
07:21and it doesn't really make any sense to just drop it somewhere. We want to
07:25organize it in a way where it'll be easy for us to fetch
07:28the data if it's the student's score, a specific student, if it's finding
07:32what student's got a specific score, and so on and so forth. Then XML becomes a
07:36really, really fantastic tool to just organize data.
07:39XML doesn't do the sorting. XML doesn't do the
07:43actual workload, but it organizes the content in a way that makes it just
07:47really easy and convenient to access the data whenever you want to.
07:51Now it makes it more accessible. Now we're talking about that
07:54if you're talking about applications, applications a lot of times are compiled
07:58or applications are really baked or if you look at your old HTML, if you have
08:02HTML skills and you integrated everything directly
08:05into the HTML, it's really baked inside of that HTML file, making it really hard
08:10for you to use that data again if you need it for another page.
08:13If you would need to use it for another page, you'd have to copy the data again
08:16or you'd have to build it in a really fancy way on a server.
08:20So really XML makes your data more accessible. Not only does it make it
08:24more accessible, like we said, it makes it just easy for you to split the work so
08:27if you need someone to put in all the scores of some students,
08:30you don't have to do the work yourself. You can build that XML structure,
08:34send your task to the person, continue working on your
08:38on your application, and you're not dependent on that work because it's
08:41just textual data that would put in as long as you built a stable
08:44application. Now two more topics. It's safer builds.
08:49Why is it safer builds? Because I built an operating system and I put a
08:52lot of configurations into an XML. If I have minor tweaks or minor changes,
08:57if it's content-related, image-related, if it's things that are not in the heart
09:00of the application, I have less risks just because it's
09:04easier to make these changes. I don't have to recompile. I don't have to
09:08I don't have to rebuild the application and send it out again. I just have to
09:11change some minor textual things. So it makes it easy.
09:15That's why a lot of applications have all their configurations out in XML files
09:20and if you scan around in your computer sometimes they call these XML files
09:23in different names but their structure is going to be the
09:25exact same structure as we're going to learn about in the next
09:2910-20 minutes. Now cross language and platform.
09:33Now because this language is basically just text that we're going to show you
09:37how to build, every language as long as it has an XML
09:40parser, as long as it has something that knows how to read XML,
09:43built-in already knows how to read these XMLs which makes it really easy
09:47for you to use the same data if it's for an HTML file,
09:50if it's for a JavaScript application, if it's for Flash, if it's for PHP,
09:55if it's for really any programming language or any
09:58any need. And just speaking on that same sense, if you know what RSS
10:04is, RSS is the aggregated news data or feed where you can
10:08watch and get your information. I'll just reveal to you a secret if you didn't
10:11know it already. RSS is just XML, a very smart XML that
10:16more sophisticated, that has certain rules and regulations,
10:21but that's all it is. It's just XML. So if I want to create an RSS feed, I
10:26don't have to build an RSS feed generator or whatever the tool that
10:30would actually provide and show all this RSS.
10:32The browser already did that for me. All I have to do is provide that RSS, this
10:37XML structure that it's expecting. Now same is true with HTML, even though
10:41HTML was born before HTML. HTML was born before XML. The idea behind
10:47it is really the same. In a way, XML is taking the logic out of
10:52your HTML and just turning it into blocks that we're going to look into them in a
10:56minute. But basically you could say that HTML
10:59is this type of implementation of XML, even though HTML was created way before
11:03XML was discovered. But we'll see more into that really soon. Now I'm
11:09sure there's a lot more other reasons why the birth of
11:12XML happened, and I really encourage you to come into our chat, start
11:15creating conversation about it, bring up your own ideas, why do you think XML is
11:19so great, or where do you find value in XML?
11:23Alright, so we covered that topic of basically
11:26where did XML come from, and really why would we want to use XML?
11:30The next topic that we want to talk about really quickly is just saying that
11:34we're going to be, throughout our course, we're going to be working,
11:37jumping around between two applications, Smalltron, which is a macOS
11:41application, and Dreamweaver, which is an Adobe application, a really fantastic one.
11:46We like working with Adobe products, we're
11:48friends of Adobe. Now for a full list of tools for PC Mac, you could find them
11:52on our website in the courses page, or you could always ask in our community
11:57channels, and we're always happy to help you find whatever tool you need.
12:00Now if you're not ready to pay and buy for an application, there's a lot of
12:03free applications online, so come to our site, and we'll put up a few links, or
12:07just search online for XML editors, or HTML editors, but
12:13very very important is you want to make sure that you're working with an editor
12:16that actually enables you to just type directly, and doesn't modify or
12:19manipulate your code in any way. So your best bet, if you're really
12:22really new, is just to come onto our site and pick an application you want to
12:25work with, if you don't want to work with Smalltron
12:27or Dreamweaver. But the application itself doesn't really matter at all,
12:30because we're going to be focusing directly just on the copy,
12:33and how to actually build that XML. So I hope you enjoy your basic training
12:39of XML, and I think it's time for us to open up an editor,
12:42and start actually showing you how XML looks like.