# PIP Engine Definition
#
xacml.pip.engines=csv1,csv2,hyper1,sql1,ldap1

csv1.classname=org.apache.openaz.xacml.std.pip.engines.csv.CSVEngine
csv1.name=Master
csv1.description=Sean Lahman Basebase stats - Player names, DOB, and biographical info
csv1.issuer=org.apache.openaz:xacml:test:csv
csv1.source=../XACML-TEST/testsets/pip/configurable-csv/adminDB/Master.txt
csv1.maxsize=4000000
csv1.delimiter=,
csv1.quote="
csv1.skip=0

csv1.resolvers=data

csv1.resolver.data.classname=org.apache.openaz.xacml.std.pip.engines.csv.ConfigurableCSVResolver
csv1.resolver.data.name=Player Resolver
csv1.resolver.data.description=This resolver finds player information in the Master table.
csv1.resolver.data.fields=firstname,lastname,deathyear,deathmonth,deathday,debut,finalgame
csv1.resolver.data.field.firstname.column=16
csv1.resolver.data.field.firstname.id=org.apache.openaz:xacml:test:csv:subject:firstname
csv1.resolver.data.field.firstname.datatype=http://www.w3.org/2001/XMLSchema#string
csv1.resolver.data.field.firstname.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.field.lastname.column=17
csv1.resolver.data.field.lastname.id=org.apache.openaz:xacml:test:csv:subject:lastname
csv1.resolver.data.field.lastname.datatype=http://www.w3.org/2001/XMLSchema#string
csv1.resolver.data.field.lastname.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.field.deathyear.column=10
csv1.resolver.data.field.deathyear.id=org.apache.openaz:xacml:test:csv:subject:deathyear
csv1.resolver.data.field.deathyear.datatype=http://www.w3.org/2001/XMLSchema#integer
csv1.resolver.data.field.deathyear.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.field.deathmonth.column=11
csv1.resolver.data.field.deathmonth.id=org.apache.openaz:xacml:test:csv:subject:deathmonth
csv1.resolver.data.field.deathmonth.datatype=http://www.w3.org/2001/XMLSchema#integer
csv1.resolver.data.field.deathmonth.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.field.deathday.column=12
csv1.resolver.data.field.deathday.id=org.apache.openaz:xacml:test:csv:subject:deathday
csv1.resolver.data.field.deathday.datatype=http://www.w3.org/2001/XMLSchema#integer
csv1.resolver.data.field.deathday.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.field.debut.column=25
csv1.resolver.data.field.debut.id=org.apache.openaz:xacml:test:csv:subject:debut
csv1.resolver.data.field.debut.datatype=http://www.w3.org/2001/XMLSchema#date
csv1.resolver.data.field.debut.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.field.finalgame.column=26
csv1.resolver.data.field.finalgame.id=org.apache.openaz:xacml:test:csv:subject:finalgame
csv1.resolver.data.field.finalgame.datatype=http://www.w3.org/2001/XMLSchema#date
csv1.resolver.data.field.finalgame.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv1.resolver.data.parameters=playerid
csv1.resolver.data.parameter.playerid.column=1
csv1.resolver.data.parameter.playerid.id=urn:oasis:names:tc:xacml:1.0:subject:subject-id
csv1.resolver.data.parameter.playerid.datatype=http://www.w3.org/2001/XMLSchema#string
csv1.resolver.data.parameter.playerid.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject

csv2.classname=org.apache.openaz.xacml.std.pip.engines.csv.CSVEngine
csv2.name=Appearances
csv2.description=Sean Lahman Basebase stats - Player appearances for a team in a given year.
#csv2.issuer=
csv2.source=../XACML-TEST/testsets/pip/configurable-csv/adminDB/Appearances.txt
csv2.maxsize=4000000
csv2.delimiter=,
csv2.quote="
csv2.skip=0

csv2.resolvers=data

csv2.resolver.data.classname=org.apache.openaz.xacml.std.pip.engines.csv.ConfigurableCSVResolver
csv2.resolver.data.name=Appearance Resolver
csv2.resolver.data.description=This resolver returns all the appearances for a player from the appearance table.
csv2.resolver.data.fields=appearance
csv2.resolver.data.field.appearance.column=0
csv2.resolver.data.field.appearance.id=org.apache.openaz:xacml:test:csv:subject:appearance
csv2.resolver.data.field.appearance.datatype=http://www.w3.org/2001/XMLSchema#integer
csv2.resolver.data.field.appearance.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject
csv2.resolver.data.field.appearance.issuer=org.apache.openaz:xacml:test:csv

