diff --git a/bibliography.odd b/bibliography.odd
index 9087690e0fe2fda0e645061d5fb856fbe7f47e73..45a4cf2ae82626c9d1bced41b16565123792e455 100644
--- a/bibliography.odd
+++ b/bibliography.odd
@@ -250,7 +250,32 @@
                                 <constraint> <sch:pattern> <sch:rule context="tei:link[(parent::tei:linkGrp/@ana eq 'http://purl.org/dc/terms/references') or (parent::tei:linkGrp/@ana eq 'http://schema.org/mentions')]">
                                     <sch:let name="litid" value="substring-after(./@target,' #')"/>
                                     
-                                    <sch:assert test="//*[@xml:id eq $litid]">ID "<sch:value-of select="$litid"/>" nicht gefunden.</sch:assert> </sch:rule> </sch:pattern> </constraint>
+                                    <sch:assert test="$litid ne '' and
+                                        (
+                                        document('../Register/bibliography/bibliography-a.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-b.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-c.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-d.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-e.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-f.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-g.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-h.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-i.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-j.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-k.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-l.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-m.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-n.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-o.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-p.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-qr.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-s.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-t.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-u.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-v.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-w.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-xyz.xml')//*[@xml:id eq $litid]
+                                        )">ID "<sch:value-of select="$litid"/>" nicht gefunden.</sch:assert> </sch:rule> </sch:pattern> </constraint>
                                 
                             </constraintSpec>
                             <constraintSpec scheme="schematron" ident="creator">
@@ -258,7 +283,32 @@
                                     <sch:let name="litid" value="substring-after(substring-before(./@target,' '),'#')"/>
                                     <sch:let name="psnid" value="substring-after(./@target,' psn:')"/>
                                     
-                                    <sch:assert test="(//*[@xml:id eq $litid]) and
+                                    <sch:assert test="($litid ne '' and
+                                        (
+                                        document('../Register/bibliography/bibliography-a.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-b.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-c.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-d.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-e.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-f.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-g.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-h.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-i.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-j.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-k.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-l.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-m.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-n.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-o.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-p.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-qr.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-s.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-t.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-u.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-v.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-w.xml')//*[@xml:id eq $litid] or
+                                        document('../Register/bibliography/bibliography-xyz.xml')//*[@xml:id eq $litid]
+                                        )) and
                                         
                                         ($psnid ne '' and
                                         (