2012-10-12 18 views
9

Wiele blogów używa pojęcia "tagi" i "kategorie", aby dodać metadane do postu. Jaka jest najlepsza praktyka znaczników semantycznych dla tych informacji, tak aby komputer czytający post na blogu mógł łatwo zidentyfikować tagi?Znaczniki semantyczne HTML5 dla znaczników i kategorii postów na blogu

Obecnie dodajemy "tag" do atrybutu rel na łączu, np.

<a rel="tag" class="tag" href="/tags.html#site-configuration">#site-configuration</a> 

Przypuszczam, można użyć formatu HTML Dublin Core dla słowa kluczowego:

<meta name = "DC.Subject" 
      content = "site-configuration"> 

i dodać do nagłówka strony, meta tagi lub może iść w organizmie? Czy jedna lub druga jest lepsza, czy też całkowicie inna opcja?

Czy istnieje lepsza strategia w zakresie zapewniania precyzyjnych i wystandaryzowanych definicji treści?

Czy HTML5 jest rozsądnym wyborem, jeśli chcę być tak wybredny w kwestii metadanych, czy powinienem używać dokumentu XML?

Jakie są plusy i minusy różnych podejść?

+0

'' może być preferowane, ponieważ nie sądzę, że DC.Subject jest poprawny html5. Nie wiem, jakie byłyby właściwe atrybuty dla "kategorii" (tj. Nie ma atrybutu "rel =" category "' w standardzie html5 (?)) – cboettig

+0

XHTML5 będzie korzystny, gdy użyjesz grddl lub xslt, jak to często bywa z bogatą treścią semantyczną. –

Odpowiedz

13

Pierwszy krok to polegać na uzyskaniu semantycznego odpowiednika prostego kodu HTML. W przypadku (X) HTML5 powinieneś zbudować odpowiedni konspekt przy użyciu elementów treści przekroju section, article, aside i nav i użyć header i footer do oddzielenia treści metadanych od głównej treści; także myśl o semantyce inline, jak time (data publikacji), dfn (definicje), abbr (skróty/akronimy) itp. I użyj wartości meta - name i rel, które są zdefiniowane w specyfikacji.

drugi etap byłoby skorzystać metadanych wartości, które nie są zdefiniowane w specyfikacji atrybutów, ale są zarejestrowane w określonych miejscach (tak, że są ważne do użytku), jak name keywords for meta elements i rel values for a/area/link elements.

Trzeci krok polegałby na poprawieniu znaczników za pomocą semantycznych, odczytywalnych maszynowo adnotacji. Istnieje three common ways to do this:

  • Mikroformaty (za pomocą predefiniowanych class i rel wartości)
  • RDFa (za pomocą cech i URI)
  • Mikrodane (za pomocą cech i URI)

RDFa MICRODATA są podobne (zarówno rozszerzalne, jak i złożone), a Microformats jest prostsze (ale nie tak ekspresyjne/rozszerzalne). Napisałem o programach short answer o różnicach i bardziej szczegółową odpowiedź na temat differences between Microdata and RDFa.

W przypadku RDFa lub Microdata, twoim głównym zadaniem będzie znalezienie słowników/ontologii, które są w stanie opisać/sklasyfikować twoje treści.Takie słownictwo może tworzyć każdy (można nawet samemu go stworzyć), ale często zaleca się stosowanie znanych lub popularnych, na przykład, aby wyszukiwarki korzystały z twoich adnotacji (popularny przykład: Schema.org).

W przypadku mikroformatów trzeba znaleźć mikroformat (na stronie wiki at microformats.org), który będzie odpowiadał Twoim potrzebom. Jeśli nie ma żadnej dla twojej sprawy, możesz zaproponować nowy mikroformat (ale to zajmie trochę czasu, zanim zostanie "zaakceptowany", jeśli w ogóle).


Czy HTML5 to rozsądny wybór, jeśli chcę być tak wybredna metadanych, czy mam być przy użyciu doctype XML?

Można również użyć XHTML5, jeśli potrzebujesz/potrzebujesz obsługi XML. Jeśli "tylko" użyjesz (X) HTML zdefiniowanego w specyfikacji i żadnych dodatkowych schematów/słowników XML, nie będzie to miało znaczenia z perspektywy semantycznej, jeśli użyjesz HTML (5) lub XHTML (5).

+0

Świetna odpowiedź, dzięki. Wygląda na to, że używanie standardowego atrybutu "klasa" na znaczniku HTML (takim jak link) jest przykładem "mikroformatu". Czy to prawda, że ​​używasz również atrybutu "rel"? Link wiki, który podasz, definiuje ['rel =" tag "] (http://microformats.org/wiki/rel-tag) i [' rel = "category" '] (http://microformats.org/wiki/ rel-category) jako "mikroformaty". Czy tagi HTML5, takie jak

i
, są uważane za mikroformaty? Wygląda na to, że mają o wiele silniej wpisane znaczenie niż coś takiego jak '

, mimo że nie ma wyraźnej przestrzeni nazw – cboettig

+0

W szczególności, czy istnieje jakaś przewaga między definiowaniem słowa kluczowego przy użyciu standardu HTML5 'a Dublin Core' w porównaniu do RDF w jaki sposób by to było? – cboettig

+0

@cboettig: Tak, niektóre mikroformaty również używają wartości 'rel' (dodałem ją do mojej odpowiedzi). Zwróć uwagę, że jest to tylko "mikroformat", jeśli jest określone w wiki of microformats.org. Zatem wszystkie wartości 'class' /' rel' zdefiniowane w innych miejscach nie są mikroformatami. Zauważ również, że 'rel' value" 'tag'" jest zdefiniowany w HTML5 * i * również w mikroformatach - a definicje nieco się różnią. Elementy HTML (takie jak 'footer') nigdy nie mogą być mikroformatami. microformats definiuje sposób "klasyfikowania" treści elementów HTML za pomocą tych wstępnie zdefiniowanych wartości dla atrybutów 'class' /' rel'. To tylko konwencja. – unor

Powiązane problemy