我將盡我所能解決您的原始問題。總的來說,subjectScheme專業化旨在創建主題分類和受控值。它定義了可用於檢索的主題分類以及定義和控制屬性值。目前,DITA-OT僅在屬性的受控值區域提供功能。
問題:「它可以用來表示元數據元素還是唯一的元數據屬性」?
答:我不會說它的目的是「代表元素或屬性」。它旨在表示科目和受控值。它的設計基於鍵,因此大量使用屬性。
問題:如果你想添加一個屬性值的定義,你在哪裏做?
答:您有這樣幾種選擇:
- 您可以創建一個描述對象或屬性值相關的話題。您可以使用subjectdef元素上的@href屬性引用此主題。這對於提供共識定義或有關何時使用條件處理值的信息特別有用。
- 您可以在subjectdef元素中嵌套topicmeta元素;在topicmeta元素中,您可以訪問shortdesc和navtitle元素。
- 您將內容添加到subjectdef元素上的@navtitle屬性。我不會推薦這個,因爲@navtitle屬性已被棄用,通常不能被翻譯。
問題:您可以使用subjectScheme專業化和元數據元素嗎?
答案:是的。把我的頭頂部,這裏是一個直接的可能性,並設計一個基於HTML的輸出格式:
- 對於一個特定的主題,一個topicmeta元素添加到subjectdef元素。在topicmeta元素中,您可以完全訪問所有元數據元素。根據需要添加儘可能多的元數據元素。
- 將DITA主題與相關主題相關聯。這可以通過使用特定的屬性和值,或使用分類域中的subjectref元素來完成。
- 調整輸出處理,以便與主題相關聯的每個DITA主題都將元數據寫入HTML,就像元數據元素位於DITA主題本身中一樣。通過這種設計,您可以實施一致性,並且由於基於密鑰的體系結構,易於維護和抽象層。
問題:你能發表專題方案嗎?
答:是的,如果主題使用@href屬性subjectdef元素引用。雖然默認情況下,subjectScheme元素的@ processing-role屬性設置爲「僅資源」,並且@toc屬性設置爲「no」,但您可以修改這些值,並且它們將在整個地圖中級聯,使其成爲可能生成輸出。當然,這只是目前使用DITA-OT所能做的。通過定製處理實現,可能性是無限的。
我認爲subjectScheme地圖和分類域提供了許多令人興奮的可能性,包括分面和過濾瀏覽(用於輸出)和分面搜索(用於DITA源代碼)。
我希望那些構建使用subjectScheme和分類的實現的人們將分享故事,演示他們的實現等等。我認爲這會使DITA體系結構的這部分更清晰,更容易被人們接受。
我想你有點誤解了我。特別是,我沒有問你是否可以使用subjectScheme和元數據元素,就像你解釋它一樣。我的意思是如果你可以用它來表示元數據元素(而不是屬性)。你說這不是特別的。我的意思是,你可以使用它,例如在Oxygen中,獲取預定義的屬性值列表。我希望元數據元素也一樣。但是,也許這隻取決於供應商的實施......不過,您仍然有一些非常有趣的觀點,並且我喜歡您對發佈的看法(續) – Anders 2013-03-11 01:15:25
(接上一段評論)因此,對於我來說,如果您可以使用例如。 DITA OT(OOTB?),並且您可以通過主題引用來包含定義,這與我所期望的接近。但事情是,我看到更好的東西(在我的腦海中)的潛力,但並不完全。我希望能夠方便地直接在subjectScheme中添加定義,然後,如果供應商支持將它用於預定義元素值以及方案的方便編輯格式,則它可以作爲便捷的分類工具工作,用於創建分類並且能夠發佈其文檔... – Anders 2013-03-11 01:19:11
@Anders,您可以使用subjectScheme來定義屬性的受控值。因爲屬性採用CDATA。元素的潛在內容是寬鬆的,因此不是枚舉列表中可以容納的內容。 – 2013-03-11 02:34:19