SourceForge Logo

 

Neuigkeiten


Über PGV


Leistungs-
 merkmale



Nutzer von PhpGedView


Presse


Download


Dokumentation
 - Installation
 - Upgrade
 - MultiMedia
 - Readme *
 - Privacy
 - Entwickler *


FAQ *


Support


Änderungen *


Style Hilfe


Edit Online


PGV & NUKE Module


Spenden

* Achtung! Links, die mit * markiert sind, führen zu originalen englischen Seiten. Benutzen Sie anschließend immer den "zurück"-Knopf Ihres Browsers, um wieder auf die deutschen Seiten zu gelangen.
Rote Links zeigen an, dass die englische Original-Version ein neueres Datum hat, als die deutsche Übersetzung

 
  CGI GEDCOM Access Protokoll v3.2
Inhaltsverzeichnis
  1. Einleitung
  2. Befehlsliste
    1. version
    2. listgedcoms
    3. connect
    4. get
    5. getxref
    6. getvar
    7. update
    8. append
    9. delete
    10. getnext
    11. getprev
    12. search
    13. soundex
    14. uploadmedia
  3. Kommunikations-Beispiel
  4. Fehlermeldungen

Einleitung
Mit dem CGI-Protokoll für den GEDCOM-Zugang steht ein Werkzeug zur Verfügung, mit dem Remote Clients auf in PhpGedView gespeicherte genealogische Daten zugreifen und sie verändern können. Dieses Dokument beschreibt das Protokoll, das Remote Clients benutzen, um mit PhpGedView 3.2 zu kommunizieren.

Ein Client kommuniziert über POST- und GET-Anfragen an PhpGedView über die Datei "gdbi.php." Jede Anfrage muss eine "action" enthalten. Eine "action" übermittelt an PhpGedView, welche Art von Anfrage Sie stellen wollen. Die Datei "gdbi.php " antwortet mit dem String "SUCCESS" in der ersten Zeile, gefolgt von den angefragten Informationen, oder sie erhalten eine Fehlermeldung. Fehlermeldungen haben immer die folgende Form:

ERROR #: Fehlermeldung

Beispiel einer Fehlermeldung:

ERROR 1: No action specified.

Sie können die Befehle "version" und "listgedcoms" auch ohne vorherigen Verbindungsaufbau benutzen. Für alle anderen Befehle müssen Sie zuächst einmal den Befehl "connect" senden. Der Befehl "connect" benötigt einen Benutzernamen und ein Passwort, wenn Sie vollen Zugriff wünschen; andernfalls erfolgt eine anonyme Anmeldung. Eine erfolgreiche "connect action" wird mit einem Session-Namen und einer Session-ID beantwortet, die allen weiteren Anfragen hinzugefügt werden müssen. Sie können jederzeit angeben, mit welcher GEDCOM-Datei Sie arbeiten möchten, indem Sie den optionalen "ged"-Parameter mit Ihrer Anfrage schicken. Alle folgenden Anfragen werden diese GEDCOM-Datei benutzen, bis ein anderer "gedcom"-Parameter angegeben wird.

Die im Protokoll verfügbaren Befehle, ihre erforderlichen Parameter und ihre Antworten sind in der folgenden Tabelle aufgelistet.
([tab] bedeutet ein einzelnes Tabulator-Zeichen)
[Anm. d. Ü.: Von einer Übersetzung der Tabelle wurde abgesehen, da man wohl davon ausgehen kann, dass diejenigen, die mit dieser Materie vertraut sind, die Angaben auch so verstehen, und eine Übersetzung unnötig Verwirrung stiften würde.]

Befehlsliste

"version" Action Request

"version" Action Response

Get the PhpGedView version.

Required Parameters:
action=version

Sample URL:
gdbi.php?action=version

Returns the version for this installation of PhpGedView.

Successful Response:
SUCCESS
version number

Sample Response:
SUCCESS
2.65 final

 

"listgedcoms" Action Request

"listgedcoms" Action Response

Get a list of all of the gedcoms available on this server.  Could be used to allow the user to switch between gedcoms.

