NPS Migration - Feature Set explained
Im Vorlauf der Migration, beim Aufbau der Infrastruktur und letztlich der Durchführung der Migration hat sich an vielen Stellen die Notwendigkeit ergeben, eigene Wege abseits der vorgetretenden Pfade des CMS Betreibers zu gehen. Die im folgenden vorgestellten Features werden nicht vom CMS Betreiber gewartet, haben aber die Chance in den globalen Featurekatalog aufgenommen zu werden.
NPS-Standardverhalten
Hier erläutern wir ein paar Details, die öfter, besonders am Anfang, falsch gemacht werden, und ein paar Tips und Workarounds, alles im Rahmen des Standardverhaltens von NPS-Dateien.
Auflistung von Lehrveranstaltungen
Sie wollen Ihre Lehrveranstaltungen (LV) als Tabelle darstellen:
Z.B. fuer 1 Semester:
Sie bauen einen fuKurseOrdner. Der enthaelt meist fuKurseDoks (=einzelne LVs) und/oder einen oder mehr fuKurseordner, der aber - Achtung! - darf keine weiteren Kurse enthalten, sondern er repraesentiert nur
eine LV mit viel material, deswegen als Ordner.
(Ein fuKurseOrdner ist also ENTWEDER eine Behaelter fuer eine sammlung von zusammengehoerenden LVs, ODER er repraesentiert selbst
eine LV mit Materialien zu dieser LV in diesem Ordner)
Fuer mehrere Semester:
der fuKurseOrdner "lehrveranstaltungen" enthaelt mehrere fuKurseOrdner "SS06", WS0607" und "SS07". Diese wiederum enthalten die jeweiligen LVs. In diesem Fall wird in "lehrveranstaltungen" nur eine Link-Liste der Titel der Unterordner angezeigt. Deswegen nicht sehr schoen.
Schoener, geringfuegig aufwendiger:
in PARALLELEN fuKurseOrdnern "SS06" "WS0607" "SS07" anlegen und jeweils im Abstract oder Haupttext eines jeden dieser Ordner auf zukuenftige und vergangene LV-ordner einen manuellen Link legen. Dazwischen werden dann die LVs des aktuellen Ordners schoen aufgelistet.
"Schoen"? na ja. "lieblos", sagte Philip. Wenn spaeter mal zeit ist, koennte peter versuchen, eine Vorlage fuer uns zu bauen, die anstelle der fuDozentenListe (Quadrat rechts) ein Bildchen oder Logo oder so darstellt.
Eigenentwicklung
Eigenentwicklungen sind eigene Layouts, die auf gegebener Infrastruktur/Klassen aufsetzen. Das Rendering des Inhalts hat keinen Bezug zu den Orginalvorlagen. Dem entsprechend sind sie auch unabhängig von etwaigen Änderungen von Betreiberseite, sofern die Klassen nicht verändert wurden.
Eigenentwicklungen sind i.d.R. ab-/anschaltbar.
Abonnement von Nachrichten/Terminen anderer Ordner
- Abstrakt: Der Inhalt des rechts dargestellten Containers kann über die bestehende Produktmenge (Links)x(News)x(Dates) hinaus erweitert werden: Damit kann eine Auswahl verschiedener Nachrichten-/Terminquellen für einen Teilbaum definiert werden.
- Abhängigkeiten: customContainerRight
- Vorlagen: impNewsSubscribtion, impDatesSubscribtion, impNewsBox, impDatesBox
- Klassen: fuNewsOrdner, fuTerminOrdner
- Konfigurieren:
- Vorlage imp(Dates|News)Subscribtion lokalisieren bzw. für den jeweiligen Teilbaum erzeugen (kopieren ist nicht empfehlenswert, da dann die Rechte der Ausgangsdatei übernommen werden).
- Die Vorlage gemäß /_mi/impDatesSubscribtion bzw. /_mi/impNewsSubscribtion konfigurieren. Beispiel: inf/arbeitsgruppen/ag-modellvorlage: hier werden die Standard-Dates dargestellt, es ist also keine lokale impDateSubsription vorhanden, aber u.a. die News der test-ag-zick importiert, über den 3-zeiligen-npsobj-Eintrag in der lokalen impNewsSubscription.
Abonnement kündigen
- im eigenen oder uebergeordneten Verzeichnis (z.B. inf) stehen Layouts impDates/News/Subscription, deren Eigenschaften an AG-se weitervererbt werden. Man muss also in seinem Verzeichnis:
- ein neues Layout einrichten (Datei, neues Layout), und sie impDates(und/oder News)Subscription nennen,
- und darein die Texte (Skript) von der Ursprungsdatei reinkopieren (umstaendliche Prozedur, damit man die Rechte an der neuen Datei hat)
- und dann in dem Skript die unerwünschten "< npsobj >.... < /npsobj >" entfernen.
Automatische Auflistung von Ordnerinhalten
- Abstrakt: Manchmal braucht man eine Übersicht über eine Sammlung von Ressourcen/Dokumenten. Um die Liste nicht händisch zu pflegen und das Corporate Design zu erhalten, wird diese Modifikation verwendet.
- Abhängigkeiten: impContent, impBasisOrdner
- Vorlagen: impDynamicBaseFolder
- Klassen: fuBasisOrdner
- Aktiviert (default)/Deaktivieren:
- Einen Ordner/Dokument erstellen, der tiefer im Baum liegt, als es die Navigation anzeigen kann. Derzeit kann die Navi drei Ebenen darstellen.
- fuAnzeigeInNavi=ja setzen
- Um Dokumente anzeigen zu lassen, den Hauptinhalt leer lassen.
- Konfigurieren:
- Ressourcen/Dokumente in den Ordner kopieren/erstellen.
- Titel der Ressourcen/Dokumente sinnvoll vergeben. Wird als Aufzählungselement/list-item verwendet.
- (optional) fuAbstract der Ressourcen/Dokumente eingeben. Wird hinter dem Titel in der automatischen Auflistung dargestellt.
- (optional) fuAbstract des Ordners eingeben. Wird vor der Auflistung dargestellt.
Automatischer Titel bei fuBasisOrdner und fuBasisDok
- Abstrakt: Bei den Standarddokumenten gibt es keine Korrelation zwischen Titel und Inhalt. Hier wird das Feld "title" als H1 am Kopf des Dokuments dargestellt, gefolgt von fuAbstract und body. Basis-Ordner verhalten sich ebenso, nutzen aber noch "Automatische Auflistung von Ordnerinhalten".
- Abhängigkeiten: impDynamicBaseFolder
- Vorlagen: impBasisDok, impBasisOrdner
- Klassen: fuBasisDok, fuBasisOrdner
Mitarbeiterverzeichnis mit Kopplung an die Account-Datenbank des Fachbereichs. Z.Zt. (Jan 07) deaktiviert.
- Abstrakt: die Verwaltung von Informationen an mehreren Orten ohne automatische Synchronisation ist immer ein Problem. Mitarbeiter zusätzlich im Webauftritt zu pflegen wollen wir vermeiden. Statt dessen werden in NPS Zuständigkeiten/Tätigkeiten/Rollen definiert, die sich in ihrem Charakter nicht/selten ändern. Die Zuordnung zwischen Tätigkeit und Person(en) erfolgt über Gruppen für Organisationsstrukturen im Active Directory des Fachbereichs.
- Weitere Dokumentation: GruppenUndListen, UserinfoSyntax
- Abhängigkeiten: impContent, customJavaScript
- Vorlagen: impUseDynamicStaff, impDynamicStaffConfig, impDynamicStaffDirectory, impDynamicStaffRole, impDynamicStaffRoleAction
- Klassen: fuMitarbOrdner, fuMitarbDok
- Externe Ressourcen:
- Active Direcory (pcpool.mi.fu-berlin.de) als Datenquelle
- siehe Downloads, MMC Snapin zum bearbeiten der Gruppen/ändern der eigenen Benutzerdaten
- Proxy+JavaScript zum Einspeisen der Inhalte: /people/userinfo
- Aktiviert (default)/Deaktivieren:
- NPS: Vorlage impUseDynamicStaff lokalisieren bzw. für den jeweiligen Teilbaum erzeugen.
- NPS: Die Variable impVarUseDynamicStaff auf true|false setzen.
- Konfigurieren:
- NPS: Ordner der Objekt-Klasse fuMitarbOrdner lokalisieren, ggf. erzeugen. ACHTUNG: kein zweiter Ordner dieses Typs darf auf der gleichen Ebene liegen! Nur darunter und darüber.
- AD: Organisationsgruppe ("org_groupxyz") ggf. anlegen, Mitglieder eintragen. Howto auf Anfrage (MI-Keyuser Zick, oder staff).
- NPS: Dokument der Objekt-Klasse fuMitarbDok anlegen und mit dem Namen der Organisationsgruppe "org_groupxyz" benennen.
- Titel eingeben. Wird als <h1> dargestellt.
- ACHTUNG: Das Feld fuName muss leer bleiben! Sonst wird die Rolle nicht angezeigt.
- Optional: fuAbstract und/oder Hauptinhalt eingeben.
- fuAbstract wird vor der Liste ausgegeben.
- Haupinhalt wird nach der Liste ausgegeben.
Zusammenstellung von Mitgliedslisten aus fuMitarbDoks (Standardverhalten)
1. Personen koennen per Hand geschrieben werden (nicht empfehlenswert!). Ein Beispiel:
_mi/mi/fbr/
2. So ist's richtig: "Feste" Mitglieder, einfacher Mitarbeiterordner : es gibt, typischerweise fuer Arbeitsgruppen, die Moeglichkeit, einen fuMitarbOrdner anzulegen und darin fuMitarbDoks anzulegen (in denen koennen auch beliebig viele Details ueber diese Person stehen).
Beispiel: _mi/inf/groups/ag-tech/mitglieder Schiller ist da zu finden.
Da JEDE Person in irgendEINER AG oder FBV oder Service-Bereich beheimatet ist, ist es eindeutig, wo die Personen-Datei physikalisch hingehoert - sonst entsteht Doppelpflegeaufwand.
Wenn eine Person (z.B. Sekretärinnen) Mitglied in zwei AGs ist, muss sie oder die Profs entscheiden, in welcher sie auf den Webseiten beheimatet ist, und die andere AG verfährt nach der Prozedur, die im nächsten Abschnitt beschrieben ist.
Zusammenstellung von Mitgliedslisten aus fuMitarbDoks, die nicht (alle) im gleichen Verzeichnis liegen
Problemzone: temporäre Mitgliedschaft, Doppelmitgliedschaft.
- in dem fuMitarbordner ein Layout impUseDistributedMemberList anlegen mit dem Quelltext, der in _mi/impUseDistributedMemberList liegt und den Eintrag "false" auf "true" umschreiben (Bemerkung 1: … oder impUseDistributedMemberList von irgendwoher kopieren mit dem Risiko, dass man daran keine Aenderungsrechte hat. Bemerkung 2: Um Layouts zu sehen und anlegen zu koennen, muss man Ansicht→Dateitypen→Layouts und Ansicht→Darstellung→Layout getickt haben).
- In den Hauptinhalt des fuMitarbOrdners schreibt man eine Liste der gewuenschten Personen in beliebigem Format "Chef, Susi, Malte, Peter-D,STB, Prof.Dr.XYZ ...".
- Auf die so skizzierten Personenbezeichnungen fuegt man mit der gewohnten NPS-Funktion ein Link zu dem jeweiligen fuMitarbDok ein, und jetzt kommen die zwei einzig wichtigen Stellen:
- der TITEL erhaelt die Bezeichnung, die die Liste strukturieren soll, z.B. "Professoren", "WiMi", "Freie Mitarbeiter". Alle gelinkten Personen, die denselben TITEL haben, werden in dem entsprechenden Tabellenabschnitt zusammengefasst und alphabetisch aufgelistet.
- Die Reihefolge der TITELeintraege bestimmt die Reihefolge in der Tabellendarstellung, und alle Personen mit demselben TITEL muessen hintereinander geschrieben werden, wenn gewuenscht auch alphabetisch. Also zuerst vermutlich alle "Professoren", dann alle "WiMis" etc.
- Zum nachtraeglichen Aendern des TITELs muss man leider von der Wysiwyg-Ansicht in die Quelltest-Ansicht umschalten und z.B. alle Eintraege "WiMis" durch "Wissenschaftliche Mitarbeiter" ersetzen, aber das geht schnell mit edit → find-and-replace.
- ein gutes Beispiel: http://www.inf.fu-berlin.de/head/index.html. Oder auf dem CMS-Server: _mi/inf/head. Man kann im CMS-Hauptinhalt sehen, dass beliebige Notizen reingeschrieben sind, trotzdem werden nur die verlinkten Dokumente ausgewertet und dargestellt.
- der fuMitarbOrdner selbst kann noch mit einem Abstract-Text gefüllt werden.
Textbausteine und Darstellung von Inhalten aus anderen Ressourcen
- Abstrakt: Ziel ist es, den Inhalt einer Seite an mehreren Stellen, d.h. auf mehreren anderen Seiten, als Textbaustein einzubinden und dabei nur an einem Ort (=der referierten Seite) inhaltlich pflegen zu müssen.
Dies erreicht man durch Verwendung von
fuLinksZumThema auf den referenzierenden Seite. Damit diese fuLinksZumThema nicht einfach nur als Links auf der rechten Seite (mit Titel und Abstract) erscheinen, während das Hauptfenster leer bleibt, muss ich einen Hinweis auf die
Vorlage impUseLinkedContent einbauen. Die Vorlage impUseLinkedContent muss dafür im Ordner der referenzierenden Seite liegen und die Variable auf
true gesetzt werden. Dann erscheint auf der referenzierenden Seite auch wirklich im Hauptfenster der Inhalt der referenzierten Seite als Textbaustein.
Man kann auch mehrere Textbausteine aneinander hängen. Einfach die fuLinksZumThema hintereinander tun (um eine alphabetische Sortierung nach Titeln zu umgehen, im Bearbeiten-Dialog "Basisfelder" des darzustellenden fuBasisOrdner/-Dok die Schaltfläche "Linkliste bearbeiten" auswählen und das Feld "Titel" mit einem numerischen Wert versehen).
ACHTUNG: "Links zum Thema" werden damit unmöglich, da das Feld wie beschrieben zweckentfremdet wird. In Zukunft soll dafür ein eigenes Feld verfügbar sein.
- Abhängigkeiten: impContent
- Vorlagen: impUseLinkedContent, impLinkedContent
- Klassen: fuBasisOrdner, fuBasisDok
- Aktivieren/Deaktiviert (default):
- Vorlage impUseLinkedContent lokalisieren bzw. für den jeweiligen Teilbaum erzeugen.
- Die Variable impVarUseLinkedContent auf true|false setzen.
- Konfigurieren:
- Im Bearbeiten-Dialog des darzustellenden fuBasisOrdner/-Dok, Basisfelder, fuLinksZumThema beliebige anzufügende Dokumente/Ordner eintragen.
- (Nachprüfen!) Die Titel der Textbausteine werden als <h2> eingefügt.
- Der Inhalt der Textbausteine wird gemäß deren Orginalvorlage geändert.
- (opional) Sortierung: Im selben Dialog das Feld "Titel" mit einem numerischen Wert versehen.
- Primär: Wert in self.fuLinksZumThema.Titel (Links zum Thema bearbeiten)
- Sekundär: Alphabetische Sortierung über das self.titel (Basisoptionen)
Vererbbare Banner für beliebige Ordner
- Abstrakt: Jeder Ordner kann einen Banner erhalten. Ist kein Eintrag für den Ordner vorhanden, wird in der zentralen Bilderablage nach Einträgen der übergeordneten Ordner nach einem Eintrag gescuth und verwand. Das ursprüngliche Betreiberkonzept hat ein Banner pro Auftritt vorgesehen.
- Abhängigkeiten: keine
- Vorlagen: customImage
- Klassen: alle Dokumente und Ordner
- Aktiviert (default): Das Verhalten ist nicht abschaltbar.
- Konfigurieren:
- Ein passendes Bild mit den Dimensionen 584x80 Pixel in die zentrale Bilderablage legen. Zum 17.10.2006 ist dies /_mi/imp/banner/.
- Name des Banners: der Pfad ab dem zentralen Institutsordner (mi, inf, math, imp) bis zum Zielordner, Unterstrich als Pfadtrennzeichen verwenden.
- Beispiel 1: Ordner /_mi/inf/groups, Bannername inf_groups, Bannertitel "Arbeitsgruppen im Institut für Informatik"
- Beispiel 2: Ordner /_mi/inf/en/groups, Bannername inf_en_groups, Bannertitel "Workgroups at the Institute of Computer Science"
Vererbbare Bezeichnungen im Identitätsbereich
- Abstrakt: Jeder Ordner kann links neben dem Banner einen beschreibenden Text erhalten. Das ursprüngliche Betreiberkonzept hat einen Text als Bild pro Auftritt vorgesehen.
- Vorlagen: customIdentity
- Klassen: alle Dokumente und Ordner
- Aktiviert (default): Das Verhalten ist nicht abschaltbar.
- Konfigurieren: In einem beliebigen Ordner die Navigation neu beginnen, wie weiter unten beschrieben in "Startknoten der Navigation (links) neu setzen"
- Ist der Ordner ein fuBasisOrdner, wird der Feld title verwendet.
- Ist der Ordner ein fuInstitutionOrdner, wird das Feld fuInstitution verwendet.
((beispiel titel))
- Abstrakt: …
- Vorlagen: imp*
- Klassen: fu*
- Externe Ressourcen: …
- Aktiviert (default)/Deaktivieren:
- Vorlage imp* lokalisieren bzw. für den jeweiligen Teilbaum erzeugen.
- Die Variable impVarUse* auf true|false setzen.
- Konfigurieren:
- …
Modifikationen
Modifikationen sind Derivate der vom CMS Betreiber publizierten Vorlagen. Im Gegensatz zu Eigenentwicklungen sollten diese synchron gehalten werden.
Benutzerkonfiguration
- Bemerkung : Dies wird von normalen Benutzern nicht verwendet.
- Abstrakt: Vorlagen werden über eine zentrale Konfiguration customConfig gesteuert. Da NPS keine Vererbung beherrscht, sollte man nicht direkt customConfig ersetzen (indem man eine eigene Vorlage mit diesem Namen erzeugt).
- Generell werden Vorlagen ausgehend von aufrufenden Dokument gesucht. Wird eine Vorlage mit dem Namen gefunden, stoppt die Ausführung. Weitere Vorlagen des selben Namens werden nicht gesucht und kritische Variablen werden nicht gesetzt.
- Vorlagen: customSubConfig, imgGetLayout
- Klassen: alle
- Konfigurieren:
- /_mi/customConfig lesen und verstehen.
- /_mi/(inf|math|imp|mi)/customSubConfig lesen und verstehen.
- /_mi/impGetLayout lesen und verstehen
- Für einen Teilbaum eine eigene customSubConfig erzeugen und …
- über impGetLayout die übergeordnete customSubConfig ausführen lassen
- eigene Variablen setzen und/oder Templates ausführen.
Benutzerdefinierte Ordner- und Dokumentenvorlagen
- Abstrakt: Eigenentwicklung müssen dem CMS mitgeteilt werden. Diese werden in der Vorlage impContent eingetragen. WICHTIG: Als Fallback für alle unbehandelten Vorlagen wird fuContent aufgerufen. Daher darf impContent nie von fuContent aufgerufen werden (endlose Rekursion), sondern muss in mastertemplate registriert worden sein.
- Abhängigkeiten: fuContent, mastertemplate
- Vorlagen: impContent
- Klassen: alle in impContent spezifizierten
- Konfigurieren: /_mi/impContent bearbeiten
- Abstrakt: Eigene Skripte müssen im HEAD-Element deklariert werden.
- Vorlagen: customJavaScript
- Klassen: alle
- Konfigurieren:
- Die Vorlage lokalisieren und den Inhalt verstehen
- Eine eigene Vorlage für den Teilbaum erzeugen und benötigte Skripte an die Liste varCustomJavaScript anhängen.
Mikronavigation, die domänenübergreifend (mi←→(inf|math|imp)) funktioniert
- Abstrakt: Thematisch/logisch ist MI den Domänen INF, IMP und MATH übergeordnet. Die Domönen liegen aber physikalisch nebeneinander. Die logische Verknüpfung erfolgt über die Mikronavigation.
- Vorlagen: impNavigationToRoot
- Klassen: alle
Startknoten der Navigation (links) neu setzen
- Abstrakt: Der Auftritt eines Teilbereichs kann so weit vom Rest des Instituts abgetrennt werden, dass nur die Mikronavigation die übergeordneten Strukturen erkennen lässt.
- Abhängigkeiten: mastertemplate, fuNavigationLeft, customNavigation
- Vorlagen: impSetNavigationContext
- Klassen: alle
- Konfigurieren:
- Entweder
- Den Startknoten vor Objekt-Klasse fuInstitionOrdner
- Oder
- Vorlage impSetNavigationContext lokalisieren bzw. für den jeweiligen Teilbaum erzeugen.
- Die Vorlage gemäß /_mi/impSetNavigationContext konfigurieren.
Vererbte Nachrichten- und Termin-Ordner
- Abstrakt: In jedem beliebigen Order kann jetzt ein Ordner der Klasse fuTerminOrdner bzw. fuNewsOrdner gesetzt werden, der dann für den Teilbaum im rechten Container dargestellt wird.
- Abhängigkeiten: customContainerRight
- Vorlagen: impNewsContext, impDatesContext
- Klassen: fuNewsOrdner, fuTerminOrdner
- Konfigurieren: always on
((beispiel titel))
- Abstrakt: …
- Vorlagen: imp*
- Klassen: fu*
- Externe Ressourcen: …
- Konfigurieren:
- …
Wunschliste für weitere Features
Zur Zeit keine expliziten Wünsche.
Zu evaluieren
- Abstrakt: Inhalte der Studiengänge sollen vergleichbar sein. Dazu muss man die Erfassung der Inhalte Formalisieren und die Themen kategorisieren. Ziel ist es, zwei Browserfenster nebeneinander zulegen und parallel zwei beliebige Stundiengänge abzusurfen. Die Strukturen/Ordner wären bei beiden nahezu gleich und die Unterschiede und ggf. der Pflegebedarf sofort sichtbar.
- Abhängigkeiten: impContent
- Vorlagen: impFormalisedContent, impUseFormalisedContent
- Klassen: fuBasisOrdner, fuBasisDok
- Aktivieren/Deaktiviert(default):
- Vorlage impUseFormalisedContent lokalisieren bzw. für den jeweiligen Teilbaum erzeugen. Fertig!
- Konfigurieren:
- In der Wurzel des Teilbaums einen Ordner "_sammlung" erstellen, sowie die zu formalisierenden Oberthemen.
- Sammelordner und Oberthemenordner mit Kategorien- bzw. Themenordnern befüllen. ACHTUNG: die Ordnernamen müssen gleich sein. Es findet eine 1:1-Abbildung zwischen Thema und Kategorie statt. Die Unterscheidung der Oberthemen erfolgt am Ende des Kategienbaums.
- Dokumente in Kategorien werden in den Oberthemen gemäß ihrer Zugehörigkeit zu Unterthemen dargestellt.
- Dokmente mit dem Namen "_default" werden in den nächst-darüber-liegenden Ordnern dargestellt. Gemeinsame Inhalte können so vererbt werden.
- beispiel
- oberthema1
- oberthema2
- unterthema1 (← dokument1, dokument2)
- _sammlung
- studiengaenge
- bioinf
- pruefung (← _default, dokument1, dokument2)
- inf
- pruefung (← dokument3)
- zulassung (← _default, dokument4)
- _sammlung
Downloads
Glossar
- Active Directory
- LDAP-verwandter Persistenzdienst, der bei Windows Betriebssystemen ab 2000 u.a. für die Benutzer-, Gruppen- und Ressourcenverwaltung verwendet wird.
- Document
- Objekt-Typ einer Datei in NPS, die als Dokument dargestellt wird und in HTML, XML/XSLT darstellbare Inhalte aufweist. Sie enthält keinen NPS-Code und sollte nur in Ausnahmefällen höchstens den NPS-Aufruf eines Templates enthalten.
- Gruppen für Datei- und Systemrechte
- Fachbereichskonvention; Gruppen von Benutzern, die spezifische Rechte auf Datei-Ordner erhalten. Syntax: acl_<gruppe>[_<funktion>]
- Gruppen für Organisationsstrukturen
- Fachbereichskonvention; Gruppen von Benutzern, die in die hierachischen Strukturen der Institute, Arbeitsgruppen, Gremien u.a. aus Sicht der jeweiligen Institution zusammengefasst werden. Syntax: org_<gruppe>[_<funktion>]
- Gruppen für Verwaltungsstrukturen
- Fachbereichskonvention; Gruppen von Benutzern, die gemäß ihres Angestellten- bzw. Mitgliedsstatus aus Sicht der FBV zusammengefasst werden. Syntax: verw_<gruppe>[_<funktion>]
- Layout
- Objekt-Typ einer Datei in NPS, die Steuercode in der NPS-Sprache und ggf. auch Darstellungscode (z.B. HTML) enthält. Sie entscheidet, wo etwas wie dargestellt wird.
- Objekt-Typ
- ein Element aus der Auswahl document, generic, template und publication.
- Objekt-Klasse
- eine beliebige Ansammlung von Feldern einer festen Auswahl primitiver Klassen. Sie werden im Editor als Formularfelder angezeigt. Nur vom Betreiber einrichtbar!
- Publication
- Objekt-Typ eines Ordners, der Dokumente, Ressourcen und Vorlagen enhalten kann, aber auch selber Inhalte darstellen kann.
- Generic
- Objekt-Typ einer Datei, die nicht in HTML, XML/XSLT darstellbaren Inhalt enthält. Gebräuchliches Synonym ist Ressource.
- Template
- eine Vorlage, dass über den Aufruf <npsobj insertvalue="template" name="template"/> ausgeführt wird.
- Vorlage
- eine Datei vom Objekt-Typ layout.