XForms/命名約定
以下是用於本華夏公益教科書的一些命名約定。這些命名約定旨在跨示例程式保持一致,使我們的學生能夠從示例程式中複製貼上程式碼塊,只需最少的重新格式化。因此,即使在 XForms 資料元素上新增 xf: 字首可能有點煩人,但它確實讓學生可以輕鬆地從示例中快速構建新的應用程式。
這些材料的大部分受眾是將紙質表格轉換為電子表格的州和聯邦機構。因此,我們傾向於使用這些組織使用的 XML 命名和設計指南。由於這些標準是圍繞 ISO/IEC-11179 和其他 ebXML 標準構建的,所以對於大多數商業開發人員來說,它們應該不會太陌生。
有超過 150 個“命名和設計規則”指南,但我們不需要全部使用它們。討論這些指南的網站是 元件組織和註冊環境 網站。
以下是一些入門指南
縮排
[edit | edit source]請使用三個空格字元來縮排示例。MediaWiki 不允許我們設定製表位,預設情況下它們是 8 個字元。
將 XML 程式碼包裝在原始碼標籤中
[edit | edit source]請將所有示例 XML 程式碼用帶有 lang="xml" 屬性的 source 標籤括起來,如下所示
<syntaxhighlight lang="xml"> ....your XML code here... </syntaxhighlight>
名稱空間標準
[edit | edit source]名稱空間是當今 XForms 的核心,對於我們的示例在大量不同平臺上執行至關重要。請花一些時間認真思考名稱空間和名稱空間字首。
請在示例的開頭使用以下模板
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:ev="http://www.w3.org/2001/xml-events"> <head> ...
注意,第一行
xmlns="http://www.w3.org/1999/xhtml"
表示該檔案使用 XHTML 作為其預設名稱空間。所有沒有名稱空間字首的標籤預設情況下都是 xhtml 名稱空間中的元素。
我們認為將示例保留在這個預設名稱空間中將使學生更熟悉 XHTML,並更容易使用 XForms。<h1>、<p>、<b> 和 <i> 等標準標籤可以在我們所有示例中自由使用。
您可以在 <html> 標籤之前可選地新增 XML 處理指令
<?xml version="1.0" encoding="UTF-8"?>
但大多數 XForms 系統不需要這個。任何副檔名為“.xhtml”的檔案都隱含地表示它是一個 XML 檔案。
關於 DOCTYPE 的警告
[edit | edit source]請不要在 xhtml1-strict.dtd 的標題中放置 !DOCTYPE 標籤。這明確指出該檔案 ONLY 包含 XHTML,並且大多數系統在看到此標籤時將不允許 XForms 標籤。許多示例程式都有這個標籤,應該將其刪除以使其正確。
XForms 播放器特定標記
[edit | edit source]請不要在示例中放置任何播放器特定的標記。本書是關於 W3C 標準,特別是 XForms、CSS、XML Schema 和 XHTML。這些示例不應需要特定客戶端表單播放器的實現。如果您正在使用需要特殊 HTML 標籤的特定播放器,可以使用 XML 轉換由 Web 應用程式伺服器自動插入它們。這樣可以使這些示例在各種課堂環境中以及大量伺服器和客戶端 XForms 播放器中使用。
有關一般模板,請參見 XForms/Template
有關播放器特定說明,請參見 Player Specific Instructions。
示例程式命名約定列表
[edit | edit source]- 對 HTML、XForms 控制元件和資料使用單獨的名稱空間。
- 為 HTML 提供預設名稱空間。這使得將現有 XHTML 程式碼包含到示例中變得容易。
- 如果無法為 HTML 提供預設名稱空間,請為其提供一個簡短的名稱空間字首,例如“h”。
- 對 XForm 元素使用“xf”名稱空間字首。我發現大約 3/4 的示例已經使用了它,但有些示例使用了完整的“xform”或“xforms”字首。我建議避免混淆,只使用“xf”,因為它簡短且已經普遍使用。
美國州和聯邦機構示例
[edit | edit source]我們希望許多美國州和聯邦機構能夠將這些材料整合到他們的培訓計劃中。對於 XForms 來說,這是一個重要的受眾,因為許多 XForms 標準是由不允許在其桌面上執行 JavaScript 的安全原因的機構推動的。
我們用於大多數聯邦資料模型示例的名稱空間是 NIEM。名稱空間字首是“u”,代表“Universal”資料元素,用於地址、聯絡方式、活動、文件、組織、人員等。NIEM 還提供了一個非常好的子模式生成器,它與構建表單的過程非常有效。有關更多資訊,請訪問 niem.gov 網站。如果您對 NIEM 工具以外的任何更好的工具有任何建議,請告訴我們。