Required Parameters:
action=listgedcoms
sessionname=sessionid

Sample URL:
gdbi.php?action=listgedcoms
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns a tab delimited list of gedcom files and their corresponding titles.  Each gedcom is written on its own line.

Successful Response:
SUCCESS
gedcomfile1 [tab] title1
gedcomfile2 [tab] title2
...

Sample Response:
SUCCESS
surname.ged [tab] Surname Genealogy
myfamily.ged [tab] My Family History

 

"connect" Action Request

"connect" Action Response

Initiates a session with the server.

Required Parameters:
action=connect

Optional paramters:
username=username
password=password
ged=gedcom.ged
readonly=1

If no gedcom is specified with the "ged" parameter then the default gedcom defined by the PhpGedView system administrator will be used.

If no username and password are sent, then an anonymous read-only connection will be established. Any attempts to change the data will result in an error.

If the "readonly" parameter is sent, then all editing features will be disabled and they will return errors.

Sample URL:
gdbi.php?action=connect&username=admin&password=adminpass&ged=gedcom.ged
Sample Anonymous Read-only connection: gdbi.php?action=connect&ged=gedcom.ged

Returns the session name and session id for this connection.

Successful Response:
SUCCESS
sessionname [tab] sessionid

Sample Response:
SUCCESS
PHPSESSID [tab] f0c56ab7e2381cf17ce7c94135c1398b


All following actions require a connection be established before they can be used.

"get" Action Request

"get" Action Response

Get one or more gedcom records with the given "xref" ids from the gedcom file.  The "xref" parameter accepts a semicolon delimetted list of xref ids.

Required Parameters:
action=get
xref=gedcomid
sessionname=sessionid

Sample URL (single xref):
gdbi.php?action=get&xref=I100
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Sample URL (multiple xref):
gdbi.php?action=get&xref=I100;I101
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns the raw gedcom record for the given "xref".

Successful Response:
SUCCESS
gedcom records
...

Sample Response:
SUCCESS
0 @I100@ INDI
1 NAME Given Names /Surname/
1 GIVN Given Names
1 SURN Surname
1 BIRT
2 DATE 1 Jan 1900
2 PLAC New York, New York, USA
0 @I101@ INDI
1 NAME Sibling /Surname/
1 BIRT
2 DATE 1 Jan 1902
2 PLAC New York, New York, USA
...

 

"getxref" Action Request

"getxref" Action Response

Get the first, last, next, or previous xref in the given type list.  A position of "new" will create a new GEDCOM record for the given type.  A position of "all" will return a list of all

Required Parameters:
action=getxref
type=INDI|FAM|SOUR|REPO|NOTE|OBJE|OTHER
position=new|first|next|prev|last|all
xref=gedcomid
sessionname=sessionid

Sample URL: (get the first FAM)
gdbi.php?action=getxref&type=FAM&position=first
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Sample URL: (get the next INDI after I100)
gdbi.php?action=getxref&type=INDI&position=next&xref=I100
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Sample URL: (get the xref for a new FAM. See also the "append" action)
gdbi.php?action=getxref&type=FAM&position=new
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns a list of xref

Successful Response:
SUCCESS
XREF
...

Sample Response:
SUCCESS
I102
...

 

"getvar" Action Request

"getvar" Action Response

Get the value of the given global phpGedView variable.  A list of available variable names can be found in the config_gedcom.php file.

Required Parameters:
action=getvar
var=variablename
sessionname=sessionid

Sample URL:
gdbi.php?action=getvar&var=GEDCOM
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns the value of the global variable specified in "var".

Successful Response:
SUCCESS
variable value

Sample Response: (in this example the current working gedcom)
SUCCESS
surname.ged

 

"update" Action Request

"update" Action Response

Update a GEDCOM record by replacing it by the given gedcom record.

Required Parameters:
action=update
xref=gedcomid
gedrec=Raw GEDCOM Record
sessionname=sessionid

