Skip to content

Commit

Permalink
Applying changes from commit c111aa590494439dcc2cbe701c23494dc579b83a
Browse files Browse the repository at this point in the history
  • Loading branch information
Circle CI Builder committed Dec 5, 2024
1 parent 03bb6cb commit 59afab0
Show file tree
Hide file tree
Showing 46 changed files with 9,123 additions and 260 deletions.
41 changes: 41 additions & 0 deletions OOTS/ProofOfCitizenship/0.0.1/context/proofofcitizenship.jsonld
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"@context": {
"EvidenceType": "http://data.europa.eu/m8g/EvidenceType",
"IssueDate": {
"@container": "@set",
"@id": "http://purl.org/dc/terms/issued",
"@type": "http://data.europa.eu/m8g/GenericDate"
},
"Jurisdiction": "https://semiceu.github.io/Core-Person-Vocabulary/releases/2.1.1/#Jurisdiction",
"Person": "http://www.w3.org/ns/person#Person",
"ProofOfCitizenship": "https://ec.europa.eu/digital-building-blocks/wikis/display/SDGOO/Proof+of+citizenship",
"dateOfBirth": {
"@container": "@set",
"@id": "http://data.europa.eu/m8g/birthDate",
"@type": "http://data.europa.eu/m8g/GenericDate"
},
"evidenceTypeClassification": {
"@container": "@set",
"@id": "http://data.europa.eu/m8g/evidenceTypeClassification",
"@type": "@id"
},
"familyName": {
"@container": "@set",
"@id": "http://xmlns.com/foaf/0.1/familyName",
"@type": "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"
},
"givenName": {
"@container": "@set",
"@id": "http://xmlns.com/foaf/0.1/givenName",
"@type": "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"
},
"identifier": {
"@id": "http://purl.org/dc/terms/identifier"
},
"sex": {
"@container": "@set",
"@id": "http://data.europa.eu/m8g/sex",
"@type": "@id"
}
}
}
41 changes: 41 additions & 0 deletions OOTS/ProofOfCitizenship/0.0.1/context/proofofcitizenship_en.jsonld
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"@context": {
"EvidenceType": "http://data.europa.eu/m8g/EvidenceType",
"IssueDate": {
"@container": "@set",
"@id": "http://purl.org/dc/terms/issued",
"@type": "http://data.europa.eu/m8g/GenericDate"
},
"Jurisdiction": "https://semiceu.github.io/Core-Person-Vocabulary/releases/2.1.1/#Jurisdiction",
"Person": "http://www.w3.org/ns/person#Person",
"ProofOfCitizenship": "https://ec.europa.eu/digital-building-blocks/wikis/display/SDGOO/Proof+of+citizenship",
"dateOfBirth": {
"@container": "@set",
"@id": "http://data.europa.eu/m8g/birthDate",
"@type": "http://data.europa.eu/m8g/GenericDate"
},
"evidenceTypeClassification": {
"@container": "@set",
"@id": "http://data.europa.eu/m8g/evidenceTypeClassification",
"@type": "@id"
},
"familyName": {
"@container": "@set",
"@id": "http://xmlns.com/foaf/0.1/familyName",
"@type": "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"
},
"givenName": {
"@container": "@set",
"@id": "http://xmlns.com/foaf/0.1/givenName",
"@type": "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"
},
"identifier": {
"@id": "http://purl.org/dc/terms/identifier"
},
"sex": {
"@container": "@set",
"@id": "http://data.europa.eu/m8g/sex",
"@type": "@id"
}
}
}
Binary file added OOTS/ProofOfCitizenship/0.0.1/html/callout.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
255 changes: 255 additions & 0 deletions OOTS/ProofOfCitizenship/0.0.1/html/example.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,255 @@
function example_structure(exampleid){
structure=`
<div id="` + exampleid + `-tabs" exampleid="` + exampleid + `" class="tabs tabsstyle">
<ul>
<li><a href="#` + exampleid + `-tabs-1">Turtle</a></li>
<li><a href="#` + exampleid + `-tabs-2">JSON-LD</a></li>
<li><a href="#` + exampleid + `-tabs-3">XML</a></li>
</ul>
<div id="` + exampleid + `-tabs-1">
<textarea class="validationquery" id="` + exampleid + `-tab1validationquery" name="query" cols="80" rows="16"></textarea>
<button class="buttonsample copyturtletoclipboard" id="` + exampleid + `-tabs-1-button-1">Copy</button>
<button class="buttonsample openTurtleInConverter" id="` + exampleid + `-tabs-1-button-2">Open in Converter</button>
<button class="buttonsample openTurtleInSHACLPlayground" id="` + exampleid + `-tabs-1-button-3">Validate</button>
</div>
<div id="` + exampleid + `-tabs-2">
<textarea class="validationquery" id="` + exampleid + `-tab2validationquery" name="query" cols="80" rows="16"></textarea>
<button class="buttonsample copyjsonldtoclipboard" id="` + exampleid + `-tabs-2-button-1">Copy</button>
<button class="buttonsample openinplayground" id="` + exampleid + `-tabs-2-button-2">Open in Playground</button>
<button class="buttonsample openJsonldInConverter" id="` + exampleid + `-tabs-2-button-3">Open in Converter</button>
<button class="buttonsample openJsonldInSHACLPlayground" id="` + exampleid + `-tabs-2-button-4">Validate</button>
</div>
<div id="` + exampleid + `-tabs-3">
<textarea class="validationquery" id="` + exampleid + `-tab3validationquery" name="query" cols="80" rows="16"></textarea>
<button class="buttonsample copyXMLtoclipboard" id="` + exampleid + `-tabs-3-button-1">Copy</button>
</div>
</div>`;
return structure;
}


