},
  }
 {endcode}
+
+{section: Additional Examples}
+
+Here are a few additional examples of using the Condor SOAP interface, this time in Perl.  These examples assume that the _condor_schedd_ has been configured to run on well-known port 8080 as described above.
+
+{subsection: Get Version String in Perl}
+{code}
+use SOAP::Lite ;
+my $soap = SOAP::Lite->new(
+    proxy => 'http://localhost:8080/soap',
+        default_ns => 'urn:condor'
+);
+
+
+my $som = $soap->call(
+    "getVersionString"
+);
+die $som->fault->{ faultstring } if ($som->fault);
+
+my %result = %{$som->result};
+print "$result{'message'}\n";
+
+my $som = $soap->call(
+    "getPlatformString"
+);
+die $som->fault->{ faultstring } if ($som->fault);
+
+my %result = %{$som->result};
+print "$result{'message'}\n";
+{endcode}
+
+{subsection: Get Job Queue in Perl}
+This code example will produce output similar to _condor_q -l_.  An optional command line argument can pass a constraint, similar to the _-constraint_ option with condor_q.
+{code}
+use SOAP::Lite ;
+
+#
+# Create a connection to the schedd
+#
+my $soap = SOAP::Lite->new(
+    proxy => 'http://localhost:8080/soap',
+        default_ns => 'urn:condor'
+);
+
+#
+# Invoke getJobAds()
+#
+my $som = $soap->call(
+    "getJobAds",
+        SOAP::Data->name('constraint')->value( $ARGV[0] || 'TRUE'),
+);
+die $som->fault->{ faultstring } if ($som->fault);
+my %result = %{$som->result};
+
+#
+# For each ad returned, print all attributes
+#
+my @ads;
+if( ref ($result{'classAdArray'}{'item'}) eq 'HASH') {
+        @ads = $result{'classAdArray'}{'item'};
+} else {
+        @ads = @{$result{'classAdArray'}{'item'}};
+}
+foreach $ad_ref (@ads) {
+        my @ad = @{$ad_ref->{'item'}};
+        foreach $attr_ref (@ad) {
+                my %attr = %$attr_ref;
+                print "  $attr{'name'} = $attr{'value'} \n";
+        }
+        print "===============================\n";
+}
+{endcode}