2016-08-09 28 views
1

Ich versuche, meine Website durch schemas semantischen Markup hinzuzufügen. Ich möchte die Dienstleistungen eines Hotels auflisten, also schaue ich mir die LocationFeatureSpecification an. Ich habe das folgende Beispiel, das eine Liste der Hotel Features ist:Warum ist es notwendig, in diesem 'LocationFeatureSpecification'-Element einen' Wert 'anzugeben?

<ul> 
<li itemprop="amenityFeature" itemscope itemtype="http://schema.org/LocationFeatureSpecification"> 
<span itemprop="name">Sauna</span> 
<meta itemprop="value" content="True"> 
</li> 
<li itemprop="amenityFeature" itemscope itemtype="http://schema.org/LocationFeatureSpecification"> 
<span itemprop="name">Gym</span> 
<meta itemprop="value" content="True"> 
</li> 
</ul> 

Also meine Frage ist, warum ist ein value hier notwendig? Kann es weggelassen werden, einen Standard "wahren" Wert zu implizieren?

Auch möchte ich Informationen darüber geben, ob der Dienst kostenlos oder bezahlt (ohne Angabe von Betrag) ist. Wie kann ich tun, dass mit dieser Eigenschaft, wenn its description clearly states:

Diese allgemeine Eigenschaft keine Aussage darüber, ob die Funktion in einem Angebot für die Haupt Unterkunft oder gegen Mehrkosten enthalten ist.

+0

Möglicherweise gibt es ein anderes Problem hier. Google SDTT scheint "amenityFeature" nicht ordnungsgemäß als Eigenschaft von "@ Place" zu behandeln. @unor ist hier die Autorität, und wir wollen vielleicht warten, bis er sich darauf einlässt. Nebenbei ist die Definition "" optional. Wenn Sie Preisinformationen markieren möchten, müssen Sie '@ Offer' verwenden. Das Angebot hat flexible Bedingungen, um den Preis auszudrücken. –

+0

danke für deine Antwort, jetzt frage ich mich, was ist, wenn schema.org eine bestimmte Spezifikation hat und Google SDTT hat eine andere? welchen solltest du benutzen? aber ich denke, das sollte als eine andere Frage geschrieben werden ... – ithil

+0

Die Begriffe 'amenityFeature' /' LocationFeatureSpecification'/etc. sind nur zwei Tage alt, und Google SDTT braucht in der Regel einige Zeit, bis sie neue Begriffe erkennen. - Wenn Google beschließt, eine ähnliche Suchfunktion anzubieten (z. B. ein Hotel Rich Snippet anzuzeigen), entspricht es idealerweise der Definition in Schema.org. Ansonsten, was ist der Sinn von Schema.org? Und sie sind schließlich ein Schema.org-Sponsor. Aber Google würde natürlich bestimmte Eigenschaften/Typen benötigen - Schema.org sagt "Du kannst das verwenden", Google sagt "Du musst dies und das verwenden, wenn du unsere Funktion haben willst" – unor

Antwort

1

Sie können die value property weglassen, genauso wie Sie jede andere Eigenschaft weglassen können, da Schema.org keine benötigt.

Es ist nicht explizit definiert, wie ein LocationFeatureSpecification ohne value sollte interpretiert werden (das heißt, es gibt keinen „default“ Wert definiert), aber ich denke, es denkbar ist, dass die Verbraucher hat es als Funktion der Lage interpretiert.
Aber es ist natürlich auch möglich, dass einige Verbraucher die value Eigenschaft benötigen, also wenn Sie auf der sicheren Seite sein möchten, möchten Sie value sogar für den Fall bereitstellen, dass sein Wert true ist. Wenn Sie viele Annehmlichkeitsmerkmale haben, können Sie Microdatas itemref Attribut verwenden: stellen Sie nur ein meta Element zur Verfügung und verweisen Sie es von allen LocationFeatureSpecification Einzelteilen (example).

Es scheint keine Möglichkeit zu geben, explizit anzugeben, welche Amenity-Funktion kostenlos/inklusive oder nicht-gratis/optional ist. Sie können erstellen Offer Elemente für die entsprechenden Merkmale, wie die Schema.org Hotels documentation schlagen vor:

für die Gebühren von optionalen Raumfunktionen Modellierung, können Sie die offer für den Raum auf ein Angebot für die Funktion oder Dienstleistung über die addOn Eigenschaft verlinken .