Index: trunk/data/maps.xsd
===================================================================
--- trunk/data/maps.xsd	(revision 14551)
+++ trunk/data/maps.xsd	(revision 14552)
@@ -643,5 +643,5 @@
                             <xs:element name="description" minOccurs="0" type="tns:description" />
                             <!-- A unique id for the imagery source -->
-                            <xs:element name="id" minOccurs="0" maxOccurs="1" type="tns:id" />
+                            <xs:element name="id" minOccurs="1" maxOccurs="1" type="tns:id" />
                             <!-- Historic id for the imagery source -->
                             <xs:element name="oldid" minOccurs="0" maxOccurs="unbounded" type="tns:oldid" />
Index: trunk/data/validator/territories.mapcss
===================================================================
--- trunk/data/validator/territories.mapcss	(revision 14551)
+++ trunk/data/validator/territories.mapcss	(revision 14552)
@@ -11,7 +11,14 @@
 *[name =~ /(?i).*Strasse.*/][name !~ /(?i).*Strasser.*/][inside("DE,AT")] {
   throwError: tr("street name contains ss");
+  assertMatch: "way name=Hauptstrasse";
+  assertNoMatch: "way name=Hauptstraße";
+  assertNoMatch: "way name=Kapitän-Strasser-Straße";
+  assertNoMatch: "way name=Peter-Strasser-Platz";
+  
 }
 *[addr:street =~ /(?i).*Straße.*/][inside("LI,CH")],
 *[name =~ /(?i).*Straße.*/][inside("LI,CH")] {
   throwError: tr("street name contains ß");
+  assertMatch: "way name=Hauptstraße";
+  assertNoMatch: "way name=Hauptstrasse";
 }
