Skip to content

RS Developers Guide

Ryan Heaton edited this page Nov 15, 2012 · 7 revisions

Introduction

GEDCOM X RS defines a standard interface to genealogical data applications for the World Wide Web. A GEDCOM X RS application is defined in terms of application states. You can think of an application state as a resource, such as a person, relationship, or source. Each application state is defined in terms of the following:

  • the available transitions to other states (i.e. "links")

  • the HTTP operations that are applicable to those resources

    and

  • the media types that are used to read or update application state.

Hypermedia-Based Design

If a hypermedia-based application is done well, the only thing a client should need to get started is an "entry point" that will provide a representation of "transitions" (i.e. "links") to all the available states of the application. Consumers of the API can then drive the application state using those links.

Links

The GEDCOM X RS specification defines a data type named Link as an extension to the core GEDCOM X data model. The Link is used to drive application state. The core conceptual model of the Link data type is defined by RFC 5988. GEDCOM X adds additional attributes to the concept of the link defined by RFC 5988, as follows:

  • template: used to provide a URI template when a target URI is not available (such as for search queries). A URI template is defined by RFC 6570.
  • accept: provides metadata about the acceptable media type(s) that can be used to update (i.e. change the state of) the resource being linked to. The value of the accept attribute is as defined by the HTTP specification, RFC 2616, Section 3.7.
  • `allow': provides metadata about the allowable methods that can be used to transition to the resource being linked. The value of the "allow" attribute is as defined by the HTTP specification, RFC 2616, Section 14.7.

Application States

To see a list of states specified by GEDCOM X RS, see Application States

Clone this wiki locally