| 1 | function tree = xmltree(varargin) |
|---|
| 2 | % XMLTREE/XMLTREE Constructor of the XMLTree class |
|---|
| 3 | % FORMAT tree = xmltree(varargin) |
|---|
| 4 | % |
|---|
| 5 | % filename - XML filename |
|---|
| 6 | % tree - XMLTree Object |
|---|
| 7 | % |
|---|
| 8 | % tree = xmltree; % creates a minimal XML tree: <tag/> |
|---|
| 9 | % tree = xmltree(filename); % creates a tree from an XML file |
|---|
| 10 | %_______________________________________________________________________ |
|---|
| 11 | % |
|---|
| 12 | % This is the constructor of the XMLTree class. |
|---|
| 13 | % It creates a tree of an XML 1.0 file (after parsing) that is stored |
|---|
| 14 | % using a Document Object Model (DOM) representation. |
|---|
| 15 | % See http://www.w3.org/TR/REC-xml for details about XML 1.0. |
|---|
| 16 | % See http://www.w3.org/DOM/ for details about DOM platform. |
|---|
| 17 | %_______________________________________________________________________ |
|---|
| 18 | % @(#)xmltree.m Guillaume Flandin 02/03/27 |
|---|
| 19 | |
|---|
| 20 | switch(nargin) |
|---|
| 21 | case 0 |
|---|
| 22 | tree.tree{1} = struct('type','element',... |
|---|
| 23 | 'name','tag',... |
|---|
| 24 | 'attributes',[],... |
|---|
| 25 | 'contents',[],... |
|---|
| 26 | 'parent',[],... |
|---|
| 27 | 'uid',1); |
|---|
| 28 | tree.filename = ''; |
|---|
| 29 | tree = class(tree,'xmltree'); |
|---|
| 30 | case 1 |
|---|
| 31 | if isa(varargin{1},'xmltree') |
|---|
| 32 | tree = varargin{1}; |
|---|
| 33 | elseif ischar(varargin{1}) |
|---|
| 34 | tree.tree = xml_parser(varargin{1}); |
|---|
| 35 | tree.filename = varargin{1}; |
|---|
| 36 | tree = class(tree,'xmltree'); |
|---|
| 37 | else |
|---|
| 38 | error('[XMLTree] Bad input argument'); |
|---|
| 39 | end |
|---|
| 40 | otherwise |
|---|
| 41 | error('[XMLTree] Bad number of arguments'); |
|---|
| 42 | end |
|---|