Annotation of gpl/axl/py-axl/doc/node.rst, revision 1.1.1.1
1.1 misho 1: :mod:`axl` --- PyAxlNode class: XML node instance
2: ==================================================
3:
4: .. currentmodule:: axl
5:
6:
7: =====
8: Intro
9: =====
10:
11: :class:`axl.Node` class represents a single node instance that is hold
12: by a document (:class:`axl.Doc`).
13:
14: The usual operation is to load a document and the acquire a reference to the node inside as follows::
15:
16: # load the document
17: (doc, err) = axl.parse ("<root-node><child /></root-node>")
18: if err:
19: print ("Failed to parse content: " + err.msg)
20: return -1
21:
22: # get the <child> node
23: node = doc.get ("/root-node/child")
24:
25:
26: However, you can also create new nodes using the type constructor of :class:`axl.Node` as follows::
27:
28: # set a new root node
29: doc.root = axl.Node ("test")
30:
31:
32: ==========
33: Module API
34: ==========
35:
36: .. class:: Node
37:
38: .. method:: next_called (node_name)
39:
40: Allows to get the next node on the same level or the instance
41: node, but with the provide name.
42:
43: :param node_name: node name to match.
44: :type node_name: String
45:
46: :rtype: Returns an instance of :class:`axl.Node` or None if no node was found.
47:
48: .. method:: previous_called (node_name)
49:
50: Allows to get the previous node on the same level or the instance
51: node, but with the provide name.
52:
53: :param node_name: node name to match.
54: :type node_name: String
55:
56: :rtype: Returns an instance of :class:`axl.Node` or None if no node was found.
57:
58: .. method:: child_called (node_name)
59:
60: Allows to get the first node child, but with the provide name.
61:
62: :param node_name: node name to match.
63: :type node_name: String
64:
65: :rtype: Returns an instance of :class:`axl.Node` or None if no node was found.
66:
67: .. method:: find_called (node_name)
68:
69: Gets the xml child node called as provided. The child is looked
70: up in all childs found starting the parent node.
71:
72: :param node_name: node name to match.
73: :type node_name: String
74:
75: :rtype: Returns an instance of :class:`axl.Node` or None if no node was found.
76:
77: .. method:: nth_called (position)
78:
79: Allows to get a reference to the child node located at the same
80: level at the nth position.
81:
82: :param position: node position.
83: :type position: Integer
84:
85: :rtype: Returns an instance of :class:`axl.Node` or None if no node was found.
86:
87: .. method:: has_attr (attr_name, [attr_value])
88:
89: Allows to check if the provided node has the given attribute.
90:
91: :param attr_name: the attribute name to check.
92: :type attr_name: String
93:
94: :param attr_value: Optional the attribute value to check. If provided the method check if the node has an attribute with the provided value.
95: :type attr_value: String
96:
97: :rtype: Returns the presence of the provided attribute on the given node, and optionall checking if that attribute has a particular value.
98:
99: .. method:: attr (attr_name, [value])
100:
101: Allows to get the value associated to the attribute (attr_name)
102: or to configure the provided value if two arguments are
103: provided.
104:
105: :param attr_name: the attribute name to get its value.
106: :type attr_name: String
107:
108: :param value: If provided, allows to configure the value on the attribute (attr_name).
109: :type value: String
110:
111: :rtype: Returns an instance of :class:`axl.Node` or None if no node was found.
112:
113: .. method:: set_child (node)
114:
115: Allows to configure a new child node.
116:
117: :param node: the new child node to configure.
118: :type node: :class:`axl.Node`
119:
120: .. method:: attr_cursor_new ()
121:
122: Creates a new :class:`axl.AttrCursor` instance which is used to
123: perform efficient node attribute iteration. See axl_node_attr_cursor_new.
124:
125: :param node: the new child node to configure.
126: :type node: axl.Node
127:
128: .. attribute:: name
129:
130: (Read only attribute) (String) Allows to get the node name.
131:
132: .. attribute:: first_child
133:
134: (Read only attribute) (:class:`axl.Node`) Allows to get first node child.
135:
136: .. attribute:: next
137:
138: (Read only attribute) (:class:`axl.Node`) Allows to get next node.
139:
140: .. attribute:: previous
141:
142: (Read only attribute) (:class:`axl.Node`) Allows to get previous node.
143:
144: .. attribute:: parent
145:
146: (Read only attribute) (:class:`axl.Node`) Allows to get parent node.
147:
148: .. attribute:: content
149:
150: (Read only attribute) (:class:`axl.Node`) Allows to get the node
151: content. See axl_node_get_content.
152:
153: .. attribute:: doc
154:
155: (Read only attribute) (:class:`axl.Doc`) Allows to get the document that holds the node.
156:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>