View on GitHub

artsdata-data-model

Overview of how data is modelled in Artsdata.ca.

Ligne directrices d’Artsdata concernant la propriété @id et les URI locales

Malheureusement, la documentation Schema.org ne dit pas grand-chose sur la propriété « @id », ni sur la manière de générer des URI pour eux. Afin de combler ces lacunes, Artsdata a préparé les lignes directrices suivantes. Ces lignes directrices s’adressent principalement aux développeurs web.

Dans ces lignes directrices, le mot « Chose » est emprunté à la terminologie Schema (schema:Thing) afin de désigner n’importe quel objet du monde réel, tel qu’un événement, un lieu ou une personne spécifique. Il est synonyme du terme entité ( fréquemment utilisé dans la documentation d’Artsdata), dans le sens d’un objet ayant une identité.

Documentation générale sur la propriété @id

   
Type de données xsd:anyURI
Instructions La valeur doit être une URI constituant un identifiant unique pérenne pour la Chose (par exemple, une entité Event ou Place) dans le domaine du site web.
Remarque Ne renseignez pas la même URI sous @id et url.
L’URL d’une page web est l’identifiant unique pérenne de cette page web, et rien d’autre. Elle ne doit pas être utilisée pour identifier les éléments décrits sur cette page web. Dans les données structurées Schema (et dans toute autre ontologie basée sur le RDF), un « objet du monde réel » (tel qu’un événement ou un lieu) et le document web qui le décrit sont deux choses distinctes : elles méritent chacune leur propre URI.

Faites défiler vers le bas afin d’apprendre comment générer des URI fonctionnels.

Avantages d’utiliser @id pour attribuer des URI aux Choses

How to generate a functional URI

Aux fins de l’identification d’une Chose, une URI est fonctionnelle si elle identifie de manière univoque un seul objet du monde réel ET si cet objet du monde réel n’est associé qu’à une seule URI au sein du domaine web. En d’autres termes, la cardinalité entre l’URI et la Chose doit être biunivoque (“one-to-one”). Bien qu’il soit préférable que l’URI renvoie à une représentation (HTML, JSON-LD ou autre) de la Chose qu’elle désigne, Artsdata peut utiliser n’importe quel type d’URI fonctionnelle pour se référer à des Choses externes, même si ces URI mènent à des réponses « 404 non-trouvé ».

URI croisillons basées sur une page web

Remarque : cette méthode peut ne pas convenir aux sites web avec négociation linguistique ou avec un contenu dynamique.

Exemples d’URI croisillons basées sur une page web

Voici quelques exemples d’utilisations incorrectes et correctes d’URI dérivées d’URL de pages webs :

Exemple Adéquation en tant qu’URI

"@id": "https://someorg.ca/events/eventname/"

(Où la valeur est la même que celle de la page URL, sans identificateur de fragment)
Erreur critique
Les valeurs « @id » et « url » ne devraient pas être pareils

"@id": "https://someorg.ca/events/eventname/"
(Où la valeur est la même que celle de la page URL, sans identificateur de fragment)
Erreur critique
Les valeurs « @id » et « url » ne devraient pas être pareils

"@id": "https://someorg.ca/events/eventname/#event"

(Où le même identificateur de fragment est utilisé pour toutes entités du même type.)
Bon
Remarque : cette convention de nommage est simple et facile à mettre en œuvre. Cependant, elle ne fonctionnera pas si plusieurs événements sont répertoriés sur la même page, car plusieurs événements se verraient attribuer la même URI.

"@id": "https://someorg.ca/events/eventname/#123abc"

(Où l’indentificateur de fragment 123abc suit une convention de nommage qui garantit l’unicité au sein de la page web.)</p>
Mieux !

"@id": "https://someorg.ca/events/eventname/#key"

(Où key est la clé primaire de l’événement dans votre base de données locale)
Encore mieux !

Utiliser la clé primaire de la Chose dans votre base de données pour l’identificateur de fragment est un moyen simple et efficace de garantir l’unicité de l’identificateur de fragment au sein du domaine du site.

Si vous ne pouvez pas utiliser les clés de la base de données comme nom pour l’identificateur de fragment, nous vous recommandons de choisir une convention de nommage qui garantira le caractère unique de l’identificateur de fragment aujourd’hui et à l’avenir. Par exemple, vous pouvez baser votre identificateur de fragment sur la chaîne startDate et la chaîne location.name, comme dans cette convention de nommage : YYMMDDHH-LIEU.

Autres stratégies pour générer des URI

Les URI croisillons basées sur les URL de pages web existantes, telles que décrites ci-dessus, ne sont qu’une des nombreuses façons de générer des URI fonctionnelles afin d’identifier les entités décrites sur votre site web. Voici d’autres stratégies pour générer des URI flexibles, stables et pérennes :

Ressources externes au sujet des URI

Si vous ne pouvez pas générer votre propre URI…

Ne vous inquiétez pas. Artsdata peut gérer des données sans URI.

Comme alternative (ou en complément de « @id “), envisagez d’utiliser la propriété ” sameAs » pour assigner un identifiant pérenne externe à vos entités Place, Person et Organization. Il s’agit d’un moyen simple et très efficace d’identifier une Chose, et de fournir un lien vers plus de données à son sujet.

Lisez-en plus