Konzept

Constraints - Einschränkungen

Allgemeine Informationen

Einschränkungen (constraints) spezifizieren die Zugangs- und Nutzungsbeschränkungen der Nutzungsarten (action). Die Einschränkungen gelten ausdrücklich nur für die action, der sie zugewiesen sind. Einschränkungen, die für mehrere Nutzungsarten gelten, müssen jeder action zugewiesen werden.

Einschränkungen können durch Attributes (Eigenschaften) weiter spezifiziert werden.

XML

  <action type="ACTION-NAME" permission="true">
    <restriction type="CONSTRAINT-NAME" ATTRIBUT-NAME="WERT"/>
  </action>

JSON

  "actions": [{
    "type": "ACTION-NAME",
    "permission": true,
    "restrictions": [{
        "type": "CONSTRAINT-NAME",
        "ATTRIBUT-NAME": "WERT"
     }]
  }]

Liste

In LibRML stehen folgende Einschränkung zur Verfügung.

Constraint-Name Übersetzung Beschreibung Beispiel
parts Teile Einschränkung der Action auf bestimmte Teile der Ressource. → Parts
group Nutzergruppen Einschränkung der Action auf bestimmte Personen oder Personengruppen. → Group
age Alter Einschränkung der Action auf Nutzer eines bestimmten Alters. → Age
location Ort Geographisch (ein bestimmtes Gebiet z. B. Deutschland)

Institutionell (eine bestimmte Einrichtung z. B. SLUB Dresden).
→ Location
date Zeitpunkt Einschränkung der Action ab oder bis zu einem bestimmten Zeitpunkt (Embargo). → Date
duration Dauer Einschränkung der Action auf eine bestimmte Zeitdauer. → Duration
count Anzahl Einschränkung der Action auf eine bestimmte Anzahl an Ausführungen, Benutzungen, … → Count
concurrent Gleichzeitig Einschränkung der Action auf eine bestimmte Anzahl an gleichzeitigen Ausführungen, Benutzungen, … → Concurrent
watermark Wasserzeichen Einschränkung der Action auf eine Kennzeichnung der Ressource mit einem Wasserzeichen oder einer anderen Markierung. → Watermark
quality Qualität Einschränkung der Action auf eine maximale Qualität. → Quality
agreement Einwilligung Einschränkung der Action hinsichtlich eines Vertrags oder Zustimmung zu Nutzungsbedingungen. → Agreement

Beispiele

Parts

  <action type="download" permission="true">
    <restriction type="parts" parts="1" />
  </action>
  "type": "download",
  "permission": true,
  "restrictions": [
    {
      "type": "parts",
      "parts": "1"
    },

Group

  <action type="print" permission="true">
    <restriction type="group" groups="registered employee" />
  </action>
  "type": "print",
  "permission": true,
  "restrictions": [
    {
      "type": "group",
      "groups": [
        "registered",
        "employee",
      ]
    },

Age

  <action type="read" permission="true">
    <restriction type="age" suminagebnet="18" />
  </action>
  "type": "read",
  "permission": true,
  "restrictions": [
    {
      "type": "age",
      "minage": "18"
    },

Location

  <action type="download" permission="true">
    <restriction type="location" inside="library" />
  </action>
  "type": "download",
  "permission": true,
  "restrictions": [
    {
      "type": "location",
      "inside": "library"
    },

Date

  <action type="distribute" permission="true">
    <restriction type="date" fromdate="2035-01-01" />
  </action>
  "type": "distribute",
  "permission": true,
  "restrictions": [
    {
      "type": "date",
      "fromdate": "2035-01-01"
    },

Duration

  <action type="run" permission="true">
    <restriction type="duration" duration="86400" />
  </action>
  "type": "run",
  "permission": true,
  "restrictions": [
    {
      "type": "duration",
      "duration": 86400
    },

Count

  <action type="print" permission="true">
    <restriction type="count" count="10" />
  </action>
  "type": "print",
  "permission": true,
  "restrictions": [
    {
      "type": "count",
      "count": 10
    },

Concurrent

  <action type="lend" permission="true">
    <restriction type="concurrent" sessions="4" />
  </action>
  "type": "lend",
  "permission": true,
  "restrictions": [
    {
      "type": "concurrent",
      "sessions": 4
    },

Watermark

  <action type="distribute" permission="true">
    <restriction type="watermark" watermarkvalue="https://domain/watermark.png" />
  </action>
  "type": "distribute",
  "permission": true,
  "restrictions": [
    {
      "type": "watermark",
      "watermarkvalue": "https://domain/watermark.png"
    },

Quality

  <action type="print" permission="true">
    <restriction type="quality" maxresolution="300" />
  </action>
  "type": "print",
  "permission": true,
  "restrictions": [
    {
      "type": "quality",
      "maxresolution": 300
    },

Agreement

  <action type="read" permission="true">
    <restriction type="agreement" required="true" />
  </action>
  "type": "read",
  "permission": true,
  "restrictions": [
    {
      "type": "agreement",
      "required": true
    },