OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xri message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [xri] Example local resolver API and corresponding proxy resolver output.



Forgive me for my bad example of using a $res*auth service for the results
of service selection here. 

Yikes. :-)

~ Steve


> -----Original Message-----
> From: Steven Churchill [mailto:steven.churchill@xdi.org]
> Sent: Sunday, February 26, 2006 11:20 PM
> To: xri@lists.oasis-open.org
> Cc: 'Andy Dale'
> Subject: [xri] Example local resolver API and corresponding proxy resolver
> output.
> 
> 
> Hi all,
> 
> Discussions with Drummond earlier today led to the following
> proposal.
> 
> The first section describes an example API for the local
> Resolver. The second section shows the proxy resolver's
> corresponding outputs based on the value of its argument
> _xrd_r which takes on one of three values:
> 
> xrds    Perform authority resolution only and return the
>         XRDS document.
> 
> uri     Perform authority resolution and service endpoint
>         selection, and return the highest priority URI.
> 
> sep     Perform authority resolution and service endpoint
>         selection, and return the full set of SEP output
>         information.
> 
> ___________________________________
> 
> Example API for Local Resolver:
> 
> [N.B.: Note that the method names correspond to the values of the
> _xrd_r argument used by the proxy resolver.]
> 
> [N.B.: I will formalize the documentation after the group has
> has had a chance to respond. Currently it's just a list of notes.]
> 
> 1. int xrdsResolve(
>         in string qXRI, in string mediaType, in boolean noFollowRefs,
>         out string XRDS, out string errorContext);
> 
>     Notes:
>     -   Performs authority resolution only and outputs the XRDS.
>     -   Only the first segment of qXRI is processed.
>     -   A null value for mediaType defaults to application/xrds+xml.
>     -   All _xrd_ arguments on qXRI are ignored by this operation.
>     -   Returns the error code. If error, then the errorContext
>         output argument may contain additional error information.
>         The XRDS will contain an XRD with the same code and
>         optional context information.
> 
> 
> 2. int uriResolve(
>         in string qXRI, in string type, in string mediaType,
>         in boolean noFollowRefs, out string URI,
>         out string errorContext);
> 
>     Notes:
>     -	  Performs both authority resolution and service selection,
>         and outputs the highest priority URI after URI construction.
>     -   The first segment of the given qXRI is used for authority
>         resolution phase. The remainder of the qXRI is used as the
>         "path" argument for service selection.
>     -   All _xrd_ arguments on qXRI are ignored by this operation.
>     -   Returns the error code. If error, then the errorContext
>         output argument may contain additional error information.
> 
> 3. int sepResolve(
>         in string qXRI, in string type, in string mediaType,
>         in boolean noFollowRefs, out string[] uriArray,
>         out string[] canonicalIDArray, out string serviceXML
>         out string errorContext);
> 
>     Notes:
>     -	  Performs both authority resolution and service selection,
>         and, for the selected service, outputs (1) the (post
>         URI construction) list of URIs in order of priority, (2)
>         the canonicalID list in order of priority, and (3) the
>         XML <xrd:Service> service element.
>     -   The first segment of the given qXRI is used for authority
>         resolution phase. The remainder of the qXRI is used as the
>         "path" argument for service selection.
>     -   All _xrd_ arguments on qXRI are ignored by this operation.
>     -   Returns the error code. If error, then the errorContext
>         output argument may contain additional error information.
> 
> 
> ___________________________________
> 
> Proxy Resolver Output
> 
> This section shows the proxy resolver's output for the three
> values of _xrd_r.
> 
> 1. _xrd_r = "xrds"
> 
>     << The output is shown in section 3.2 of the spec. >>
> 
> 2. _xrd_r = "uri"
> 
>     << The output is the highest priority URI subsequent to
>        URI construction. If an error occurs, then the output
>        is *TBD* >>
> 
> 3.  _xrd_r = "sep"
> 
>     <xrd:XRD>
>         <Status code="100">
>             [[Would include optional context, if error.]]
>         </Status>
> 
>         <URI>http://resolve.example.com/appendedpath?arg=foo</URI>
>         <URI>http://resolve2.example.com/appendedpath?arg=foo</URI>
> 
>         <CanonicalID>xri://@!1000!1234</CanonicalID>
> 
>         <Service>
>             <ProviderID>xri://!!1000!1234.5678</ProviderID>
>             <Type>xri://$res*auth*($v*2.0)</Type>
>             <MediaType>application/xrds+xml</MediaType>
>             <URI priority="10">http://resolve.example.com</URI>
>             <URI priority="15">http://resolve2.example.com</URI>
>             <URI>https://resolve.example.com</URI>
>             <OtherMetadata>foo</OtherMetadata>
>         </Service>
>     </xrd:XRD>
> 
> 
>     Notes about the above XML:
>     -   URIs are post URI construction and are in order of priority.
>     -   CanonicalIDs are in order of priority.
>     -   <URI> and <CanonicalID> have no attributes in this context.
>     -   The Service element has not been altered by URI construction
>         or anything else.
>     -   URI is now child of XRD as well as Service :-)
> 
> 
> Please provide your feedback ASAP.
> 
> Thx,
> ~ Steve
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that
> generates this mail.  You may a link to this group and all your TCs in
> OASIS
> at:
> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]