/**
* auxiliary function to get around the issue that indexOf() is not working with jquery.
*/

function myIndexOf(list, val) {
var myindex = -1;
var i = 0;

var elem = list[0];

while ( i < list.length ) {
if ( elem == val ) return i;
i = i+1;
elem = list[i];

}

return -1;

}


/**
* Fills in the direct input area with some samples
* @param {string} file - file containing the sample
*/
function loadFile(editorinstance, file) {
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState === 4 && xmlhttp.status !== 200) {
alert('Error when opening the file: ' + file + ' - ' + xmlhttp.status + ' ' + xmlhttp.statusText);
} else if (xmlhttp.readyState === 4 && xmlhttp.status === 200) {
editorinstance.setValue(xmlhttp.responseText);
}
};
xmlhttp.open("GET", file, true);
xmlhttp.send();
return xmlhttp.responseText;
}

function loadShape(file, dataGraph, format) {
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState === 4 && xmlhttp.status !== 200) {
alert('Error when opening the file: ' + file + ' - ' + xmlhttp.status + ' ' + xmlhttp.statusText);
} else if (xmlhttp.readyState === 4 && xmlhttp.status === 200) {
newUrl = "https://shacl-playground.zazuko.com/#page=0&shapesGraph=" + encodeURIComponent(xmlhttp.responseText) + "&shapesGraphFormat=text%2Fturtle&dataGraph=" + encodeURIComponent(dataGraph) + "&dataGraphFormat=" + format ;
//console.log(newUrl);
window.open(newUrl, '_blank');
}
};
xmlhttp.open("GET", file, true);
xmlhttp.send();
return xmlhttp.responseText;
}

function createTurtleEditorFrom(selector) {
return CodeMirror.fromTextArea(selector, {
mode: "turtle",
lineNumbers: true
});
}

function createJSONLDEditorFrom(selector) {
return CodeMirror.fromTextArea(selector, {
mode: "application/ld+json",
lineNumbers: true
});
}

function createXMLEditorFrom(selector) {
return CodeMirror.fromTextArea(selector, {
mode: "application/xml",
lineNumbers: true
});
}


