Function: soap-l2fq

soap-l2fq is a byte-compiled function defined in soap-client.el.gz.

Signature

(soap-l2fq LOCAL-NAME &optional USE-TNS)

Documentation

Convert LOCAL-NAME into a fully qualified name.

A fully qualified name is a cons of the namespace name and the name of the element itself. For example "xsd:string" is converted to ("http://www.w3.org/2001/XMLSchema" . "string").

The USE-TNS argument specifies what to do when LOCAL-NAME has no namespace tag. If USE-TNS is non-nil, the soap-target-xmlns will be used as the element's namespace, otherwise soap-default-xmlns will be used.

This is needed because different parts of a WSDL document can use different namespace aliases for the same element.

Source Code

;; Defined in /usr/src/emacs/lisp/net/soap-client.el.gz
(defun soap-l2fq (local-name &optional use-tns)
  "Convert LOCAL-NAME into a fully qualified name.
A fully qualified name is a cons of the namespace name and the
name of the element itself.  For example \"xsd:string\" is
converted to (\"http://www.w3.org/2001/XMLSchema\" . \"string\").

The USE-TNS argument specifies what to do when LOCAL-NAME has no
namespace tag.  If USE-TNS is non-nil, the `soap-target-xmlns'
will be used as the element's namespace, otherwise
`soap-default-xmlns' will be used.

This is needed because different parts of a WSDL document can use
different namespace aliases for the same element."
  (let ((local-name-1 (if (symbolp local-name)
                          (symbol-name local-name)
                        local-name)))
    (cond ((string-match "^\\(.*\\):\\(.*\\)$" local-name-1)
           (let ((ns (match-string 1 local-name-1))
                 (name (match-string 2 local-name-1)))
             (let ((namespace (cdr (assoc ns soap-local-xmlns))))
               (if namespace
                   (cons namespace name)
                 (error "Soap-l2fq(%s): unknown alias %s" local-name ns)))))
          (t
           (cons (if use-tns
                     soap-target-xmlns
                   soap-default-xmlns)
                 local-name-1)))))