2013-06-01 33 views

回答

2

我個人建議忽視/避免使用rel和一下,他們是不是真的有必要,如果你按照經驗法則來寫RDFa的你不應該試圖通過在給定的HTML元素中填充儘可能多的屬性來實現太聰明。出於向後兼容性的原因。然而,來自1.1的其他屬性值得學習:內容和數據類型。

2

由於這些原因,斯蒂芬的建議基本符合RDF Lite 1.1,其中不包括@rel@about

另一個很好的經驗法則是不要嘗試在給定元素上包含多個實體的標記,這通常是指定圖像許可證的示例。

@property@rel兩者非常相似,但在RDFa 1.0中有不同的用途,但這是令人困惑的,即使是專家也是如此。 (以前,@rel用於指定其他節點的對象,@property用於指定文字值。雖然還有一些差異,但堅持非巧妙的標記,您可以使用@property完成所有工作,您可以使用@rel

同樣,@about可避免只使用@resource。不同的是,@about設置當前主題和@resource當前對象,但對於子節點parent object(從父母的current object拍攝成爲current subject。有另一有關@typeof存在的細微差異,但如果您只使用@resource,它幾乎做你想要的。

從RDFa的精簡版1.1總結最佳實踐,您還可以檢查出RDFa 1.1 Primer

  • 堅持@vocab@prefix@property@resource@typeof
  • 避免在製出一個以上的語句給定元素
+1

感謝您的信息,但:「雖然還有一些差異......」&「還有一些細微的區別...」;你能否詳細說明一下? –

+0

主要區別在於\ @property有或沒有\ @rel的行爲。如果沒有\ @rel,則可以將\ @property用於資源或文字。在1.0 \ @屬性只適用於文字。如果存在\ @about和@typeof,也有不同之處,主要是爲了滿足開發人員的期望。有些差異記錄在[規範]中(http://www.w3.org/TR/rdfa-syntax/#major-differences-with-rdfa-syntax-1.0)。主要建議是避免在單個元素上混合標記。有關建議的模式,請參見[RDFa Lite](http://www.w3.org/TR/rdfa-lite/)。 –

2

propertyrel

這兩個屬性均表示三元組的例如謂詞rel="http://purl.org/dc/terms/creator,這是謂詞... has as a creator: ...

區別在於,他們從哪裏拿到他們的對象。稍微簡化一下,property的規則是:該對象被拍攝...

    從有效 content屬性
  • 或,如果這是不存在於標籤,
  • (如果沒有datatype attr爲存在於來自有效resource屬性標籤:),或者,如果這不存在於標籤,
  • (如果沒有datatype attr爲存在於來自有效href屬性標籤:),或者如果這是不存在於標籤,
  • (如果沒有datatype attr爲存在於從標籤:)一個有效的src屬性,或者,如果這不在標籤中,
  • 來自由標籤啓動的元素的內部內容。

略微簡化的,rel不同在兩個方面:

  • 它需要它的對象只由resourcehrefsrc屬性。
  • 它不僅從同一個標記的屬性中獲取其對象,還可以從後代標記中獲取它的對象。整個機制被稱爲「鏈接」:「這是@property和@rel之間的主要區別:後者引發鏈接,而前者通常不會。」 1通常,但如果與typeof(參見2)一起使用,則property可以誘發鏈接。

aboutresource VS:

about是指示受試者的三重的的屬性。 resource的規則更加複雜:它可能表示一個主題或一個對象,並且鏈接也在這裏起作用。鏈接是RDFa中最複雜和最混亂的部分(並且不會給你比語法糖更多的東西)。我會避免鏈接。這可以通過避免屬性rel,rev,resourcetypeof來實現,這會同時帶來一些進一步的簡化。因此,我只使用以下屬性:

  • about受試者
  • property謂詞
  • contenthrefsrc(或元件的內含量)爲對象,遵循上述規則
  • lang針對對象文字的語言標記,例如lang="en"
  • datatype用於對象常量
  • prefix(但僅在文檔中一次),這樣我可以通過前綴縮寫網址,例如一個數據類型標籤property="dc:creator"
  • vocab(在文檔中很少和最多一次),以便我可以隱式地縮寫URL,例如, property="creator"

(我使用標籤<base href="...">指示文檔的URL基值)。

這是一個嚴謹,安全,易於使用和易於解析的RDFa的子集,允許表達你想要的任何三元組。

相關問題