Gedbas4all/API: Unterschied zwischen den Versionen

aus wiki, dem genealogischen Lexikon zum Mitmachen.
Zur Navigation springen Zur Suche springen
(erste Beispiele)
 
(RDF)
Zeile 47: Zeile 47:
Über einen GET-Request an <tt>xml/event/7829387</tt> kann man die Daten eines Objekts abrufen. Zurückgeliefert wird ein Dokument wie dieses:
Über einen GET-Request an <tt>xml/event/7829387</tt> kann man die Daten eines Objekts abrufen. Zurückgeliefert wird ein Dokument wie dieses:
<source lang="xml">
<source lang="xml">
<event id="#7829387" type="birth" place="Neumühlen-Dietrichsdorf">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://gedbas4all.genealogy.net/sw/">
     <date calendar="calendar_gregorian" type="point">
  <Event rdf:about="http://localhost:8508/gedbas4all/xml/event/7829387" place="Neumühlen-Dietrichsdorf">
      <start>
    <type rdf:resource="http://gedbas4all.genealogy.net/sw/event/birth" />
        <datePart type="datePart_year" value="1896" />
     <date><rdf:Description>
        <datePart type="datePart_month" value="1" />
        <calendar rdf:resource="http://gedbas4all.genealogy.net/sw/Calendar#gregorian" />
        <datePart type="datePart_day" value="22" />
        <certainty rdf:resource="http://gedbas4all.genealogy.net/sw/Certainty#exact" />
      </start>
        <certainty rdf:resource="http://gedbas4all.genealogy.net/sw/DateType#point" />
     </date>
        <start><rdf:Description>
</event>
            <normalized>2413581</normalized>
            <datePart><rdf:Description><type rdf:resource="http://gedbas4all.genealogy.net/sw/date/year"/><value>1896</value></rdf:Description></datePart>
            <datePart><rdf:Description><type rdf:resource="http://gedbas4all.genealogy.net/sw/date/month" /><value>1</value></rdf:Description></datePart>
            <datePart><rdf:Description><type rdf:resource="http://gedbas4all.genealogy.net/sw/date/day" /><value>22</value></rdf:Description></datePart>
        </rdf:Description></start>
     </rdf:Description></date>
  </Event>
</rdf:RDF>
</source>
</source>

Version vom 29. November 2013, 06:48 Uhr

Hinzufügen von Informationen

Mit einem POST-Request an xml/write kann man Daten schreiben. Das sieht z.B. so aus:

<add published="permanent" project="familienanzeigen">
<casAuthentication proxyTicket="PT-53829..." />
<persona id="#hermann" name="Hermann Janz" />
  <characteristic id="#c1">
    <part type="firstname" value="Hermann" />
    <part type="firstname" value="Heinrich" />
    <part type="lastname" value="Janz" />
  </characteristic>
  <event id="#e1" type="birth" place="Neumühlen-Dietrichsdorf">
    <date calendar="calendar_gregorian" type="point">
      <start>
         <datePart type="datePart_year" value="1896" />
         <datePart type="datePart_month" value="1" />
         <datePart type="datePart_day" value="22" />
      </start>
    </date>
  </event>
  <assertion subject1="#hermann" subject2="#c1"/>
  <assertion subject1="#hermann" subject2="#e1"/>
</add>

Als Antwort bekommt man eine Zuordnung von lokalen zu globalen IDs:

<response>
  <persona local="#hermann" global="7829384"/>
  <characteristic local="#c1" global="7829385"/>
  <event local="#e1" global="7829387"/>
</response>

Kennungen (IDs)

Es gibt dabei zwei Arten von IDs:

  • global gültige IDs, die bereits in gedbas4all vorhanden sind
  • nur für diese Übermittlung gültige IDs, die in gedbas4all globalen IDs zugeordnet werden. Diese beginnen mit dem #-Zeichen.

Authentifizierung

Für die Authentifizierung sind drei Möglichkeiten vorgesehen:

  • Authentifizierung einer Applikation, die vertrauenswürdig ist und Daten verschiedener Benutzer eintragen darf
  • Authentifizierung eines einzelnen Benutzers mit Hilfe einem CAS-Proxy Ticket. Alle Daten werden dabei diesem einem Benutzer geordnet.
  • Authentifizierung eines einzelnen Benutzers mit Hilfe von Benutzername und Passwort. Alle Daten werden dabei diesem einem Benutzer geordnet.

Abrufen von Informationen

Über einen GET-Request an xml/event/7829387 kann man die Daten eines Objekts abrufen. Zurückgeliefert wird ein Dokument wie dieses:

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://gedbas4all.genealogy.net/sw/">
  <Event rdf:about="http://localhost:8508/gedbas4all/xml/event/7829387" place="Neumühlen-Dietrichsdorf">
    <type rdf:resource="http://gedbas4all.genealogy.net/sw/event/birth" />
    <date><rdf:Description>
        <calendar rdf:resource="http://gedbas4all.genealogy.net/sw/Calendar#gregorian" />
        <certainty rdf:resource="http://gedbas4all.genealogy.net/sw/Certainty#exact" />
        <certainty rdf:resource="http://gedbas4all.genealogy.net/sw/DateType#point" />
        <start><rdf:Description>
            <normalized>2413581</normalized>
            <datePart><rdf:Description><type rdf:resource="http://gedbas4all.genealogy.net/sw/date/year"/><value>1896</value></rdf:Description></datePart>
            <datePart><rdf:Description><type rdf:resource="http://gedbas4all.genealogy.net/sw/date/month" /><value>1</value></rdf:Description></datePart>
            <datePart><rdf:Description><type rdf:resource="http://gedbas4all.genealogy.net/sw/date/day" /><value>22</value></rdf:Description></datePart>
        </rdf:Description></start>
    </rdf:Description></date>
  </Event>
</rdf:RDF>