csv2.resolver.data.parameters=playerid
csv2.resolver.data.parameter.playerid.column=3
csv2.resolver.data.parameter.playerid.id=urn:oasis:names:tc:xacml:1.0:subject:subject-id
csv2.resolver.data.parameter.playerid.datatype=http://www.w3.org/2001/XMLSchema#string
csv2.resolver.data.parameter.playerid.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject
#csv1.resolver.data.parameter.playerid.issuer=

hyper1.classname=org.apache.openaz.xacml.std.pip.engines.csv.HyperCSVEngine
hyper1.name=World Marriage Age Limits
hyper1.description=Minimum age for female/male marriages with or without their parental consent.
hyper1.source=../XACML-TEST/testsets/pip/configurable-csv-hyper/marriage.csv
hyper1.target=marriage
hyper1.definition=country VARCHAR(80) PRIMARY KEY, wofemale INT, womale INT, wfemale INT, wmale INT, year INT, source VARCHAR(20)

hyper1.resolvers=age_consent

hyper1.resolver.age_consent.classname=org.apache.openaz.xacml.std.pip.engines.jdbc.ConfigurableJDBCResolver
hyper1.resolver.age_consent.name=Ages
hyper1.resolver.age_consent.description=This returns all the age's for consent or no consent for a country.
hyper1.resolver.age_consent.select=SELECT wofemale,womale,wfemale,wmale FROM marriage WHERE country=?
hyper1.resolver.age_consent.fields=wofemale,womale,wfemale,wmale

hyper1.resolver.age_consent.field.wofemale.id=org.apache.openaz:xacml:test:csv:country:no-consent:female
hyper1.resolver.age_consent.field.wofemale.datatype=http://www.w3.org/2001/XMLSchema#integer
hyper1.resolver.age_consent.field.wofemale.category=org.apache.openaz:xacml:test:csv:category:country
hyper1.resolver.age_consent.field.wofemale.issuer=org.apache.openaz:xacml:test:csv

hyper1.resolver.age_consent.field.womale.id=org.apache.openaz:xacml:test:csv:country:no-consent:male
hyper1.resolver.age_consent.field.womale.datatype=http://www.w3.org/2001/XMLSchema#integer
hyper1.resolver.age_consent.field.womale.category=org.apache.openaz:xacml:test:csv:category:country
hyper1.resolver.age_consent.field.womale.issuer=org.apache.openaz:xacml:test:csv

hyper1.resolver.age_consent.field.wfemale.id=org.apache.openaz:xacml:test:csv:country:consent:female
hyper1.resolver.age_consent.field.wfemale.datatype=http://www.w3.org/2001/XMLSchema#integer
hyper1.resolver.age_consent.field.wfemale.category=org.apache.openaz:xacml:test:csv:category:country
hyper1.resolver.age_consent.field.wfemale.issuer=org.apache.openaz:xacml:test:csv

hyper1.resolver.age_consent.field.wmale.id=org.apache.openaz:xacml:test:csv:country:consent:male
hyper1.resolver.age_consent.field.wmale.datatype=http://www.w3.org/2001/XMLSchema#integer
hyper1.resolver.age_consent.field.wmale.category=org.apache.openaz:xacml:test:csv:category:country
hyper1.resolver.age_consent.field.wmale.issuer=org.apache.openaz:xacml:test:csv

hyper1.resolver.age_consent.parameters=country
hyper1.resolver.age_consent.parameter.country.id=org.apache.openaz:xacml:test:csv:country:name
hyper1.resolver.age_consent.parameter.country.datatype=http://www.w3.org/2001/XMLSchema#string
hyper1.resolver.age_consent.parameter.country.category=org.apache.openaz:xacml:test:csv:category:country
#hyper1.resolver.age_consent.parameter.country.issuer=

sql1.classname=org.apache.openaz.xacml.std.pip.engines.jdbc.JDBCEngine
sql1.name=World
sql1.description=World Database from MySQL website. Copyright Statistics Finland, http://www.stat.fi/worldinfigures.
# This will be the default issuer for the resolvers. NOTE: Issuer only used for attributes provided by the engine.
sql1.issuer=org.apache.openaz:xacml:test:sql
#
# This is the configuration for JDBC. You will have to setup the database and run the data\world*.sql script to
# create the tables and load the data. 
#
sql1.type=jdbc
sql1.jdbc.driver=org.postgresql.Driver
sql1.jdbc.url=jdbc:postgresql://localhost:5432/world
sql1.jdbc.conn.user=sa
sql1.jdbc.conn.password=
#
# This is the configuration for JNDI datasource.
#
#sql1.type=jndi
#sql1.datasource=jdbc/xacml

sql1.resolvers=langer

