Mejoras en el esquema del foro de discusión

Permítanme escribir pseudocódigo para la verificación actual que se muestra en la Consola de Búsqueda. Creo que eso ayudará mucho en estos hilos. Podría enviarles ShEx o SHACL, pero esos son mucho menos legibles para los humanos.

    si no (IsDeletedContent() O IsExternalContent())
       entonces si no ("text" O "articleBody" O "sharedContent" O "image" o "video")
         entonces report(OneOfThreeRequired("text", "image", "video"))
    si no ("author")
       entonces Report(Required("author"))
    si no ("datePublished")
       entonces Report(Required("datePublished")

La idea es que si el DiscussionForumPosting/OP tiene su contenido en la página actual, debería haber algún tipo de campo de contenido.

Si el DiscussionForumPosting hace referencia a contenido en una página diferente (como en la página original de contenido multipágina), puede tener solo un marcador de posición que contenga lo que sea (como el título del tema del OP) y luego hacer referencia a la URL de la primera página. Esa es la verificación IsExternalContent(), que simplemente comprueba si la URL es diferente de la URL de la página.

El segundo ejemplo en nuestra documentación supuestamente modelaba exactamente este caso (la página 14 hace referencia a una publicación de marcador de posición de la primera página).

author y date son actualmente obligatorios en cualquier caso en nuestras reglas de validación. Eso es principalmente para evitar un salto adicional para encontrar estos datos. Al menos podría ver lo útil que sería saber la fecha del OP para comprender cuán desactualizado está el comentario. ¿Puede simplemente agregar elementos meta con esos datos? No me preocupaban tanto esos campos en cuanto a inflar la página con datos redundantes.

7 Me gusta