PageSourceSearch

https://schulconnex.de/assets/js/aa083d3d.4f699933.js

js schulconnex.de collected 2026-10-04 13:31:48 UTC 8,610 bytes, 1 lines download raw bytes

1"use strict";(globalThis.webpackChunkschulconnex=globalThis.webpackChunkschulconnex||[]).push([[25,3837],{17950(e,n,i){i.r(n),i.d(n,{assets:()=>o,contentTitle:()=>a,default:()=>c,frontMatter:()=>d,metadata:()=>r,toc:()=>l});const r=JSON.parse('{"id":"datenmodell-qs/datenmodell-arrays","title":"datenmodell-arrays","description":"Hinweis zur Reihenfolge der Elemente in Arrays","source":"@site/docs/datenmodell-qs/datenmodell-arrays.md","sourceDirName":"datenmodell-qs","slug":"/datenmodell-qs/datenmodell-arrays","permalink":"/docs/datenmodell-qs/datenmodell-arrays","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{}}');var t=i(74848),s=i(28453);const d={},a=void 0,o={},l=[{value:"Hinweis zur Reihenfolge der Elemente in Arrays",id:"hinweis-zur-reihenfolge-der-elemente-in-arrays",level:2}];function u(e){const n={h2:"h2",p:"p",...(0,s.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h2,{id:"hinweis-zur-reihenfolge-der-elemente-in-arrays",children:"Hinweis zur Reihenfolge der Elemente in Arrays"}),"\n",(0,t.jsx)(n.p,{children:"Die Reihenfolge der Elemente in JSON-Arrays, die vom Schulconnex-Server geliefert werden, ist nicht spezifiziert. Anwendungen d\xfcrfen sich nicht darauf verlassen, dass die Elemente in der Reihenfolge ihrer Speicherung oder bei wiederholten API-Aufrufen in derselben Reihenfolge erscheinen."})]})}function c(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(u,{...e})}):u(e)}},25775(e,n,i){i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>r,toc:()=>u});const r=JSON.parse('{"id":"datenmodell-dienste/datenmodell","title":"Datenmodell","description":"Der Datenabruf durch einen Dienst erfolgt im Kontext eines Nutzers oder einer Nutzerin und stellt nur die Daten bereit,","source":"@site/docs/datenmodell-dienste/datenmodell.md","sourceDirName":"datenmodell-dienste","slug":"/datenmodell-dienste/datenmodell","permalink":"/docs/datenmodell-dienste/datenmodell","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{},"sidebar":"spezDiensteSidebar","previous":{"title":"Allgemeines","permalink":"/docs/allgemeines-dienste"},"next":{"title":"Anschrift","permalink":"/docs/datenmodell-dienste/anschrift"}}');var t=i(74848),s=i(28453),d=i(17950);const a={},o="Datenmodell",l={},u=[...d.toc,{value:"Hinweis zur Notation <code>0/1</code>, <code>0/0..1</code> und <code>0/0..n</code> bei der Anzahl",id:"hinweis-zur-notation-01-001-und-00n-bei-der-anzahl",level:2}];function c(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",header:"header",mermaid:"mermaid",p:"p",...(0,s.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.header,{children:(0,t.jsx)(n.h1,{id:"datenmodell",children:"Datenmodell"})}),"\n",(0,t.jsxs)(n.p,{children:["Der Datenabruf durch einen Dienst erfolgt im Kontext eines Nutzers oder einer Nutzerin und stellt nur die Daten bereit,\ndie f\xfcr die Nutzung des Dienstes erforderlich sind. Die Daten haben aus diesem Grund eine andere Struktur\nals an den Endpunkten f\xfcr Quellsysteme. Au\xdferdem sind nur lesende Abrufe (",(0,t.jsx)(n.code,{children:"GET"}),") m\xf6glich. Zur Referenzierung\nder Daten einer spezifischen Person oder von Personenkontexten wird eine pseudonymisierte ID (",(0,t.jsx)(n.code,{children:"pid"}),") genutzt,\nwelche aus Sicht der einzelnen Dienste jeweils konstant und eindeutig ist. Diese pseudonymisierte ID\nentspricht nicht notwendig der intern in der Datenhaltung des Schulconnex-Services genutzten ID.\nDamit kann ein automatischer direkter Abgleich der Informationen zwischen zwei Anbietern, unter Umgehung\ndes Schulconnex-Servers, erschwert werden."]}),"\n",(0,t.jsx)(n.p,{children:"Nicht alle Attribute stehen allen Diensten zur Verf\xfcgung. Welche Daten vom Schulconnex-Server an den Dienst\ngeliefert werden, wird durch individuelle Absprachen zwischen Dienstanbieter und Betreiber\ndes Schulconnex-Servers festgelegt."}),"\n",(0,t.jsx)(d.default,{}),"\n",(0,t.jsxs)(n.h2,{id:"hinweis-zur-notation-01-001-und-00n-bei-der-anzahl",children:["Hinweis zur Notation ",(0,t.jsx)(n.code,{children:"0/1"}),", ",(0,t.jsx)(n.code,{children:"0/0..1"})," und ",(0,t.jsx)(n.code,{children:"0/0..n"})," bei der Anzahl"]}),"\n",(0,t.jsxs)(n.p,{children:["Bei Attributen mit der Anzahl ",(0,t.jsx)(n.code,{children:"0/1"})," h\xe4ngt es von der vertraglichen Absprache zwischen Dienstanbieter und\nBetreiber des Schulconnex-Servers ab, ob dieses Attribut geliefert wird. Sieht die Absprache\ndie Bereitstellung dieses Attributs nicht vor, so wird es nie geliefert (d. h. bei nicht erfolgter Freigabe\nist die Anzahl als ",(0,t.jsx)(n.code,{children:"0"})," zu lesen und das Vorhandensein des Attributs ist als Fehler zu interpretieren)."]}),"\n",(0,t.jsxs)(n.p,{children:["Sieht die Absprache die Bereitstellung dieses Attributs vor, so zeigt die Angabe nach dem Schr\xe4gstrich,\nob ein Attribut immer (",(0,t.jsx)(n.code,{children:"0/1"}),") oder maximal einmal zu erwarten ist (",(0,t.jsx)(n.code,{children:"0/0..1"}),"). Die Schreibweise ",(0,t.jsx)(n.code,{children:"0/0..n"})," zeigt an,\ndass kein Wert oder ein Array von Werten zu erwarten sind. Beispielsweise ist nicht f\xfcr\nalle Personen ein Geburtsdatum hinterlegt, sodass, selbst wenn das Attribut ",(0,t.jsx)(n.code,{children:"geburt.datum"})," freigegeben ist,\nnicht zwingend ein Geburtsdatum geliefert wird."]}),"\n",(0,t.jsx)(n.mermaid,{value:"classDiagram\n  Person --\x3e Organisation : 0..1\n  Personenkontext --\x3e Organisation : 1\n  Organisation --\x3e Anschrift : 0..1\n  Anschrift --\x3e VerwaltungspolitischeKodierung : 0..1\n  Gruppe --\x3e Organisation : 1\n  Gruppe --\x3e Lernperiode : 0 oder 2\n  class Person {\n    stammorganisation\n    stammorganisation.id\n    stammorganisation.kennung\n    stammorganisation.name\n    stammorganisation.anschrift\n    stammorganisation.typ\n    name\n    name.familienname\n    name.vorname\n    name.initialenfamilienname\n    name.initialenvorname\n    name.rufname\n    geburt\n    geburt.datum\n    geburt.volljaehrig\n    geburt.geburtsort\n    geschlecht\n    lokalisierung\n    vertrauensstufe\n  }\n  class Personenkontext {\n    id\n    organisation\n    rolle\n    erreichbarkeiten\n    erreichbarkeiten.typ\n    erreichbarkeiten.kennung\n    personenstatus\n    gruppen\n    gruppen.gruppe\n    gruppen.gruppenzugehoerigkeit\n    gruppen.gruppenzugehoerigkeit.rollen\n    gruppen.gruppenzugehoerigkeit.von\n    gruppen.gruppenzugehoerigkeit.bis\n    beziehungen\n    beziehungen.hat_als\n    beziehungen.hat_als.ktid\n    beziehungen.hat_als.beziehung\n    beziehungen.ist_von\n    beziehungen.ist_von.ktid\n    beziehungen.ist_von.beziehung\n    loeschung\n    loeschung.zeitpunkt\n  }\n  class Organisation {\n    id\n    kennung\n    name\n    anschrift\n    typ\n  }\n  class Anschrift {\n    postleitzahl\n    ort\n    ortsteil\n    verwaltungspolitischeKodierung\n  }\n  class VerwaltungspolitischeKodierung {\n    bundesland\n  }\n  class Gruppe {\n    id\n    orgid\n    bezeichnung\n    thema\n    beschreibung\n    typ\n    bereich\n    optionen\n    differenzierung\n    bildungsziele\
1n    jahrgangsstufen\n    faecher\n    faecher.kennung\n    faecher.bezeichnung\n    laufzeit\n    laufzeit.von\n    laufzeit.vonlernperiode\n    laufzeit.bis\n    laufzeit.bislernperiode\n  }\n  class Lernperiode {\n    code\n    bezeichnung\n    typ\n    beginn\n    ende\n  }"}),"\n",(0,t.jsx)(n.admonition,{title:"Hinweis",type:"note",children:(0,t.jsxs)(n.p,{children:["Die Angabe ",(0,t.jsx)(n.code,{children:"0 oder 2"})," f\xfcr \u201eGruppe\u201c assoziiert mit der Klasse \u201eLernperiode\u201c bedeutet, dass eine Gruppe entweder\nkeine Lernperioden oder genau zwei Lernperioden (",(0,t.jsx)(n.code,{children:"vonlernperiode"})," und ",(0,t.jsx)(n.code,{children:"bislernperiode"}),") haben kann, siehe auch\n",(0,t.jsxs)(n.a,{href:"/docs/datenmodell-dienste/gruppe",children:["Datenmodell Gruppe Attribut ",(0,t.jsx)(n.code,{children:"laufzeit"})]}),"."]})})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(c,{...e})}):c(e)}},28453(e,n,i){i.d(n,{R:()=>d,x:()=>a});var r=i(96540);const t={},s=r.createContext(t);function d(e){const n=r.useContext(s);return r.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:d(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.