Imported Upstream version 1.0
[platform/upstream/shared-mime-info.git] / test-subclassing.c
1 #include <libxml/tree.h>
2 #include <stdio.h>
3 #include <string.h>
4
5 int
6 main (int    argc,
7       char **argv)
8 {
9         xmlDocPtr doc;
10         xmlNodePtr node;
11
12         doc = xmlReadFile ("freedesktop.org.xml", NULL, 0);
13         if (doc == NULL) {
14                 fprintf (stderr, "Reading \"freedesktop.org.xml\" failed. Aborting.\n");
15                 return 1;
16         }
17
18         if ((node = xmlDocGetRootElement (doc)) == NULL) {
19                 fprintf (stderr, "\"freedesktop.org.xml\" has no root node. Aborting.\n");
20                 return 1;
21         }
22
23         for (node = node->children; node != NULL; node = node->next) {
24                 if (!strcmp ((char *) node->name, "mime-type")) {
25                         xmlNodePtr p;
26                         xmlChar *prop;
27
28                         for (p = node->children; p != NULL; p = p->next) {
29                                 if (!strcmp ((char *) p->name, "sub-class-of")) {
30                                         break;
31                                 }
32                         }
33
34                         if (p != NULL) {
35                                 /* got sub-class-of node */
36                                 continue;
37                         }
38
39                         prop = xmlGetProp (node, (xmlChar *) "type");
40                         printf ("%s\n", prop);
41                         xmlFree (prop);
42                 }
43         }
44
45         xmlFreeDoc (doc);
46         return 0;
47 }