index.json extracted with rdfa/json-ld

master
Michael Murtaugh 5 months ago
parent b9116a6574
commit 7c09ad895d

@ -0,0 +1,459 @@
{
"@context": "https://xpub.nl/contexts/projects.json",
"@graph": [
{
"student": "Giulia de Giovanelli",
"thesis": "https://project.xpub.nl/unlearning-the-rules-of-collectivity/pdf/Publication-thesis%20Giuliade%20Giovanelli.pdf",
"title": "Unlearning the Rules of Collectivity",
"type": "project",
"url": "https://project.xpub.nl/unlearning-the-rules-of-collectivity/"
},
{
"student": "Joca van der Horst",
"thesis": "https://project.xpub.nl/smart-speaker-theatre/pdf/ghost_in_the_speaker.pdf",
"title": "Smart Speaker Theatre",
"type": "project",
"url": "https://project.xpub.nl/index.html/"
},
{
"student": "Gersande Schellinx",
"thesis": "https://project.xpub.nl/social-shelves-project/xpub_master-thesis_gersande-schellinx.pdf",
"title": "The Social Shelf Project",
"type": "project",
"url": "https://project.xpub.nl/social-shelves-project/"
},
{
"student": "Erica Gargaglione",
"thesis": "https://project.xpub.nl/hacking-maintenance-with-care/pdf/HMWC.pdf",
"title": "Hacking Maintenance with Care",
"type": "project",
"url": "https://project.xpub.nl/hacking-maintenance-with-care/"
},
{
"student": "Max Franklin",
"thesis": "https://project.xpub.nl/anomolous-faces/pdf/Publication-POD_Thesis_Max-Franklin.pdf",
"title": "Anomolous faces",
"type": "project",
"url": "https://project.xpub.nl/anomolous-faces/"
},
{
"student": "Alice Strete",
"thesis": "https://project.xpub.nl/is-it-time-to-eat-or-is-there-no-more-time-to-eat/pdf/your-body-will-make-itself-heard.pdf",
"title": "Is it time to eat, or is there no more time to eat?",
"type": "project",
"url": "https://project.xpub.nl/is-it-time-to-eat-or-is-there-no-more-time-to-eat/"
},
{
"student": "Nami Kim",
"thesis": "https://project.xpub.nl/usx/Nami%20Kim_graduation%20thesis_Xpub.pdf",
"title": "User Sentimental eXperience",
"type": "project",
"url": "https://project.xpub.nl/usx/"
},
{
"student": "Chaeyoung Kim",
"thesis": "https://project.xpub.nl/minor_stories/pdf/(compressed)_spark(l)ing_curiosities_through_intimate_publishing.pdf",
"title": "Minor Stories",
"type": "project",
"url": "https://project.xpub.nl/minor_stories/"
},
{
"student": "Nadine Rotem-Stibbe",
"thesis": "https://project.xpub.nl/unpublishing/Thesis-N.Rotem-Stibbe.pdf",
"title": "Unpublishing",
"type": "project",
"url": "https://project.xpub.nl/unpublishing/"
},
{
"student": "Avital Barkai",
"thesis": "https://project.xpub.nl/writing_cure/pdf/Avital_Barkai_thesis_compressed.pdf",
"title": "Writing Cure",
"type": "project",
"url": "https://project.xpub.nl/writing_cure/"
},
{
"student": "Louisa Teichmann",
"thesis": "http://louisateichmann.com/asphaltspur.pdf",
"title": "868 MHz",
"type": "project",
"url": "https://project.xpub.nl/868-mhz/"
},
{
"student": "Emma Prato",
"thesis": "https://project.xpub.nl/how-to-make-a-notebook-that/Thesis-Paper-Notebooks.pdf",
"title": "Paper Notebooks: From an Industrial Model to a Tool of Expression",
"type": "project",
"url": "https://project.xpub.nl/how-to-make-a-notebook-that/"
},
{
"student": "Tancredi Di Giovanni",
"thesis": "https://project.xpub.nl/ilinx/",
"title": "ilinx",
"type": "project",
"url": "https://project.xpub.nl/ilinx/"
},
{
"student": "Jacopo Lega",
"thesis": "https://habitattt.it/thesis-Jacopo-Lega/Thesis--Habitat--Living-sharing-adapting---Jacopo-Lega.pdf",
"title": "Habitat",
"type": "project",
"url": "https://project.xpub.nl/habitat/"
},
{
"student": "Kimberley Cosmilla",
"thesis": "https://project.xpub.nl/to-whom-it-may-affect/somewhere-highway-publishing.pdf",
"title": "\"To whom it may affect\"",
"type": "project",
"url": "https://project.xpub.nl/to-whom-it-may-affect/"
},
{
"student": "Damlanur Bilgin",
"thesis": "https://project.xpub.nl/nothanks/pdf/THESIS-compressed.pdf",
"title": "No thanks, I'll make my own",
"type": "project",
"url": "https://project.xpub.nl/nothanks/"
},
{
"student": "Rita Graça",
"thesis": "https://project.xpub.nl/networks-of-care/pdf/networksofcare_thesis.pdf",
"title": "Networks of Care",
"type": "project",
"url": "https://project.xpub.nl/networks-of-care/"
},
{
"student": "Biyi Wen",
"thesis": "https://project.xpub.nl/the-repeater-archive/pdf/Biyi_Wen_Thesis.pdf",
"title": "The Repeater Archive",
"type": "project",
"url": "https://project.xpub.nl/the-repeater-archive/"
},
{
"student": "Max Lehmann",
"thesis": "https://project.xpub.nl/makeinclusivewebsites/pdf/MaxLehmann_Thesis_compressed.pdf",
"title": "Make Inclusive Websites",
"type": "project",
"url": "https://project.xpub.nl/makeinclusivewebsites/"
},
{
"student": "Paloma Garcia",
"thesis": "https://project.xpub.nl/cartographies-of-counter-speculation/pdf/garcia-paloma-cartographies-of-invisibility.pdf",
"title": "Cartographies of Counter Speculation",
"type": "project",
"url": "https://project.xpub.nl/cartographies-of-counter-speculation/"
},
{
"student": "Zalán Szakács",
"thesis": "https://project.xpub.nl/eigengrau/pdf/Phantasmagoria_Zalan_Szakacs_Thesis.pdf",
"title": "Eigengrau",
"type": "project",
"url": "https://project.xpub.nl/eigengrau/"
},
{
"student": "Bohye Woo",
"thesis": "https://project.xpub.nl/parallel-colonialism/pdf/bohye-woo-thesis-2020.pdf",
"title": "Parallel Colonialism",
"type": "project",
"url": "https://project.xpub.nl/parallel-colonialism/"
},
{
"student": "Ål Nik [Alexandra Nikolova]",
"thesis": "https://project.xpub.nl/sound-jams/alnik-xpub-thesis.pdf",
"title": "Sound Jams: Deluxe Edition",
"type": "project",
"url": "https://project.xpub.nl/sound-jams/"
},
{
"student": "Pedro Sá Couto",
"thesis": "https://project.xpub.nl/tactical-watermarks/pdf/Thesis_Master_PSC_HD.pdf",
"title": "Tactical Watermarks",
"type": "project",
"url": "https://project.xpub.nl/tactical-watermarks/"
},
{
"student": "Jian Haake [ohjian]",
"thesis": "https://media.xpub.nl/2023/thesis/modular-matter-Jian_Haake.pdf",
"title": "MODULAR MATTER",
"type": "project",
"url": "https://project.xpub.nl/modular-matter/"
},
{
"student": "Simon Browne",
"thesis": "https://project.xpub.nl/the-bootleg-library/pdf/thesis.pdf",
"title": "the bootleg library",
"type": "project",
"url": "https://project.xpub.nl/the-bootleg-library/"
},
{
"date": "2023-06-01",
"hasPart": [
"https://project.xpub.nl/hello-worlding/",
"https://project.xpub.nl/sound-jams/",
"https://project.xpub.nl/how-to-make-a-notebook-that/",
"https://project.xpub.nl/howtobeasocialjusticewarrior/",
"https://project.xpub.nl/hacking-maintenance-with-care/",
"https://project.xpub.nl/to-whom-it-may-affect/",
"https://project.xpub.nl/minor_stories/",
"https://project.xpub.nl/social-shelves-project/",
"https://project.xpub.nl/modular-matter/",
"https://project.xpub.nl/dear-cross-maker/",
"https://project.xpub.nl/thanks_for_listening/"
],
"image": "https://media.xpub.nl/2023/xpub2023-makingthingsbubblic.svg",
"title": "Making things Bubblic",
"type": "gradshow",
"url": "https://project.xpub.nl/index.rdfa.html#Making-things-Bubblic"
},
{
"date": "2021-07-01",
"hasPart": [
"https://project.xpub.nl/the-constitution/",
"https://project.xpub.nl/low-tech-chronicles/",
"https://project.xpub.nl/lever_burns/",
"https://project.xpub.nl/makeinclusivewebsites/",
"https://project.xpub.nl/nothanks/",
"https://project.xpub.nl/writing_cure/",
"https://project.xpub.nl/when-you-might-go-astray/",
"https://project.xpub.nl/terrafying-hear-say/",
"https://project.xpub.nl/desire_revolution/"
],
"image": "https://git.xpub.nl/XPUB/project.xpub.nl/raw/branch/master/img/logo_indigo_2021.png",
"title": "blue links",
"type": "gradshow",
"url": "https://project.xpub.nl/index.rdfa.html#blue-links"
},
{
"student": "Franc González",
"thesis": "https://project.xpub.nl/referendum-medialogs/pdf/Publication-referendum_medialogs.pdf",
"title": "Referendum Medialogs",
"type": "project",
"url": "https://project.xpub.nl/referendum-medialogs/"
},
{
"student": "Euna Lee",
"thesis": "https://project.xpub.nl/frabjousish/pdf/thesis.pdf",
"title": "Frabjousish",
"type": "project",
"url": "https://project.xpub.nl/frabjousish/"
},
{
"student": "Alexander Roidl",
"thesis": "https://project.xpub.nl/poetic-software/pdf/poetic_software_thesis.pdf",
"title": "Poetic Software",
"type": "project",
"url": "https://project.xpub.nl/poetic-software/"
},
{
"date": "2020-07-01",
"hasPart": [
"https://project.xpub.nl/syster-papyri-magicae/",
"https://project.xpub.nl/the-bootleg-library/",
"https://project.xpub.nl/parallel-colonialism/",
"https://project.xpub.nl/the-repeater-archive/",
"https://project.xpub.nl/tactical-watermarks/",
"https://project.xpub.nl/networks-of-care/",
"https://project.xpub.nl/ilinx/",
"https://project.xpub.nl/cartographies-of-counter-speculation/"
],
"image": "https://project.xpub.nl/img/xpub_logo_2020.svg",
"title": "c_o_l_l_e_c_t_i_v_e_i_o_n_i_n_g",
"type": "gradshow",
"url": "https://project.xpub.nl/index.rdfa.html#c_o_l_l_e_c_t_i_v_e_i_o_n_i_n_g"
},
{
"student": "Camilo García A.",
"thesis": "https://project.xpub.nl/attempting-diffraction/pdf/Camilo_Garcia_Aycardi_Graduation_Thesis_XPUB_.pdf",
"title": "Attempting Diffraction",
"type": "project",
"url": "https://project.xpub.nl/attempting-diffraction/"
},
{
"student": "Supisara Burapachaisri",
"thesis": "https://media.xpub.nl/2023/thesis/supi_Cross-Making.pdf",
"title": "Dear (Cross) Maker,",
"type": "project",
"url": "https://project.xpub.nl/dear-cross-maker/"
},
{
"student": "Kendal Beynon",
"thesis": "https://project.xpub.nl/virtualgarden/XPUB-Cyberhotels-KB.pdf",
"title": "Virtual Gardens",
"type": "project",
"url": "https://project.xpub.nl/virtualgarden/"
},
{
"student": "Anna Sandri",
"thesis": "https://project.xpub.nl/when-you-might-go-astray/pdf/wymga.pdf",
"title": "When you might go astray",
"type": "project",
"url": "https://project.xpub.nl/when-you-might-go-astray/"
},
{
"student": "Mika Motskobili",
"thesis": "https://project.xpub.nl/lever_burns/pdf/Ezn_LeverBurns.pdf",
"title": "Lever Burns",
"type": "project",
"url": "https://project.xpub.nl/lever_burns/"
},
{
"date": "2018-07-01",
"hasPart": [
"https://project.xpub.nl/referendum-medialogs/",
"https://project.xpub.nl/unpublishing/",
"https://project.xpub.nl/unlearning-the-rules-of-collectivity/",
"https://project.xpub.nl/back-it-up/",
"https://project.xpub.nl/anomolous-faces/",
"https://project.xpub.nl/alt-reality-lexicon/"
],
"image": "https://project.xpub.nl/img/xpub_logo_2018.svg",
"title": "Ex, XPUB",
"type": "gradshow",
"url": "https://project.xpub.nl/index.rdfa.html#Ex,-XPUB"
},
{
"student": "Francesco Luzzana, km0, sumo, tofu, etc.",
"thesis": "https://media.xpub.nl/2023/thesis/Hello%20Worlding%20-%20kamo%20-%20THE%20REAL%20ONE.pdf",
"title": "Hello Worlding",
"type": "project",
"url": "https://project.xpub.nl/hello-worlding/"
},
{
"student": "Karina Dukalska",
"thesis": "https://project.xpub.nl/back-it-up/pdf/Publication-Karina_ABC_thesis.pdf",
"title": "Back It Up",
"type": "project",
"url": "https://project.xpub.nl/back-it-up/"
},
{
"student": "Artemis Gryllaki",
"thesis": "https://project.xpub.nl/syster-papyri-magicae/pdf/ArtemisGryllaki-Thesis.pdf",
"title": "Syster Papyri Magicae",
"type": "project",
"url": "https://project.xpub.nl/syster-papyri-magicae/"
},
{
"student": "Pleun Gremmen",
"thesis": "https://project.xpub.nl/alt-reality-lexicon/pdf/Publication-AltRealityLexBook.pdf",
"title": "Alt Reality Lexicon",
"type": "project",
"url": "https://project.xpub.nl/alt-reality-lexicon/"
},
{
"date": "2019-07-01",
"hasPart": [
"https://project.xpub.nl/is-it-time-to-eat-or-is-there-no-more-time-to-eat/",
"https://project.xpub.nl/index.html/",
"https://project.xpub.nl/poetic-software/",
"https://project.xpub.nl/lets-amplify-unspeakable-things/",
"https://project.xpub.nl/instant-warnet/",
"https://project.xpub.nl/eigengrau/"
],
"image": "https://project.xpub.nl/img/xpub_logo_2019.png",
"title": "UPSETTING SETTINGS",
"type": "gradshow",
"url": "https://project.xpub.nl/index.rdfa.html#UPSETTING-SETTINGS"
},
{
"date": "2022-06-01",
"hasPart": [
"https://project.xpub.nl/RuralComputing/",
"https://project.xpub.nl/virtualgarden/",
"https://project.xpub.nl/notitleyet/",
"https://project.xpub.nl/868-mhz/",
"https://project.xpub.nl/usx/",
"https://project.xpub.nl/habitat/",
"https://project.xpub.nl/generatingstories/",
"https://project.xpub.nl/frabjousish/",
"https://project.xpub.nl/sobremesa/",
"https://project.xpub.nl/attempting-diffraction/"
],
"image": "https://git.xpub.nl/XPUB/project.xpub.nl/raw/branch/master/img/walkie-talkie-ref.png",
"title": "Walkie-Talkie",
"type": "gradshow",
"url": "https://project.xpub.nl/index.rdfa.html#Walkie-Talkie"
},
{
"student": "Natasha Berting",
"thesis": "https://project.xpub.nl/instant-warnet/pdf/Berting-Making-Silences-On-Social-Media.pdf",
"title": "Instant Warnet",
"type": "project",
"url": "https://project.xpub.nl/instant-warnet/"
},
{
"student": "mitsitron [mitsa chaida michelakou]",
"thesis": "https://project.xpub.nl/thanks_for_listening/thesis_mitsitron.pdf",
"title": "Thanks for listening",
"type": "project",
"url": "https://project.xpub.nl/thanks_for_listening/"
},
{
"student": "Angeliki Diakrousi",
"thesis": "https://project.xpub.nl/lets-amplify-unspeakable-things/pdf/diakrousi-lets-amplify-unspeakable-things.pdf",
"title": "Let's Amplify Unspeakable Things",
"type": "project",
"url": "https://project.xpub.nl/lets-amplify-unspeakable-things/"
},
{
"student": "Miriam Schöb",
"thesis": "https://project.xpub.nl/howtobeasocialjusticewarrior/img/Masterthesis_MiriamSch%C3%B6b_TheLeftCanMeme.pdf",
"title": "How to be a social justice warrior",
"type": "project",
"url": "https://project.xpub.nl/howtobeasocialjusticewarrior/"
},
{
"student": "Mark van den Heuvel",
"thesis": "https://project.xpub.nl/low-tech-chronicles/",
"title": "Low-Tech Chronicles",
"type": "project",
"url": "https://project.xpub.nl/low-tech-chronicles/"
},
{
"student": "Floor van Meeuwen",
"thesis": "https://project.xpub.nl/sobremesa/pdf/thesis.pdf",
"title": "Sobremesa",
"type": "project",
"url": "https://project.xpub.nl/sobremesa/"
},
{
"student": "Federico Poni",
"thesis": "https://project.xpub.nl/RuralComputing/pdf/thesis.pdf",
"title": "Concert, Computation, Conviviality",
"type": "project",
"url": "https://project.xpub.nl/RuralComputing/"
},
{
"student": "Tisa Neža Herlec",
"thesis": "https://project.xpub.nl/the-constitution/pdf/Tisa-Ne%C5%BEa-Herlec_The-Constitution.pdf",
"title": "The Constitution",
"type": "project",
"url": "https://project.xpub.nl/the-constitution/"
},
{
"student": "Ioana Tomici",
"thesis": "https://project.xpub.nl/terrafying-hear-say/pdf/thesis.pdf",
"title": "Terrafying Hear/Say",
"type": "project",
"url": "https://project.xpub.nl/terrafying-hear-say/"
},
{
"student": "Clara Noseda",
"thesis": "https://project.xpub.nl/desire_revolution/pdf/A%20SAILORS%20GUIDE%20TO%20EARTH_Clara%20Noseda.pdf",
"title": "CONSIDER DISASTER, DESIRE REVOLUTION: A repository for astropolitical research",
"type": "project",
"url": "https://project.xpub.nl/desire_revolution/"
},
{
"student": "Clara Gradel",
"thesis": "https://project.xpub.nl/generatingstories/thesis.pdf",
"title": "a and a",
"type": "project",
"url": "https://project.xpub.nl/generatingstories/"
},
{
"student": "Martin Foucaut",
"thesis": "https://project.xpub.nl/notitleyet/pdf/Martin_Foucaut_Graduation_Thesis_XPUB_2022.pdf",
"title": "Count On Me",
"type": "project",
"url": "https://project.xpub.nl/notitleyet/"
}
]
}

