ディスカッションフォーラム スキーマの改善

Search Console に表示されている現在のチェックの擬似コードを記述させてください。これらのスレッドで非常に役立つと思います。ShEx または SHACL をお送りすることもできますが、それらは人間が読みにくいものです。

    if not (IsDeletedContent() OR IsExternalContent())
       then if not ("text" OR "articleBody" OR "sharedContent" OR "image" or "video")
         then report(OneOfThreeRequired("text", "image", "video"))
    if not ("author")
       then Report(Required("author"))
    if not("datePublished")
       then Report(Required("datePublished")

アイデアは、DiscussionForumPosting/OP が現在のページにコンテンツを持っている場合、何らかのコンテンツフィールドが必要であるということです。

DiscussionForumPosting が別のページ (マルチページ コンテンツの元のページなど) のコンテンツを参照している場合、スタブ (OP のトピック タイトルなど) を保持し、最初のページの URL を参照するだけで済みます。これは IsExternalContent() チェックであり、url != page URL であるかどうかを確認するだけです。

ドキュメントの 2 番目の例は、このケース (14 ページ目が最初のページのスタブ投稿を参照する) を正確にモデル化することを目的としていました。

author および date は、現在のところ、検証ルールで常に必須です。これは主に、このデータを見つけるための追加のホップを防ぐためです。OP の日付を知ることが、コメントがどれだけ古いかを理解するのに役立つことがわかります。そのデータを含むメタ要素をそこに追加できますか? 重複データでページを肥大化させることに関しては、それらのフィールドほど心配していませんでした。

「いいね!」 7