Sample URL:
gdbi.php?action=update&xref=I100
&gedrec=0 @I100@ INDI\n1 NAME New Name /Surname/\n
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns "SUCCESS".

Successful Response:
SUCCESS

Sample Response:
SUCCESS

 

"append" Action Request

"append" Action Response

Append a new GEDCOM record to this gedcom file.  (See also action=getxref&position=new)

Required Parameters:
action=append
gedrec=raw GEDCOM record
sessionname=sessionid

Sample URL:
gdbi.php?action=append&gedrec=0 @NEW@ INDI\n1 NAME New Name /Surname/\n&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns "SUCCESS" and the new xref assigned to this gedcom record.

Successful Response:
SUCCESS
XREF

Sample Response:
SUCCESS
I9999

 

"delete" Action Request

"delete" Action Response

Deletes the GEDCOM record from the file.

Required Parameters:
action=delete
xref=gedcomid
sessionname=sessionid

Sample URL:
gdbi.php?action=update&xref=I100
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns "SUCCESS".

Successful Response:
SUCCESS

Sample Response:
SUCCESS

 

"getnext" Action Request

"getnext" Action Response

Get the next gedcom record after the given "xref" from the gedcom file.

Required Parameters:
action=getnext
xref=gedcomid
sessionname=sessionid

Sample URL:
gdbi.php?action=getnext&xref=I100
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns the raw gedcom record after the given "xref".

Successful Response:
SUCCESS
gedcom record

Sample Response:
SUCCESS
0 @I99@ INDI
1 NAME Given Names /Surname/
1 GIVN Given Names
1 SURN Surname
1 BIRT
2 DATE 1 Jan 1880
2 PLAC New York, New York, USA

 

"getprev" Action Request

"getprev" Action Response

Get the previous gedcom record before the given "xref" from the gedcom file.

Required Parameters:
action=getprev
xref=gedcomid
sessionname=sessionid

Sample URL:
gdbi.php?action=getprev&xref=I100
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns the raw gedcom record before the given "xref".

Successful Response:
SUCCESS
gedcom record

Sample Response:
SUCCESS
0 @I101@ INDI
1 NAME Given Names /Surname/
1 GIVN Given Names
1 SURN Surname
1 BIRT
2 DATE 1 Jan 1920
2 PLAC New York, New York, USA

 

"search" Action Request

"search" Action Response

Use regular expressions to search gedcom INDI records.

Required Parameters:
action=search
query=keyword or expression
sessionname=sessionid

Sample URL: (search for all indis with "arizona" in their record)
gdbi.php?action=search&query=arizona
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Sample URL: (search for all indis with an event in 1900)
gdbi.php?action=search&query=DATE+.*+1900
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns a sorted list of INDI xrefs.

Successful Response:
SUCCESS
XREF
...

Sample Response:
SUCCESS
I1
I100
I102
...

 

"soundex" Action Request

"soundex" Action Response

Use soundex to search INDI names.

Required Parameters:
action=soundex
firstname=givenames
lastname=lastname
sessionname=sessionid

Sample URL: (search for indis with soundex surname matching "finlay")
gdbi.php?action=soundex&lastname=finlay
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Sample URL: (search for indis with soundex surname matching "finlay" and firstname matching "john")
gdbi.php?action=soundex&lastname=finlay&firstname=john
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

Returns a sorted list of INDI xrefs.

Successful Response:
SUCCESS
XREF
...

Sample Response:
SUCCESS
I1
I100
I102
...

 

"uploadmedia" Action Request

"uploadmedia" Action Response

Upload media files to the PhpGedView server.  You can specify either a "mediafile" a "thumbnail" or both.

Required Parameters:
action=uploadmedia
mediafile=[File Data]
thumbnail=[File Data]
sessionname=sessionid

Sample URL:
This cannot be done through a GET.  The data must be posted in Multi-part mime form data.

 

Returns a URL to the uploaded object.

Successful Response:
SUCCESS
http://www.yoursite.com/phpGedView/media/object
http://www.yoursite.com/phpGedView/media/thumbs/object

