diff --git a/build.xml b/build.xml
index 95647ea3..9248c798 100644
--- a/build.xml
+++ b/build.xml
@@ -2244,6 +2244,9 @@
+
+
+
@@ -2294,7 +2297,7 @@
Checking mailing list entries.
-
+
@@ -2423,7 +2426,7 @@
-
+
diff --git a/build/addresses.pl b/build/addresses.pl
deleted file mode 100755
index 4fbcc1be..00000000
--- a/build/addresses.pl
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/usr/bin/perl
-
-use Xalan;
-
-#
-# Load list addresses.
-#
-open(LIST, "list.txt") || die "could not open list addresses file";
-while () {
- chomp; # remove \n
- $list{$_} = 1 unless $_ eq '';
-}
-close LIST;
-
-#
-# Load extra addresses.
-#
-# One extra address per line. Blank lines and lines starting with '#' are
-# ignored.
-#
-open(EXTRAS, "extra_addresses.txt") || die "could not open extra addresses file";
-while () {
- chomp; # remove \n
- next if /^#/;
- $extras{$_} = 1 unless $_ eq '';
-}
-close EXTRAS;
-
-#
-# Load addresses from the metadata.
-#
-# Exclude support addresses using some XSLT magic.
-#
-# UK addresses
-#
-open(XML, xalanCall . " -IN ../mdx/uk/collected.xml -XSL extract_addresses.xsl|") || die "could not open input file";
-while () {
- if (/(mailto:)?(.*)<\/EmailAddress>/) {
- $metadata{$2} = 1;
- }
-}
-close XML;
-
-#
-# Now figure out the addresses we want to see in the mailing list.
-# Make them lower case for comparisons.
-#
-foreach $addr (keys %extras) {
- $wanted{lc $addr} = $addr;
-}
-foreach $addr (keys %metadata) {
- $wanted{lc $addr} = $addr;
-}
-
-#
-# Similar lower-case hash for the current list.
-#
-foreach $addr (keys %list) {
- $have{lc $addr} = $addr;
-}
-
-#
-# Cancel the ones that are *in* the mailing list from the wanted
-# collection. Whine about (now) unwanted entries in the
-# mailing list.
-#
-$first = 1;
-foreach $addr (sort keys %have) {
- my $a = $have{$addr};
- if (defined($wanted{$addr})) {
- delete $wanted{$addr};
- } else {
- if ($first) {
- $first = 0;
- print "\nDelete unwanted: \n";
- }
- print "$a\n";
- }
-}
-
-#
-# List the ones that are wanted, but not yet in the list.
-#
-$first = 1;
-foreach $addr (keys %wanted) {
- my $a = $wanted{$addr};
- if ($first) {
- $first = 0;
- print "\nAdd wanted: \n";
- }
- print "$a\n";
-}
diff --git a/charting/fetch.pl b/charting/fetch.pl
index 7e7cb94a..9b01e351 100755
--- a/charting/fetch.pl
+++ b/charting/fetch.pl
@@ -7,7 +7,7 @@
use Months;
# Call git on the products directory
-my $git = "/usr/bin/env git -C ../../ukf-products";
+my $git = "/usr/bin/env git --git-dir ../../ukf-products/.git";
$fn1 = 'aggregates/ukfederation-metadata.xml';
$fn2 = 'aggregates/ukfederation-stats.html';
diff --git a/charting/trust.pl b/charting/trust.pl
deleted file mode 100755
index b5a70f1e..00000000
--- a/charting/trust.pl
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/env perl -w
-
-#
-# trust.pl
-#
-# Extracts statistics about trust model support from the published metadata.
-#
-use lib "../build";
-use Xalan;
-use Months;
-
-# Parse command line arguments
-use Getopt::Long;
-my $allMonths;
-GetOptions('all' => \$allMonths);
-
-# By default, only show results for the most recent month
-if (!$allMonths) {
- # reduce months table to one element
- my $oneMonth = pop @months;
- @months = ( $oneMonth );
-}
-
-# ingest files
-foreach $month (@months) {
- my $fn = "cache/$month.xml";
- open(TXT, xalanCall . " -IN $fn -XSL trust.xsl|") || die "could not open input file";
- $_ = ;
- chop;
- #print ">" . $_ . "<\n";
- my ($entities, $idps, $sps, $dk_total, $dk_idp, $dk_sp, $pk_total, $pk_idp, $pk_sp, $no_embed) = split;
- push @overallRatio, $dk_total/$entities;
- push @idpRatio, $dk_idp/$idps;
- push @spRatio, $dk_sp/$sps;
- push @PKoverallRatio, $pk_total/$entities;
- push @PKidpRatio, $pk_idp/$idps;
- push @PKspRatio, $pk_sp/$sps;
- push @NoEmbed, $no_embed;
- close TXT;
-}
-
-print "idp\n";
-foreach $ratio (@idpRatio) {
- print "$ratio\n";
-}
-
-print "sp\n";
-foreach $ratio (@spRatio) {
- print "$ratio\n";
-}
-
-print "overall\n";
-foreach $ratio (@overallRatio) {
- print "$ratio\n";
-}
-
-print "PKidp\n";
-foreach $ratio (@PKidpRatio) {
- print "$ratio\n";
-}
-
-print "PKsp\n";
-foreach $ratio (@PKspRatio) {
- print "$ratio\n";
-}
-
-print "PKoverall\n";
-foreach $ratio (@PKoverallRatio) {
- print "$ratio\n";
-}
-
-print "No embedded keys\n";
-foreach $no_embed (@NoEmbed) {
- print "$no_embed\n";
-}
-
-1;
diff --git a/charting/trust.xsl b/charting/trust.xsl
deleted file mode 100644
index d94b52bf..00000000
--- a/charting/trust.xsl
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/_rules/check_rands_member.xsl b/mdx/_rules/check_rands_member.xsl
new file mode 100644
index 00000000..bee2e9d0
--- /dev/null
+++ b/mdx/_rules/check_rands_member.xsl
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ REFEDS R+S only applies to service provider entities
+
+
+
+
+
+ REFEDS R+S requires SAML 2.0 POST support
+
+
+
+
+
+ REFEDS R+S requires mdui:DisplayName
+
+
+
+
+ REFEDS R+S requires mdui:InformationURL
+
+
+
+
+
+ REFEDS R+S requires one or more technical contacts
+
+
+
+
+
+
diff --git a/mdx/_rules/check_rands_support.xsl b/mdx/_rules/check_rands_support.xsl
new file mode 100644
index 00000000..fe92e6d8
--- /dev/null
+++ b/mdx/_rules/check_rands_support.xsl
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ REFEDS R+S support only applies to identity provider entities
+
+
+
+
+
+
diff --git a/mdx/common-beans.xml b/mdx/common-beans.xml
index ee5bc181..7c687117 100644
--- a/mdx/common-beans.xml
+++ b/mdx/common-beans.xml
@@ -482,16 +482,18 @@
-
+
+
-
-
+
+
+
@@ -503,11 +505,15 @@
+
+
+
+
@@ -516,6 +522,7 @@
+
@@ -542,8 +549,8 @@
http://www.edugain.org/technical/status.php
-->
-
+
@@ -564,6 +571,7 @@
+
@@ -582,8 +590,14 @@
+
+
+
+
+
+
diff --git a/mdx/int_edugain/verbs.xml b/mdx/int_edugain/verbs.xml
index 3a640dc5..ed4a6400 100644
--- a/mdx/int_edugain/verbs.xml
+++ b/mdx/int_edugain/verbs.xml
@@ -83,6 +83,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -251,31 +293,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -310,17 +328,13 @@
-
-
-
+
@@ -555,17 +569,13 @@
-
-
-
+
@@ -670,11 +680,6 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+