Schemas und Validierung
Zugriff über Proxy

Besteht nur über einen Proxy Zugriff auf das Internet, muss dem Visual Studio dieser noch mitgeteilt werden. Dies kann durch einen Eintrag in die (XML)Konfigurationsdatei des Visual Studio erfolgen:

Anleitung
(Anweisungen in Abschnitt 'Visual Studio Extensions and Updates' ausreichend)

Schema referenzieren: per VS Dokumenteigenschaften

schema_referenzieren.png

Nachteile:

•weniger transparent zu lesen
•bei Austausch des Dokumentes geht Schemainfo verloren
Schema referenzieren - StandardNamespace:

Damit ein Editor Autovervollständigung,Validierung und Hilfe anbieten kann, muss im Dokument die Quelle der XML-Schema-Definition (xsd) bekannt gegeben werden. Dazu werden folgende Angaben am Anfang der XML-Datei benötigt: 

<?xml version="1.0" encoding="utf-8"?>
<ExcecutionPlan xmlns="http://schemas.webs.idu.de/cardo3/Button"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:noNamespaceSchemaLocation="http://webs.idu.de/xsdschemas/Cardo/Button/Button.xsd">
</ExcecutionPlan>


Als erstes Attribut des ExcecutionPlan-Tags folgt der Default-Namespace, zu welchem alle weiteren Tags, die nicht explizit mit einem Namespace angegeben werden, gehören sollen. Für einen Button-Plan lautet der Standardnamespace:

"http://schemas.webs.idu.de/cardo3/Button"

wobei es sich hierbei nicht wirklich um eine URL sondern nur um einen eindeutigen Namen handelt, für welchen (historisch entstanden) die Form einer URL verwendet wird (die Adresse gibt es nicht). Dieser Namespace-Name entspricht dem Namen, welcher in der zugehörigen Schema-Definition festgelegt wurde.

Damit auch eine Referenz zu einer Schemadefinitionsdatei angeben werden kann, wird das Attribut noNamespaceSchemaLocation benötigt, welches aber wiederum in einem anderen Namspace definiert ist. Deswegen wird im zweiten Attribut erst einmal der Namespace xsi (XSL Schema Instance) definiert.

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

Im dritten Attribut kann dann unter Verwendung dieses Namespaces ein Verweis auf eine Schemadefinition für den Standard-Namespace in Form einer realen URL angegeben werden:

xsi:noNamespaceSchemaLocation="http://webs.idu.de/xsdschemas/Cardo/Button/Button.xsd"

Damit kennt der Editor für alle nachfolgenden Tags die entsprechende Schemadefinitionsdatei und kann über diese Autovervollständigung, Validierung und Hilfetextanzeige durchführen.

Schema referenzieren - weitere Namespaces:

xmlns="http://schemas.webs.idu.de/cardo3/Button"

xmlns:iXHR="http://schemas.webs.idu.de/iwan/iXRH"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:noNamespaceSchemaLocation="http://webs.idu.de/xsdschemas/Cardo/1.0.0/Button.xsd"

xsi:SchemaLocation="iXRH http://webs.idu.de/xsdschemas/Iwan/iXRH.xsd">

...