Sample Response:
SUCCESS
http://www.yoursite.com/phpGedView/media/object
 

 

 

Kommunikations-Beispiel
Hier ein Beispiel für eine Kommunikation:

CLIENT:
gdbi.php?action=connect&username=admin&password=adminpass

SERVER:
PHPSESSID [tab] f0c56ab7e2381cf17ce7c94135c1398b

CLIENT:
gdbi.php?action=getvar&var=PEDIGREE_ROOT_ID&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

SERVER:
I1

CLIENT:
gdbi.php?action=get&xref=I1&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

SERVER:
0 @I1@ INDI
1 NAME Given Names /Surname/
1 GIVN Given Names
1 SURN Surname
1 BIRT
2 DATE 1 Jan 1900
2 PLAC New York, New York, USA
1 FAMS @F1@

CLIENT:
gdbi.php?action=get&xref=F1&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

SERVER:
0 @F1@ FAM
1 HUSB @I1@
1 WIFE @I2@
1 MARR
2 DATE 13 Jun 1921
2 PLAC New York, New York, USA
1 CHIL @I3@

(Die folgenden Anfragen zeigen, wie Sie die Gedcom-Datei wechseln können)
CLIENT:
gdbi.php?action=listgedcoms&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

SERVER:
surname.ged [tab] Surname Genealogy
myfamily.ged [tab] My Family History

CLIENT: (notice the GEDCOM parameter)
gdbi.php?GEDCOM=myfamily.ged&action=getvar&var=PEDIGREE_ROOT_ID
&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

SERVER:
I103

CLIENT:
gdbi.php?action=get&xref=I103&PHPSESSID=f0c56ab7e2381cf17ce7c94135c1398b

SERVER
0 @I103@ INDI
1 NAME Given Names /Surname/
1 GIVN Given Names
1 SURN Surname
1 BIRT
2 DATE 1 Jan 1976
2 PLAC Hamburg, Germany
1 FAMS @F1@ 1 FAMS @F1@

 