$(document).ready(function () {



var examples = [];
var editors = [];

var examples_id = ".examples";
var examples_class = ".h3";
var folder = "./html/examples/";
var $examples = $(examples_id);

// $examples.children(examples_class).each(function(index){
$examples.each(function(index){
exampleid = this.id;
examples.push(exampleid);
var text = example_structure(exampleid);
$(this).after(text);

var obj = {CM0: createTurtleEditorFrom(document.getElementById(exampleid + "-tab1validationquery")),
CM1: createJSONLDEditorFrom(document.getElementById(exampleid + "-tab2validationquery")),
CM2: createXMLEditorFrom(document.getElementById(exampleid + "-tab3validationquery"))};
editors[index] = obj;
//editors[index].push({CM: createTurtleEditorFrom(document.getElementById(exampleid + "-tab1validationquery")}, CM2: createJSONLDEditorFrom(document.getElementById(exampleid + "-tab2validationquery")});
//editors[index].push({CM: createJSONLDEditorFrom(document.getElementById(exampleid + "-tab2validationquery")});
//editors[index][0] = createTurtleEditorFrom(document.getElementById(exampleid + "-tab1validationquery"));
//editors[index][1] = createJSONLDEditorFrom(document.getElementById(exampleid + "-tab2validationquery"));

$("#" + exampleid + "-tabs").tabs();

$("#" + exampleid + "-tabs a").on('click', function(e) {
$('.CodeMirror').each(function(i, el){
el.CodeMirror.refresh();
});
});

path_to_file = folder + exampleid;
loadFile(editors[index].CM0, path_to_file + ".ttl");
loadFile(editors[index].CM1, path_to_file + ".jsonld");
loadFile(editors[index].CM2, path_to_file + ".xml");

});

$("button.copyturtletoclipboard").on({
"click": function() {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);
texttocopy = editors[index].CM0.getValue()
navigator.clipboard.writeText(texttocopy);
$(this).tooltip({ items: "#" + this.id, content: "Copied !"});
$(this).tooltip("open");
},
"mouseout": function() {
$(this).tooltip("disable");
}
});
$("button.copyjsonldtoclipboard").on({
"click": function() {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);
texttocopy = editors[index].CM1.getValue();
navigator.clipboard.writeText(texttocopy);
$(this).tooltip({ items: "#" + this.id, content: "Copied !"});
$(this).tooltip("open");
},
"mouseout": function() {
$(this).tooltip("disable");
}
});
$("button.copyXMLtoclipboard").on({
"click": function() {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);
texttocopy = editors[index].CM2.getValue();
navigator.clipboard.writeText(texttocopy);
$(this).tooltip({ items: "#" + this.id, content: "Copied !"});
$(this).tooltip("open");
},
"mouseout": function() {
$(this).tooltip("disable");
}
});
$("button.openinplayground").on('click', function(e) {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);

newUrl = "https://json-ld.org/playground/#startTab=tab-expand&json-ld=" + encodeURIComponent(editors[index].CM1.getValue());
window.open(newUrl, '_blank');
return false;
});
$("button.openTurtleInConverter").on('click', function(e) {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);

newUrl = "https://converter.zazuko.com/#value=" + encodeURIComponent(editors[index].CM0.getValue()) + "&format=text%2Fturtle";
window.open(newUrl, '_blank');
return false;
});
$("button.openJsonldInConverter").on('click', function(e) {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);

newUrl = "https://converter.zazuko.com/#value=" + encodeURIComponent(editors[index].CM1.getValue()) + "&format=application%2Fld%2Bjson";
window.open(newUrl, '_blank');
return false;
});
$("button.openTurtleInSHACLPlayground").on('click', function(e) {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);
var shapes = loadShape(shaclfilepath, editors[index].CM0.getValue(), "text%2Fturtle");
return false;
});
$("button.openJsonldInSHACLPlayground").on('click', function(e) {
var exampleid = $(this).parent().parent().attr("exampleid");
var indexValues = $examples.map(function() { return this.id; }) ;
var index = myIndexOf(indexValues, exampleid);
var shapes = loadShape(shaclfilepath, editors[index].CM1.getValue(), "application%2Fld%2Bjson");
return false;
});
$("div.CodeMirror pre").on('click', function(e) {
var et = $(e.target);
if(et.hasClass('cm-url')) {
newUrl = $(this).text();
window.open(encodeURI(newUrl), '_blank');
return false;
}
});
});
Loading

0 comments on commit 59afab0

Please sign in to comment.