@ -1,4 +1,6 @@
<html lang="en"><head>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="generator" content="HTML Tidy for HTML5 for Linux version 5.6.0">
<meta charset="utf-8">
<title>XPUB Grad</title>

@ -0,0 +1,15 @@
import json
with open("index.json") as fin:
data = json.load(fin)
projects, shows = 0, 0
for item in data["@graph"]:
if item['type'] == "project":
projects += 1
elif item['type'] == "gradshow":
shows +=1
else:
raise Exception("unknown type")
print (f"{shows} shows, {projects} projects")

@ -14,22 +14,22 @@ g = Graph()
g.parse("https://project.xpub.nl/index.rdfa.html", format="rdfa")
context = {
"@context": {
"@vocab": "http://xpub.nl/terms/",
"@language": "en",
"xpub": "http://xpub.nl/terms/",
"xpubproject": "https://project.xpub.nl/",
"dc": "http://purl.org/dc/terms/",
"student": { "@id": "xpub:student", "@lang": "en" },
"project": { "@id": "xpub:project", "@type": "@id" },
"thesis": { "@id": "xpub:thesis", "@type": "@id" },
"image": {"@id": "dc:image", "@type": "@id" },
"title": "dc:title",
"date": {"@id": "dc:date", "@type": "http://www.w3.org/2001/XMLSchema#date"},
"hasPart": {"@id": "dc:hasPart", "@type": "@id"},
"url": {"@id": "@id", "@type": "@id"},
"type": {"@id": "@type", "@type": "@id"}
}
}
print (g.serialize(format="json-ld", context=context, auto_compact=True))
# context = {
# "@context": {
# "@vocab": "http://xpub.nl/terms/",
# "@language": "en",
# "xpub": "http://xpub.nl/terms/",
# "xpubproject": "https://project.xpub.nl/",
# "dc": "http://purl.org/dc/terms/",
# "student": { "@id": "xpub:student", "@lang": "en" },
# "project": { "@id": "xpub:project", "@type": "@id" },
# "thesis": { "@id": "xpub:thesis", "@type": "@id" },
# "image": {"@id": "dc:image", "@type": "@id" },
# "title": "dc:title",
# "date": {"@id": "dc:date", "@type": "http://www.w3.org/2001/XMLSchema#date"},
# "hasPart": {"@id": "dc:hasPart", "@type": "@id"},
# "url": {"@id": "@id", "@type": "@id"},
# "type": {"@id": "@type", "@type": "@id"}
# }
# }
print (g.serialize(format="json-ld", context="https://xpub.nl/contexts/projects.json", auto_compact=True))

Loading…
Cancel
Save