Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History
New Proposal Template
This page has been created from a template that uses "zones." To proceed:
  1. Edit the page
  2. Replace sample content within each zone-data tag
  3. Remove this notice
  4. Save the page
  5. When you are ready for review, remove the Under Construction notice
Under Construction
This proposal is under construction and is not ready for review.

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Service_Yadis Component Proposal

Proposed Component Name Zend_Service_Yadis
Developer Notes
Proposers Pádraic Brady
Revision 1.0 - 22 February 2007: Initial Proposal Text. (wiki revision: 5)

Table of Contents

1. Overview

Zend_Service_Yadis will provide a method of Service Discovery implemented in accordance with the Yadis Specification 1.0. This describes a protocol for locating an XRD document which details Services available. The XRD is typically specific to a single user, identified by their Yadis ID. Zend_Service_Yadis_XRDS will be a wrapper which is responsible for parsing and presenting an iterable list of Zend_Service_Yadis_Service objects holding the data for each specific Service discovered.

The simplest use case is decentralised authentication via OpenID. The Yadis ID is a user's OpenID URL, or a personal URL alias. The available Services are the Signon and Simple Registration versions supported. The XRD document will also contain the Service URL to which requests should be made, and the OpenID Delegate URL by which the OpenID Server knows this user. Yadis is a fundamental requirement for the current OpenID specification, and also for several other authentication schemes such as Light-Weight Identity and mIDm

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

Zend_Service_Yadis must implement the 1.0 protocol and rules for locating a valid XRD document and parsing the XML into a list of Services and Service details.
Services data will be returned in an object of type Iterator.
Zend_Service_Yadis must adhere strictly to the Yadis Specification 1.0 as regards handling Response preferences and Service/URL priorities.

4. Dependencies on Other Framework Components

  • Zend_Service_Abstract
  • Zend_Service_Exception
  • Zend_Http_Client
  • Zend_Uri
  • Zend_Exception

5. Theory of Operation

Fetch a valid XRD document by following the Yadis protocol, parse to obtain a list of Services and Service Details, return Services as an array of data objects.

6. Milestones / Tasks

  • Milestone 1: Implement basic service using Zend dependencies
  • Milestone 2: Unit Tests and class refactoring
  • Milestone 3: Debugging and Use Case testing
  • Milestone 4: Documentation

7. Class Index

  • Zend_Service_Yadis
  • Zend_Service_Yadis_Xrds
  • Zend_Service_Yadis_Service
  • Zend_Service_Yadis_Exception

8. Use Cases


Retrieve an OpenID service description

9. Class Skeletons


Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.