phpgedview under the hood pgv
Skip this Video
Download Presentation
PhpGedView Under the Hood PGV-- 新的起點

Loading in 2 Seconds...

play fullscreen
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 新系統間的整合集成