Package openid :: Package yadis :: Module etxrd
[frames] | no frames]

Module etxrd

source code

ElementTree interface to an XRD document.

Functions
 
parseXRDS(text)
Parse the given text as an XRDS document.
source code
 
nsTag(ns, t) source code
 
mkXRDTag(t)
basestring -> basestring
source code
 
isXRDS(xrd_tree)
Is this document an XRDS document?
source code
 
getYadisXRD(xrd_tree)
Return the XRD element that should contain the Yadis services
source code
unicode or None
getCanonicalID(iname, xrd_tree)
Return the CanonicalID from this XRDS document.
source code
 
getPriorityStrict(element)
Get the priority of this element.
source code
 
getPriority(element)
Get the priority of this element
source code
 
prioSort(elements)
Sort a list of elements that have priority attributes
source code
 
iterServices(xrd_tree)
Return an iterable over the Service elements in the Yadis XRD
source code
 
expandService(service_element)
Take a service element and expand it into an iterator of: ([type_uri], uri, service_element)
source code
 
expandServices(service_elements)
Take a sorted iterator of service elements and expand it into a sorted iterator of: ([type_uri], uri, service_element)
source code
Function Details

parseXRDS(text)

source code 

Parse the given text as an XRDS document.

Returns:
ElementTree containing an XRDS document
Raises:
  • XRDSError - When there is a parse error or the document does not contain an XRDS.

mkXRDTag(t)

source code 

basestring -> basestring

Create a tag name in the XRD 2.0 XML namespace suitable for using with ElementTree

getCanonicalID(iname, xrd_tree)

source code 

Return the CanonicalID from this XRDS document.

Parameters:
  • iname (unicode) - the XRI being resolved.
  • xrd_tree (ElementTree) - The XRDS output from the resolver.
Returns: unicode or None
The XRI CanonicalID or None.

getPriorityStrict(element)

source code 

Get the priority of this element.

Raises ValueError if the value of the priority is invalid. If no priority is specified, it returns a value that compares greater than any other value.

getPriority(element)

source code 

Get the priority of this element

Returns Max if no priority is specified or the priority value is invalid.

iterServices(xrd_tree)

source code 

Return an iterable over the Service elements in the Yadis XRD

sorted by priority

expandServices(service_elements)

source code 

Take a sorted iterator of service elements and expand it into a sorted iterator of: ([type_uri], uri, service_element)

There may be more than one item in the resulting list for each service element if there is more than one URI or type for a service, but each triple will be unique.

If there is no URI or Type for a Service element, it will not appear in the result.