lokalere verifikation

git-svn-id: svn://svn.c3d2.de/c3d2-web/trunk@1555 31f61c52-7bfb-0310-b897-fc00f8a278f0
This commit is contained in:
astro 2009-08-06 15:34:02 +00:00
parent 956302a5f0
commit 5b066d9ca7
3 changed files with 306 additions and 18 deletions

View File

@ -8,10 +8,11 @@ PFLAGS=--novalid --catalogs --stringparam baseurl $(BASEURL)
BASEURL=""
# XML-Validator
VALIDATOR=xmllint
VFLAGS=--noout --nonet
# VALIDATOR-Flags für Eingabe-XML (meist c3d2web)
VFLAGS_IN=--noout --schema xsd/c3d2web.xsd
VFLAGS_IN=$(VFLAGS) --schema xsd/c3d2web.xsd
# VALIDATOR-Flags für Ausgabe-XML (xhtml, rss, atom, ...)
VFLAGS_OUT=$(VFLAGS_IN)
VFLAGS_OUT=$(VFLAGS)
SGML_CATALOG_FILES=$(XML_CATALOG)
export SGML_CATALOG_FILES
# Downloadmanager (Alternativ: curl, fetch):
@ -94,19 +95,19 @@ $(DATESTAMP):
### Regeln für den XSLT-Prozess ###
build/%.html : VFLAGS_OUT=--noout --schema xsd/xhtml1-strict.xsd
build/%.html : VFLAGS_OUT=$(VFLAGS) --schema xsd/xhtml1-strict.xsd
build/news.html: $(WWW_CCC_DE_UPDATES) $(CALENDAR_SUMMARY) $(DATESTAMP)
build/news-rss.xml : STYLE=xsl/rss.xsl
build/news-rss.xml : NOVALID_IGNORE:=true
build/news-rss.xml : PFLAGS+=--stringparam prefix ""
build/news-rss.xml : VFLAGS_OUT=--noout --schema xsd/rss20.xsd
build/news-rss.xml : VFLAGS_OUT=$(VFLAGS) --schema xsd/rss20.xsd
build/news-atom.xml : STYLE=xsl/atom.xsl
build/news-atom.xml : NOVALID_IGNORE:=true
build/news-atom.xml : PFLAGS+=--stringparam prefix ""
build/news-atom.xml : VFLAGS_OUT=--noout --relaxng xsd/atom.rng
build/news-atom.xml : VFLAGS_OUT=$(VFLAGS) --relaxng xsd/atom.rng
build/podcast.xml : STYLE=xsl/podcast.xsl
build/podcast.xml : NOVALID_IGNORE:=true
build/podcast.xml : VFLAGS_OUT=--noout --schema xsd/rss20.xsd
build/podcast.xml : VFLAGS_OUT=$(VFLAGS) --schema xsd/rss20.xsd
build/podcast.xml: xsl/podcast.xsl # Does not work with $(STYLE) - why?
#.INTERMEDIATE: news.xml
@ -119,38 +120,38 @@ $(NEWSFILES): news.xml $(NAVIGATION) $(STYLE)
# Calendar
$(CALENDAR_SUMMARY) : STYLE=xsl/calendar-summary.xsl
$(CALENDAR_SUMMARY) : NOVALID_IGNORE:=true
$(CALENDAR_SUMMARY) : VFLAGS_IN=--noout
$(CALENDAR_SUMMARY) : VFLAGS_IN=$(VFLAGS)
$(CALENDAR_SUMMARY): content/events.xml news.xml
$(call xml_process)
build/calendar.html : VFLAGS_IN=--noout
build/calendar.html : VFLAGS_IN=$(VFLAGS)
build/calendar.html: $(CALENDAR_SUMMARY) $(STYLE) $(NAVIGATION) $(WWW_CCC_DE_UPDATES) $(DATESTAMP)
$(call xml_process)
# XCal
build/xcal.xml : STYLE=xsl/xcal.xsl
build/xcal.xml : VFLAGS_IN=--noout
build/xcal.xml : VFLAGS_IN=$(VFLAGS)
build/xcal.xml: $(CALENDAR_SUMMARY) $(STYLE)
$(call xml_process)
# iCal
build/ical.ics : STYLE=xsl/ical.xsl
build/ical.ics : NOVALID_IGNORE:=true
build/ical.ics : VFLAGS_IN=--noout
build/ical.ics : VFLAGS_OUT=--noout
build/ical.ics : VFLAGS_IN=$(VFLAGS)
build/ical.ics : VFLAGS_OUT=$(VFLAGS)
build/ical.ics: $(CALENDAR_SUMMARY) $(STYLE)
$(call xml_process)
# Remind
build/reminders : STYLE=xsl/remind.xsl
build/reminders : NOVALID_IGNORE:=true
build/reminders : VFLAGS_IN=--noout
build/reminders : VFLAGS_OUT=--noout
build/reminders : VFLAGS_IN=$(VFLAGS)
build/reminders : VFLAGS_OUT=$(VFLAGS)
build/reminders: $(CALENDAR_SUMMARY) $(STYLE)
$(call xml_process)
# Playlists
build/%.xspf : VFLAGS_OUT=--noout --relaxng xsd/xspf-1_0.5.rng
build/%.xspf : VFLAGS_OUT=$(VFLAGS) --relaxng xsd/xspf-1_0.5.rng
build/%.m3u : NOVALID_IGNORE:=true
build/%.pls : NOVALID_IGNORE:=true
@ -171,7 +172,7 @@ build/cgi-bin/search.html: content/cgi-bin/search.xml $(STYLE) $(NAVIGATION) $(D
build/datenspuren/%html : STYLE=$(DS_STYLE)
build/datenspuren/%.html: content/datenspuren/%.xml $(DS_STYLE) news.xml
$(call xml_process)
build/datenspuren/schedule.html : VFLAGS_IN=--noout --schema xsd/xhtml1-strict.xsd
build/datenspuren/schedule.html : VFLAGS_IN=$(VFLAGS) --schema xsd/xhtml1-strict.xsd
build/datenspuren/schedule.html : NOVALID_IGNORE:=true
#content/datenspuren/schedule.xml: content/static/datenspuren/fahrplan/days.de.html
@ -180,11 +181,11 @@ build/datenspuren/schedule.html : NOVALID_IGNORE:=true
build/datenspuren/news-rss.xml : STYLE=xsl/rss.xsl
build/datenspuren/news-rss.xml : NOVALID_IGNORE:=true
build/datenspuren/news-rss.xml : PFLAGS+=--stringparam prefix ds09-
build/datenspuren/news-rss.xml : VFLAGS_OUT=--noout --schema xsd/rss20.xsd
build/datenspuren/news-rss.xml : VFLAGS_OUT=$(VFLAGS) --schema xsd/rss20.xsd
build/datenspuren/news-atom.xml : STYLE=xsl/atom.xsl
build/datenspuren/news-atom.xml : NOVALID_IGNORE:=true
build/datenspuren/news-atom.xml : PFLAGS+=--stringparam prefix ds09-
build/datenspuren/news-atom.xml : VFLAGS_OUT=--noout --relaxng xsd/atom.rng
build/datenspuren/news-atom.xml : VFLAGS_OUT=$(VFLAGS) --relaxng xsd/atom.rng
### Die neuesten Chaosupdates holen ###
$(WWW_CCC_DE_UPDATES): $(DATESTAMP)

View File

@ -30,7 +30,7 @@
</xs:annotation>
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
schemaLocation="xml.xsd"/>
<xs:annotation>
<xs:documentation>

287
xsd/xml.xsd Normal file
View File

@ -0,0 +1,287 @@
<?xml version='1.0'?>
<?xml-stylesheet href="../2008/09/xsd.xsl" type="text/xsl"?>
<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns ="http://www.w3.org/1999/xhtml"
xml:lang="en">
<xs:annotation>
<xs:documentation>
<div>
<h1>About the XML namespace</h1>
<div class="bodytext">
<p>
This schema document describes the XML namespace, in a form
suitable for import by other schema documents.
</p>
<p>
See <a href="http://www.w3.org/XML/1998/namespace.html">
http://www.w3.org/XML/1998/namespace.html</a> and
<a href="http://www.w3.org/TR/REC-xml">
http://www.w3.org/TR/REC-xml</a> for information
about this namespace.
</p>
<p>
Note that local names in this namespace are intended to be
defined only by the World Wide Web Consortium or its subgroups.
The names currently defined in this namespace are listed below.
They should not be used with conflicting semantics by any Working
Group, specification, or document instance.
</p>
<p>
See further below in this document for more information about <a
href="#usage">how to refer to this schema document from your own
XSD schema documents</a> and about <a href="#nsversioning">the
namespace-versioning policy governing this schema document</a>.
</p>
</div>
</div>
</xs:documentation>
</xs:annotation>
<xs:attribute name="lang">
<xs:annotation>
<xs:documentation>
<div>
<h3>lang (as an attribute name)</h3>
<p>
denotes an attribute whose value
is a language code for the natural language of the content of
any element; its value is inherited. This name is reserved
by virtue of its definition in the XML specification.</p>
</div>
<div>
<h4>Notes</h4>
<p>
Attempting to install the relevant ISO 2- and 3-letter
codes as the enumerated possible values is probably never
going to be a realistic possibility.
</p>
<p>
See BCP 47 at <a href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt">
http://www.rfc-editor.org/rfc/bcp/bcp47.txt</a>
and the IANA language subtag registry at
<a href="http://www.iana.org/assignments/language-subtag-registry">
http://www.iana.org/assignments/language-subtag-registry</a>
for further information.
</p>
<p>
The union allows for the 'un-declaration' of xml:lang with
the empty string.
</p>
</div>
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:union memberTypes="xs:language">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value=""/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="space">
<xs:annotation>
<xs:documentation>
<div>
<h3>space (as an attribute name)</h3>
<p>
denotes an attribute whose
value is a keyword indicating what whitespace processing
discipline is intended for the content of the element; its
value is inherited. This name is reserved by virtue of its
definition in the XML specification.</p>
</div>
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="default"/>
<xs:enumeration value="preserve"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="base" type="xs:anyURI"> <xs:annotation>
<xs:documentation>
<div>
<h3>base (as an attribute name)</h3>
<p>
denotes an attribute whose value
provides a URI to be used as the base for interpreting any
relative URIs in the scope of the element on which it
appears; its value is inherited. This name is reserved
by virtue of its definition in the XML Base specification.</p>
<p>
See <a
href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a>
for information about this attribute.
</p>
</div>
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="id" type="xs:ID">
<xs:annotation>
<xs:documentation>
<div>
<h3>id (as an attribute name)</h3>
<p>
denotes an attribute whose value
should be interpreted as if declared to be of type ID.
This name is reserved by virtue of its definition in the
xml:id specification.</p>
<p>
See <a
href="http://www.w3.org/TR/xml-id/">http://www.w3.org/TR/xml-id/</a>
for information about this attribute.
</p>
</div>
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attributeGroup name="specialAttrs">
<xs:attribute ref="xml:base"/>
<xs:attribute ref="xml:lang"/>
<xs:attribute ref="xml:space"/>
<xs:attribute ref="xml:id"/>
</xs:attributeGroup>
<xs:annotation>
<xs:documentation>
<div>
<h3>Father (in any context at all)</h3>
<div class="bodytext">
<p>
denotes Jon Bosak, the chair of
the original XML Working Group. This name is reserved by
the following decision of the W3C XML Plenary and
XML Coordination groups:
</p>
<blockquote>
<p>
In appreciation for his vision, leadership and
dedication the W3C XML Plenary on this 10th day of
February, 2000, reserves for Jon Bosak in perpetuity
the XML name "xml:Father".
</p>
</blockquote>
</div>
</div>
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>
<div xml:id="usage" id="usage">
<h2><a name="usage">About this schema document</a></h2>
<div class="bodytext">
<p>
This schema defines attributes and an attribute group suitable
for use by schemas wishing to allow <code>xml:base</code>,
<code>xml:lang</code>, <code>xml:space</code> or
<code>xml:id</code> attributes on elements they define.
</p>
<p>
To enable this, such a schema must import this schema for
the XML namespace, e.g. as follows:
</p>
<pre>
&lt;schema . . .>
. . .
&lt;import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
</pre>
<p>
or
</p>
<pre>
&lt;import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
</pre>
<p>
Subsequently, qualified reference to any of the attributes or the
group defined below will have the desired effect, e.g.
</p>
<pre>
&lt;type . . .>
. . .
&lt;attributeGroup ref="xml:specialAttrs"/>
</pre>
<p>
will define a type which will schema-validate an instance element
with any of those attributes.
</p>
</div>
</div>
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>
<div id="nsversioning" xml:id="nsversioning">
<h2><a name="nsversioning">Versioning policy for this schema document</a></h2>
<div class="bodytext">
<p>
In keeping with the XML Schema WG's standard versioning
policy, this schema document will persist at
<a href="http://www.w3.org/2009/01/xml.xsd">
http://www.w3.org/2009/01/xml.xsd</a>.
</p>
<p>
At the date of issue it can also be found at
<a href="http://www.w3.org/2001/xml.xsd">
http://www.w3.org/2001/xml.xsd</a>.
</p>
<p>
The schema document at that URI may however change in the future,
in order to remain compatible with the latest version of XML
Schema itself, or with the XML namespace itself. In other words,
if the XML Schema or XML namespaces change, the version of this
document at <a href="http://www.w3.org/2001/xml.xsd">
http://www.w3.org/2001/xml.xsd
</a>
will change accordingly; the version at
<a href="http://www.w3.org/2009/01/xml.xsd">
http://www.w3.org/2009/01/xml.xsd
</a>
will not change.
</p>
<p>
Previous dated (and unchanging) versions of this schema
document are at:
</p>
<ul>
<li><a href="http://www.w3.org/2009/01/xml.xsd">
http://www.w3.org/2009/01/xml.xsd</a></li>
<li><a href="http://www.w3.org/2007/08/xml.xsd">
http://www.w3.org/2007/08/xml.xsd</a></li>
<li><a href="http://www.w3.org/2004/10/xml.xsd">
http://www.w3.org/2004/10/xml.xsd</a></li>
<li><a href="http://www.w3.org/2001/03/xml.xsd">
http://www.w3.org/2001/03/xml.xsd</a></li>
</ul>
</div>
</div>
</xs:documentation>
</xs:annotation>
</xs:schema>