Módosítások

Attribútum feloldás

3 199 bájt hozzáadva, 2007. augusztus 8., 13:44
SimpleAttributeDefinition
Mindkét függőség megadásakor a ''requires'' XML attribútummal hivatkozhatunk a DataConnector vagy az AttributeDefinition ''id''-jére. Ebből következik az is, hogy minden attribútum definíciónak egyedi ''id'' mezője kell, hogy legyen.
=== SimpleAttributeDefinition ===
Ezzel a pluginnal egyszerű műveleteket végezhetünk az adatforrásokból származó értékeken (vagy akár átalakítás nélkül is továbbíthatjuk). Az alábbi attribútumokkal rendelkezik:
* ''id'': ezzel lehet rá függőségekben hivatkozni, ill. az attribútum forrásának megállapításához is felhasználható. Az [[Assertion]]-ben ennek az értéke szerepel attribútum névként.
* ''sourceName'': ezzel lehet explicit módon meghatározni a forrás nevét
* ''smartScope'': ha az érték nem scope-olt (azaz nem <code>valami@valahol</code> formátumú), akkor az attribútum scope-ja a <code>smartScope</code> lesz, ellenkező esetben a scope értéke a "@ utáni rész" lesz (pl.: <code>valahol</code>).
:: <small>(Leegyszerűsítve) egy [[Assertion]]-ben egy attribútum így adható meg: attribútum név + scope + érték(ek)</small>
* ''allowEmpty'': ez a boolean paraméter adja meg, hogy az üres érték elfogadható-e. Alapértelmezett értéke <code>false</code>, azaz ha nincs érték, akkor az [[Assertion]]-be nem kerül bele az attribútum. Ha <code>true</code>, akkor érték nélkül kerül bele.
 
A ''sourceName'' mezőt nem kötelező megadni, mert a forrás attribútum neve megadható az ''id'' paraméterben is. A forrás attribútum nevének meghatározása a következő sorrendben történik:
# Ha meg van adva a ''sourceName'', akkor az adat konnektortól ezt az attribútumot kapja meg
# Ha van olyan - az adat konnektor által nyújtott - attribútum, amely az ''id'' mezővel teljesen megegyezik, akkor annak az értékét használja
# Egyébként az adat konnektortól az ''id'' mezőben megadott paraméter utolsó "''':'''" vagy "'''/'''" jel utáni részének megfelelő attribútumot kérdezi le.
 
'''Példa 1.''': a ''directory'' nevű adat konnektortól lekérdezi a "cn" attribútumot, majd ennek értékét az <code>urn:mace:dir:attribute-def:cn</code> attribútumban küldi el a másik félnek.
<source lang="xml">
<SimpleAttributeDefinition id="urn:mace:dir:attribute-def:cn">
<DataConnectorDependency requires="directory"/>
</SimpleAttributeDefinition>
</source>
 
 
'''Példa 2.''': a ''directory'' nevű adat konnektortól lekérdezi a ''displayName'' attribútumot, majd ennek értékét az <code>urn:mace:dir:attribute-def:<b>cn</b></code> (!) attribútumban küldi el a másik félnek.
<source lang="xml">
<SimpleAttributeDefinition id="urn:mace:dir:attribute-def:cn" sourceName="displayName">
<DataConnectorDependency requires="directory"/>
</SimpleAttributeDefinition>
</source>
 
 
'''Példa 3.''': a (már korábban feloldott) <code>urn:mace:dir:attribute-def:uid</code> attribútumot (amennyiben az nem scope-olt) kiegészíti az "niif.hu" scope-pal, és ezt adja át <code>urn:mace:dir:attribute-def:eduPersonPrincipalName</code> néven. Ha az uid értéke <code>valaki@valahol</code> formátumú, akkor az átadott érték a <code>valaki</code> lesz, a scope pedig <code>valahol</code>.
<source lang="xml">
<SimpleAttributeDefinition id="urn:mace:dir:attribute-def:eduPersonPrincipalName" smartScope="niif.hu">
<AttributeDependency requires="urn:mace:dir:attribute-def:uid"/>
</SimpleAttributeDefinition>
</source>
 
=== CompositeAttributeDefinition ===
=== RegExpAttributeDefinition ===

Navigációs menü