Fehlermeldungen und Beschreibungen
FehlermeldungBeschreibung deutschOriginal-Beschreibung (englisch)
ERROR 1: No action specified. Sie erhalten diese Fehlermeldung, wenn kein Befehl in der URL übergeben wurde, oder die URL falsch formatiert war (Syntaxfehler) You will receive this error if no action was given on the URL. You can also receive this error if the URL is malformed.
ERROR 2: Unable to process request. Unknown action. Der übergebene Befehl ist keine gültige Aktion. You will get this error when the action supplied is not one of the valid actions.
ERROR 3: No gedcom id specified. Please specify a xref. Der übergebene Befehl erfordert einen xref-Parameter, den Sie jedoch nicht angefügt haben. You will get this error if you attempted to use an action that requires an xref parameter, but failed to supply the xref parameter on the URL.
ERROR 4: Could not find gedcom record with xref Der übergebene xref-Parameter entspricht keiner der IDs der vorhandenen Datensätze dieser Gedcom-Datei. The xref ID you specified does not match any record in this gedcom.
ERROR 5: GEDCOM file is not writable. Unable to complete request. Für die Gedcom-Datei, die Sie bearbeiten bestehen keine Schreib-Rechte. You will get this error if the appropriate write permissions have not been set on the gedcom file on the filesystem.
ERROR 6: Unable to open GEDCOM file resource. Unable to complete request. Dieser Fehler sollte nur sehr selten auftreten und zwar dann, wenn das Betriebssystem des Servers die Gedcom-Datei nicht öffnen kann. This error should be very rare and will only happen if the operating system on the server is unable to open the gedcom file for some reason.
ERROR 7: Unable to write to GEDCOM file. Dieser Fehler sollte nur sehr selten auftreten und zwar dann, wenn das Betriebssystem des Servers die Gedcom-Datei nicht schreiben kann. Ein möglicher Grund ist, dass ein anderer Benutzer die Datei geöffnet hat. This error should be very rare and will only happen if the operating system on the server is unable to write to the gedcom file. Possible reasons could be that another user on the system has the file open.
ERROR 8: No gedcom record provided. Unable to process request. Der übergebene Befehl erfordert eine komplette Gedcom-Datensatz-Angabe, aber Sie haben den Parameter 'gedrec' nicht angefügt. You will receive this error when the action requires that you provide a full gedcom record but no 'gedrec' parameter was found in the request.
ERROR 10: Username and password key failed to authenticate. Der Benutzername oder das Passwort wurden falsch eingegeben. Dies bedeutet, dass entweder das Passwort falsch war, oder der Benutzername nicht existiert. The username and password supplied for the connect command failed to authenticate. This means that the password was incorrect or the username is invalid.
ERROR 11: No write privileges for this record. Sie haben versucht einen Datensatz zu bearbeiten, für den Sie keine Editier-Rechte haben, oder Sie befinden sich im nur-lesen-Modus. You will receive this error if you try to edit a record that you don't have permission to edit, or if you try to edit in read-only mode.
ERROR 12: use 'connect' action to initiate a session. Sie haben einen Befehl gesendet, ohne vorher die Verbindung mit dem 'connect'-Befehl anzumelden. Möglicherweise haben Sie auch zu lange keine Engabe getätigt und wurden automatisch abgemeldet. You will receive this error if you try to use an action without first using the 'connect' action. You can also receive this error if your session timed out.
ERROR 13: Invalid variable specified. Please provide a variable. Sie haben mit dem 'getvar'-Befehl eine Variable abgefragt aber der Variablenname im Parameter 'var' entspricht keiner gültigen Variable. You will get this error during the 'getvar' action if the variable name supplied in the 'var' parameter is not a valid variable.
ERROR 15: No query specified. Please specify a query. Sie haben den Befehl 'search' verwendet, aber nicht den erforderlichen 'query' Parameter angegeben. This error means that you did not send a 'query' parameter with the 'search' action.
ERROR 16: No names specified. Please specify a firstname or a lastname. Sie haben den Befehl 'soundex' gesendet aber die Parameter 'firstname' und 'lastname' wurden nicht angegeben. Geben Sie wenigstens einen dieser Parameter an. You will receive this error if the 'firstname' and 'lastname' parameters are missing in the 'soundex' action.
ERROR 17: Unknown position reference. Valid values are first, last, prev, next. Zum Befehl 'getxref' haben Sie einen ungültigen Parameter 'position' hinzugefügt. Gültige Werte sind: first, last, prev, next. This error occurs when and invalid 'position' parameter was sent during the 'getxref' action.
ERROR 18: Invalid $type specification. Valid types are INDI, FAM, SOUR, REPO, NOTE, OBJE, or OTHER Sie haben den Befehl 'getxref' gesendet, aber der übergebene Parameter 'type' ist keiner der gültigen Gedcom-Typen. You will get this error in the 'getxref' action if the 'type' parameter is not one of the valid gedcom types.
ERROR 19: Upload Error Es ist ein Fehler beim Datei-Upload während des Befehls "uploadmedia" aufgetreten. You will get an ERROR 19 if an error occured during the file upload for the "uploadmedia" action.
ERROR 20: Invalid GEDCOM 5.5 format. Sie haben einen Gedcom-Datensatz hinzugefügt, der in seiner Struktur kein zulässiger Level 0 Gedcom-Datensatz ist. You will recieve this error if you supplied a gedcom record that does not have the basic structure of a level 0 gedcom record
ERROR 21: No Gedcoms available on this site. Sie haben versucht eine Verbindung zu einer PhpGedView-Seite aufzubauen, bei der (noch) keine Gedcom-Dateien importiert sind. This error occurs if you are trying to connect to a PhpGedView site that does not have any Gedcoms imported.
ERROR 22: Gedcom [$GEDCOM] needs to be imported. Sie haben versucht auf eine Gedcom-Datei zuzugreifen, die noch nicht in PhpGedView importiert wurde. This error occurs if you are trying to access a gedcom that has not yet been imported in PhpGedView.


Copyright © 2004 Mitglieder des PhpGedView Teams