sql1.resolver.langer.classname=org.apache.openaz.xacml.std.pip.engines.jdbc.ConfigurableJDBCResolver
sql1.resolver.langer.name=Language
sql1.resolver.langer.description=This returns the language for a city.
sql1.resolver.langer.select=SELECT language FROM city INNER JOIN countrylanguage ON city.countrycode = countrylanguage.countrycode WHERE name=?
sql1.resolver.langer.fields=language
sql1.resolver.langer.field.language.id=org.apache.openaz:xacml:test:sql:resource:city:language
sql1.resolver.langer.field.language.datatype=http://www.w3.org/2001/XMLSchema#string
sql1.resolver.langer.field.language.category=urn:oasis:names:tc:xacml:3.0:attribute-category:resource
#You can override the default issuer that is set in the JDBCEngine definition if you want.
#sql1.resolver.langer.field.language.issuer=org.apache.openaz:xacml:test:sql
sql1.resolver.langer.parameters=name
sql1.resolver.langer.parameter.name.id=urn:oasis:names:tc:xacml:1.0:resource:resource-id
sql1.resolver.langer.parameter.name.datatype=http://www.w3.org/2001/XMLSchema#string
sql1.resolver.langer.parameter.name.category=urn:oasis:names:tc:xacml:3.0:attribute-category:resource


ldap1.classname=org.apache.openaz.xacml.std.pip.engines.ldap.LDAPEngine
ldap1.name=LDAP PIP
ldap1.description=The LDAP containing the seven seas sample LDIF data.
ldap1.issuer=org.apache.openaz:xacml:test:ldap
ldap1.java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
#
# NOTE: You will have to setup a local LDAP server and load the data\apache-ds-tutorial.ldif before
# this example will work.
#
ldap1.java.naming.provider.url=ldap://localhost:10389
#ldap.java.naming.security.principal=
#ldap.java.naming.security.credentials=
ldap1.scope=subtree

ldap1.resolvers=dn,ship

ldap1.resolver.dn.classname=org.apache.openaz.xacml.std.pip.engines.ldap.ConfigurableLDAPResolver
ldap1.resolver.dn.name=Domain Names
ldap1.resolver.dn.description=Find all the dn's for the subject id
ldap1.resolver.dn.base=o=sevenseas
ldap1.resolver.dn.base.parameters=
ldap1.resolver.dn.filter=(|(uid=${uid})(mail=${uid}))
ldap1.resolver.dn.filter.parameters=uid
ldap1.resolver.dn.filter.parameters.uid.id=urn:oasis:names:tc:xacml:1.0:subject:subject-id
ldap1.resolver.dn.filter.parameters.uid.datatype=http://www.w3.org/2001/XMLSchema#string
ldap1.resolver.dn.filter.parameters.uid.category=urn:oasis:names:tc:xacml:1.0:subject-category:access-subject
#ldap1.resolver.dn.filter.parameters.uid.issuer=org.apache.openaz:xacml:test:ldap
ldap1.resolver.dn.filter.view=dn
ldap1.resolver.dn.filter.view.dn.id=org.apache.openaz:xacml:test:ldap:subject:dn
ldap1.resolver.dn.filter.view.dn.datatype=http://www.w3.org/2001/XMLSchema#string
ldap1.resolver.dn.filter.view.dn.category=urn:oasis:names:tc:xacml:3.0:attribute-category:resource
ldap1.resolver.dn.filter.view.dn.issuer=org.apache.openaz:xacml:test:ldap

ldap1.resolver.ship.classname=org.apache.openaz.xacml.std.pip.engines.ldap.ConfigurableLDAPResolver
ldap1.resolver.ship.name=Ship Resolver
ldap1.resolver.ship.description=This resolves a subject's dn to a ship.
ldap1.resolver.ship.base=o=sevenseas
ldap1.resolver.ship.base.parameters=
ldap1.resolver.ship.filter=uniquemember=${dn}
ldap1.resolver.ship.filter.parameters=dn
ldap1.resolver.ship.filter.parameters.dn.id=org.apache.openaz:xacml:test:ldap:subject:dn
ldap1.resolver.ship.filter.parameters.dn.datatype=http://www.w3.org/2001/XMLSchema#string
ldap1.resolver.ship.filter.parameters.dn.category=urn:oasis:names:tc:xacml:3.0:attribute-category:resource
ldap1.resolver.ship.filter.parameters.dn.issuer=org.apache.openaz:xacml:test:ldap
ldap1.resolver.ship.filter.view=cn
ldap1.resolver.ship.filter.view.cn.id=org.apache.openaz:xacml:test:ldap:subject:ship
ldap1.resolver.ship.filter.view.cn.datatype=http://www.w3.org/2001/XMLSchema#string
ldap1.resolver.ship.filter.view.cn.category=urn:oasis:names:tc:xacml:3.0:attribute-category:resource
ldap1.resolver.ship.filter.view.cn.issuer=org.apache.openaz:xacml:test:ldap

