Add Profile vocabulary metadata
Terms from https://www.w3.org/TR/dx-prof/
Declare in metadata: DPV as a specification, declare extensions, declare serialisations - HTML, RDF (various), declare guides.
Proposal:
PREFIX profile: <http://www.w3.org/ns/dx/prof/>
PREFIX role: <http://www.w3.org/ns/dx/prof/role/>
<https://w3id.org/dpv> a profile:Profile ;
profile:isProfileOf <http://www.w3.org/2000/01/rdf-schema>, <http://www.w3.org/2004/02/skos/core> ;
profile:hasResource dpv:html, dpv:primer, dpv:use-cases, dpv:examples,
dpv:ttl, dpv:jsonld, dpv:n3, dpv:rdf .
dpv:html a profile:ResourceDescriptor ;
profile:hasRole role:specification ;
profile:hasArtifact <https://w3c.github.io/dpv/dpv/index.html> ;
dcterms:title "Data Privacy Vocabulary HTML specification"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/html> ;
dcterms:conformsTo <https://www.w3.org/TR/html/> .
dpv:primer a profile:ResourceDescriptor ;
profile:hasRole role:guidance ;
profile:hasArtifact <https://w3c.github.io/dpv/primer/index.html> ;
dcterms:title "Data Privacy Vocabulary Primer HTML specification"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/html> ;
dcterms:conformsTo <https://www.w3.org/TR/html/> .
dpv:use-cases a profile:ResourceDescriptor ;
profile:hasRole role:guidance ;
profile:hasArtifact <https://w3c.github.io/dpv/use-cases/index.html> ;
dcterms:title "Data Privacy Vocabulary Use-Cases and Requirements HTML specification"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/html> ;
dcterms:conformsTo <https://www.w3.org/TR/html/> .
dpv:examples a profile:ResourceDescriptor ;
profile:hasRole role:guidance ;
profile:hasArtifact <https://w3c.github.io/dpv/examples/index.html> ;
dcterms:title "Data Privacy Vocabulary Examples HTML specification"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/html> ;
dcterms:conformsTo <https://www.w3.org/TR/html/> .
dpv:ttl a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact <https://w3c.github.io/dpv/dpv/dpv.ttl> ;
dcterms:title "Data Privacy Vocabulary Turtle vocabulary"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/turtle> ;
dcterms:conformsTo <https://www.w3.org/TR/turtle/> .
dpv:jsonld a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact <https://w3c.github.io/dpv/dpv/dpv.jsonld> ;
dcterms:title "Data Privacy Vocabulary JSON-LD vocabulary"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/application/ld+json> ;
dcterms:conformsTo <https://www.w3.org/TR/json-ld11/> .
dpv:n3 a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact <https://w3c.github.io/dpv/dpv/dpv.n3> ;
dcterms:title "Data Privacy Vocabulary N3 vocabulary"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/n3> ;
dcterms:conformsTo <https://www.w3.org/TeamSubmission/n3/> .
dpv:rdf a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact <https://w3c.github.io/dpv/dpv/dpv.rdf> ;
dcterms:title "Data Privacy Vocabulary RDF vocabulary"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/application/rdf+xml> ;
dcterms:conformsTo <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
and then for each extension define it as profile of DPV:
<https://w3id.org/dpv/legal/eu/dga/eu-dga> a profile:Profile ;
profile:isProfileOf <https://w3id.org/dpv> ;
profile:hasResource eu-dga:html, eu-dga:ttl, eu-dga:jsonld, eu-dga:n3, eu-dga:rdf .
eu-dga:html a profile:ResourceDescriptor ;
profile:hasRole role:specification ;
profile:hasArtifact <https://w3c.github.io/dpv/legal/eu/dga/index.html> ;
dcterms:title "EU-DGA Extension for the Data Privacy Vocabulary HTML specification"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/html> ;
dcterms:conformsTo <https://www.w3.org/TR/html/> .
eu-dga:ttl a profile:ResourceDescriptor ;
profile:hasRole role:vocabulary ;
profile:hasArtifact <https://w3c.github.io/dpv/legal/eu/dga/eu-dga.ttl> ;
dcterms:title "EU-DGA Extension for the Data Privacy Vocabulary Turtle vocabulary"@en ;
dcterms:format <https://www.iana.org/assignments/media-types/text/turtle> ;
dcterms:conformsTo <https://www.w3.org/TR/turtle/> .
...
guides can also be added to the extensions e.g. for the GDPR extension we have guides for consent records, data breach, ...
Thanks - I'll add all these in to be generated programmatically.
Hi @besteves4 can you please review this, I think I have it correct - though the artifact links may be broken
DPV -
<https://w3id.org/dpv> a owl:Ontology,
profile:Profile ;
profile:hasResource dpv:serialisation-rdf,
dpv:serialisation-ttl,
<https://w3id.org/dpv/examples>,
<https://w3id.org/dpv/guides>,
<https://w3id.org/dpv/primer> ;
profile:isProfileOf rdfs:,
skos: ;
dct:conformsTo "http://www.w3.org/2000/01/rdf-schema",
"http://www.w3.org/2004/02/skos/core" ;
dpv:serialisation-ttl a profile:ResourceDescriptor ;
dct:conformsTo <https://www.w3.org/TR/turtle/> ;
dct:format <https://www.iana.org/assignments/media-types/text/turtle> ;
dct:title "Data Privacy Vocabulary (DPV) - Turtle serialiation" ;
profile:hasArtifact <https://w3id.org/dpv/dpv.ttl> ;
profile:hasRole role:vocabulary .
EU GDPR -
<https://w3id.org/dpv/legal/eu/gdpr> a owl:Ontology,
profile:Profile ;
dct:conformsTo "http://www.w3.org/2000/01/rdf-schema",
"http://www.w3.org/2004/02/skos/core" ;
profile:hasResource <https://w3id.org/dpv/examples>, # retained because these are examples also for GDPR
<https://w3id.org/dpv/guides>,
eu-gdpr:serialisation-rdf,
eu-gdpr:serialisation-ttl,
<https://w3id.org/dpv/primer> ;
profile:isProfileOf rdfs:,
skos:,
<https://w3id.org/dpv> ;
Indeed, the artifact link is broken. Also, in the DPV metadata beyond the serialisations, we are missing a profile:hasResource with the HTML documentation, which should have role:specification. In the GDPR extension, I don't think we need profile:isProfileOf rdfs:, skos:, <https://w3id.org/dpv> ;, profile:isProfileOf <https://w3id.org/dpv> ; should be enough as RDFS and SKOS are inherited from DPV.
Hi. Thanks for checking.
Indeed, the artifact link is broken.
The DPV spec is the exception with path w3id.org/dpv/dpv/dpv.ttl corresponding to the RDF, I'll fix that.
Also, in the DPV metadata beyond the serialisations, we are missing a
profile:hasResourcewith the HTML documentation, which should haverole:specification.
I'll add that.
In the GDPR extension, I don't think we need
profile:isProfileOf rdfs:, skos:, <https://w3id.org/dpv> ;,profile:isProfileOf <https://w3id.org/dpv> ;should be enough as RDFS and SKOS are inherited from DPV.
I wanted them in so we can distinguish between the RDFS/SKOS and OWL variants - unless that's something that doesn't conform to Profile requirements?
I wanted them in so we can distinguish between the RDFS/SKOS and OWL variants - unless that's something that doesn't conform to Profile requirements?
Makes sense, then yes indeed, I don't see anything against in the profile requirements.