Phpgedview under the hood pgv
1 / 16

PhpGedView Under the Hood PGV-- ???? - PowerPoint PPT Presentation

  • Uploaded on

PhpGedView Under the Hood PGV-- 新的起點. A technical overview of PhpGedView 技术概述 By John Finlay PGV Founder and Project Manager PGV 創始人和項目經理 編者注: John Finlay 先生 原意親自出席南京會議,後因故未能前來, 但還是與大會配合,安排特定時間用遠程視頻通信方式,和與會技術人員 直接對話,講解 PGV 系統,並即席解答問題。 因本文集編輯時間倉促,我們來不及向 John Finlay 先生另約文稿,

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'PhpGedView Under the Hood PGV-- ????' - elaina

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Phpgedview under the hood pgv

PhpGedView Under the HoodPGV--新的起點

A technical overview of PhpGedView 技术概述

By John Finlay

PGV Founder and Project Manager PGV創始人和項目經理

編者注:John Finlay先生 原意親自出席南京會議,後因故未能前來,



因本文集編輯時間倉促,我們來不及向John Finlay先生另約文稿,

只好把他講解用的PPT 做了中譯,轉換為DOC文本登載。

Pgv origins
PGV Origins 起源

  • Early 2002 looking for a simple way to take a GEDCOM file and create a genealogical website

  • 2002年初,為尋找一種簡單的方法去處理GEDCOM文件,並創建一個家譜網站

  • Previous Standard was static HTML files (maintenance mess)

  • 以往的做法是用靜態的HTML文件實現(缺點是維護困難)

  • So PGV began as an experiment to see if it was practical to have a GEDCOM be the data source for a dynamically generated website

  • PGV開始作為一個實驗,探索以GEDCOM為數據源建成動態網站的可能性

Platform 平台

  • PHP – for ubiquity and ease of deployment

  • PHP - 普遍性和易於開發

  • Open Source – help the broad community, and genealogists expect things to be free

  • 開源 – 滿足社會大眾和譜牒學界能有免費軟件使用的期望

  • As demand grew so did the need for a database backend which allowed for complicated searching and queries

  • 隨著需求的增長,對後台數據庫的要求將隨之增多,以滿足複雜的搜索和查詢的要求

Features 特性

  • Produces just about every genealogical chart used today生成幾乎所有當今使用的家譜圖表

  • Easily navigate your family tree

  • 很容易輕鬆地瀏覽你的家庭樹

  • Supports over 25 languages and alternate dates and calendars

  • 支持超過 25種語言和多種日期格式

  • Online editing and collaboration features to enable families to work together

  • 在線編輯和協作功能,使家庭成員能共同操作

  • Advanced privacy settings give you fine-grained control over editing and viewing

  • 高級隱私的設置,使其可被精細地控制,編輯和查看

Advantages of pgv
Advantages of PGV 優點

  • Does not lose any data in translation from GEDCOM

  • 不丟失從 GEDCOM中的任何數據

  • Supports multiple databases

  • 支持多種數據庫

  • Supports very complicated genealogical data

  • 支持非常複雜的家譜資料

Data model
Data Model 數據模型

  • The data model is based on the GEDCOM data model.

  • PGV的數據模型是基於GEDCOM上的數據模型。

  • Person-centric 以人為本

  • Lineage-linked 譜系掛鉤

  • Diagrams of the GEDOCM 5.5 data model can be seen at the following URLs:

  • GEDCOM5.5 數據模型圖可以在以下網址找到:



Simplified view of data model
Simplified View of Data Model數據模型的簡化視圖





Child Families


One-to-many relationships





Simple code example php
Simple Code Example 簡單的 PHP源碼例子




print_header('My Page Title');

$person = Person::getInstance('I1');

print '<h2>'.$person->getFullName()."</h2>\n";

print $factarray['BIRT'].': ';

print $person->getBirthDate()->Display();

print ' '.$person->getBirthPlace()."<br />\n";



Developer resources
Developer Resources 開發資源

  • Many developer resources are available on the wiki here:

  • 許多開發資源可以在這裡找到:



  • PGV provides support for customizable themes

  • PGV支持自定義主題Modifiable through CSS and/or PHP

  • 通過 CSS和/或PHP修改

  • Some details on the wiki for modifying your theme can be found here:

  • 修改主題的一些細節,可以在這裡找到:



  • PGV allows for third-party plugins or modules

  • PGV允許第三方插件或模塊The module structure is similar to that for other PHP CMS systems such as PHPNuke.

  • 模塊結構類似其他PHP CMS系統如PHPNuke。Documentation on how to create your own module can be found online at:

  • 有關如何創建自己的模塊的文檔可以在這裡找到:

Web services
Web Services網上服務

  • PGV includes both a REST and a SOAP based web service

  • PGV支持REST,SOAP Web上服務

  • The REST web service is used by the GDBI project for remote access

  • GDBI項目利用REST Web服務實現遠程編輯。

  • Add data is exposed as GEDCOM

  • Web服務以GEDCOM向客戶端返回數據

GEDCOM 家譜數據編碼

  • You won’t be in PGV long before you meet up with GEDCOM

  • PGV的數據以 GEDCOM格式表現

  • GEnealogical Data COMmunication

  • GEDCOM的全稱是家譜數據通信

  • An encoding format for genealogical data


  • Find out all of the technical details about GE

  • 有關GEDCOM的技術細節可從下列網站找到


Gedcom parsers
GEDCOM Parsers解析器

  • If you work with the web services or the raw PGV database, you will need a GEDCOM parser

  • 通過 Web服務器或直接訪問PGV數據庫,

  • 你需要GEDCOM分析器JavaGedcom

  • PhpGedcom – Coming Soon to PGV!

  • PhpGedcom – 趕快進來使用 PGV


  • Performance with Large Datasets ( > 10000 Individuals)

  • 能在大型數據集下操作(>10000個人)

  • Complicated / outdated code base

  • 複雜/過期的源碼

  • Time – completely volunteer developers mean that time is the biggest challenge

  • 時間 - 完全志願的開發者,最需要的是時間。

Future development
Future Development未來發展

  • Build on a framework such as CakePHP or Symphony Completely OOP

  • 利用 CakePHP 或 Symphony 框架完成OOP構建。

  • Rewrite Module system to allow for administrative management

  • 重寫允許後台管理的模塊系統

  • AJAX everywhere AJAX的無處不在Click to edit/add 單擊實現編輯/添加

  • New Family Search Integration

  • 與Family 新系統間的整合集成