(self, name, attrs)
| 342 | self._cont_handler.endElement(name) |
| 343 | |
| 344 | def start_element_ns(self, name, attrs): |
| 345 | pair = name.split() |
| 346 | if len(pair) == 1: |
| 347 | # no namespace |
| 348 | pair = (None, name) |
| 349 | elif len(pair) == 3: |
| 350 | pair = pair[0], pair[1] |
| 351 | else: |
| 352 | # default namespace |
| 353 | pair = tuple(pair) |
| 354 | |
| 355 | newattrs = {} |
| 356 | qnames = {} |
| 357 | for (aname, value) in attrs.items(): |
| 358 | parts = aname.split() |
| 359 | length = len(parts) |
| 360 | if length == 1: |
| 361 | # no namespace |
| 362 | qname = aname |
| 363 | apair = (None, aname) |
| 364 | elif length == 3: |
| 365 | qname = "%s:%s" % (parts[2], parts[1]) |
| 366 | apair = parts[0], parts[1] |
| 367 | else: |
| 368 | # default namespace |
| 369 | qname = parts[1] |
| 370 | apair = tuple(parts) |
| 371 | |
| 372 | newattrs[apair] = value |
| 373 | qnames[apair] = qname |
| 374 | |
| 375 | self._cont_handler.startElementNS(pair, None, |
| 376 | AttributesNSImpl(newattrs, qnames)) |
| 377 | |
| 378 | def end_element_ns(self, name): |
| 379 | pair = name.split() |
nothing calls this directly
no test coverage detected