@@ -24,11 +24,14 @@ reproschema:ActivityShape a sh:NodeShape ;
2424 [ sh:datatype rdf:langString ;
2525 sh:path schema:citation ],
2626
27- [ sh:nodeKind sh:IRI ;
27+ [ sh:or ( [ sh:datatype xsd:anyURI ; sh:pattern " ((http|https)://)(www.)?[a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*) " ] [sh:node reproschema:MediaObjectShape] ) ;
2828 sh:path schema:image ],
2929
30- [ sh:nodeKind sh:IRI ;
31- sh:path schema:associatedMedia ],
30+ [ sh:node reproschema:MediaObjectShape ;
31+ sh:path schema:audio ],
32+
33+ [ sh:node reproschema:MediaObjectShape ;
34+ sh:path schema:video ],
3235
3336 [ sh:nodeKind sh:IRI ;
3437 sh:path schema:about ],
@@ -98,12 +101,14 @@ reproschema:FieldShape a sh:NodeShape ;
98101 [ sh:datatype rdf:langString ;
99102 sh:path reproschema:preamble ],
100103
101- [ sh:nodeKind sh:IRI ;
102- sh:maxCount 1 ;
104+ [ sh:or ( [ sh:datatype xsd:anyURI ; sh:pattern " ((http|https)://)(www.)?[a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*)" ] [sh:node reproschema:MediaObjectShape] ) ;
103105 sh:path schema:image ],
104106
105- [ sh:nodeKind sh:IRI ;
106- sh:path schema:associatedMedia ],
107+ [ sh:node reproschema:MediaObjectShape ;
108+ sh:path schema:audio ],
109+
110+ [ sh:node reproschema:MediaObjectShape ;
111+ sh:path schema:video ],
107112
108113 [ sh:datatype xsd:string ;
109114 sh:maxCount 1 ;
@@ -144,8 +149,14 @@ reproschema:ProtocolShape a sh:NodeShape ;
144149 sh:maxCount 1 ;
145150 sh:path schema:about ],
146151
147- [ sh:nodeKind sh:IRI ;
148- sh:path schema:associatedMedia ],
152+ [ sh:or ( [ sh:datatype xsd:anyURI ; sh:pattern " ((http|https)://)(www.)?[a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*)" ] [sh:node reproschema:MediaObjectShape] ) ;
153+ sh:path schema:image ],
154+
155+ [ sh:node reproschema:MediaObjectShape ;
156+ sh:path schema:audio ],
157+
158+ [ sh:node reproschema:MediaObjectShape ;
159+ sh:path schema:video ],
149160
150161 [ sh:nodeKind sh:IRI ;
151162 sh:path reproschema:landingPage ],
@@ -315,7 +326,7 @@ reproschema:OverridePropertiesShape a sh:NodeShape ;
315326reproschema:ChoicesShape a sh:NodeShape ;
316327 sh:closed true ;
317328 sh:ignoredProperties ( rdf:type ) ;
318- sh:property [ sh:nodeKind sh:IRI ;
329+ sh:property [ sh:or ( [ sh:datatype xsd:anyURI ; sh:pattern " ((http|https)://)(www.)?[a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*) " ] [sh:node reproschema:MediaObjectShape] ) ;
319330 sh:path schema:image ],
320331
321332 [ sh:datatype rdf:langString ;
@@ -331,7 +342,7 @@ reproschema:UnitOptionsShape a sh:NodeShape ;
331342 sh:property [ sh:datatype rdf:langString ;
332343 sh:path skos:prefLabel ],
333344
334- [ sh:or ( [ sh:datatype xsd:integer ] [ sh: nodeKind sh:IRI ] [ sh:datatype schema:Boolean ] [ sh:datatype schema:StructuredValue ] [ sh:datatype rdf:langString ]) ;
345+ [ sh:or ( [ sh:nodeKind sh:IRI ] [ sh:datatype rdf:langString ]) ;
335346 sh:path reproschema:value ] ;
336347 sh:targetClass reproschema:UnitOption .
337348
@@ -439,3 +450,11 @@ prov:SoftwareAgentShape a sh:NodeShape ;
439450 [ sh:nodeKind sh:IRI ;
440451 sh:path schema:url ] ;
441452 sh:targetClass reproschema:SoftwareAgent .
453+
454+ reproschema:MediaObjectShape a sh:NodeShape ;
455+ sh:closed true ;
456+ sh:ignoredProperties ( rdf:type ) ;
457+ sh:property [ sh:datatype xsd:anyURI ;
458+ sh:minCount 1 ;
459+ sh:pattern " ((http|https)://)(www.)?[a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*)" ;
460+ sh:path schema:contentUrl ] .
0 commit comments