Angeben des Inhaltstyps von Dokumenten für den XML-Parser
Letzte Änderung: Montag, 5. Oktober 2009
Gilt für: SharePoint Foundation 2010
Wenn Benutzer ein XML-Dokument erstmals in eine Dokumentbibliothek hochladen, werden der Inhaltstyp und die Dokumentvorlageneigenschaften vom integrierten XML-Parser untersucht, um den Inhaltstyp zu ermitteln, der dem Dokument zugewiesen werden soll. Vom Parser muss ermittelt werden, welcher der Inhaltstypen, die der Dokumentbibliothek zugeordnet sind, dem Dokument zugewiesen werden soll, bevor die Dokumenteigenschaften vom Parser höher oder tiefer gestuft werden können.
Eine detaillierte Untersuchung des Prozesses, der vom Parser ausgeführt wird, um den Inhaltstyp eines Dokuments einem der Dokumentbibliothek zugeordneten Inhaltstyp zuzuordnen, finden Sie unter Bestimmen des Dokumentinhaltstyps für den XML-Parser.
Angeben des Inhaltstyps durch die Inhaltstyp-ID
Vom Parser wird nach einer Verarbeitungsanweisung gesucht, in der der Inhaltstyp des Dokuments durch die Inhaltstyp-ID angegeben ist. Der Speicherort dieser Verarbeitungsanweisung ist in der Definition der Spaltenvorlage für die Inhaltstyp-ID enthalten. Die Verarbeitungsanweisung hat den Namen MicrosoftWindowsSharePointServices und enthält ein Attribut mit dem Namen ContentTypeID, das die ID des Inhaltstyps des Dokuments darstellt.
<FieldRef
ID="{4B1BF6C6-4F39-45ac-ACD5-16FE7A214E5E}"
Name="Content Type ID"
PITarget="MicrosoftWindowsSharePointServices"
PIAttribute="ContentTypeID"/>
Standardmäßig enthalten alle Vorlagen für Bibliothekslisten eine Spalte, die die Inhaltstyp-ID darstellt.
Fügen Sie diese Verarbeitungsanweisung dem XML-Dokument hinzu. Legen Sie das ContentTypeID-Attribut auf die ID des Inhaltstyps des Dokuments fest.
Beispiel:
<?MicrosoftWindowsSharePointServices ContentTypeID=”0x010101003D7907A1908011d082BD08005AA74F5E00A557E10DA69DBF4C8BE1E21071B08163”/>
In den folgenden Situationen kann der Inhaltstyp vom Parser nicht ermittelt werden:
Die MicrosoftWindowsSharePointServices-Verarbeitungsanweisung ist im Dokument nicht vorhanden.
In der Verarbeitungsanweisung ist kein Inhaltstyp angegeben.
Der angegebene Inhaltstyp ist nicht der Dokumentbibliothek zugeordnet.
Der Dokumentbibliothek ist kein übergeordnetes oder untergeordnetes Elemente des angegebenen Inhaltstyps zugeordnet.
Wenn der Inhaltstyp vom Parser nicht durch die Inhaltstyp-ID identifiziert werden kann, wird eine zweite Überprüfung ausgeführt. Diese wird im nächsten Abschnitt beschrieben.
Hinweis |
---|
Vom Parser wird in dem Dokumentspeicherort nach der Inhaltstyp-ID gesucht, den Sie in der Felddefinition für die Inhaltstyp-ID-Spalte in der Dokumentbibliothek angegeben haben. Sie können die Inhaltstyp-ID-Spalte einer beliebigen von Ihnen ausgewählten Verarbeitungsanweisung oder einem beliebigen XPath-Ausdruck zuordnen. Es wird jedoch empfohlen, die in der Vorlagendefinition für die Inhaltstyp-ID-Spalte enthaltene Standardzuordnung beizubehalten. Auf diese Weise minimieren Sie die Wahrscheinlichkeit, dass Inhaltstypen vorhanden sind, in denen ein anderer Speicherort für diese Dokumenteigenschaft angegeben ist als die Dokumentbibliothek, der die Inhaltstypen zugeordnet sind. Diese Situation führt dazu, dass vom XML-Parser im falschen Dokumentspeicherort nach der Inhaltstyp-ID gesucht wird. |
Angeben des Inhaltstyps durch die Dokumentvorlage
Wenn vom Parser anhand der Inhaltstyp-ID kein geeigneter Inhaltstyp für das Dokument ermittelt werden kann, wird nach einer Verarbeitungsanweisung gesucht, die die URL der Dokumentvorlage enthält, auf der das Dokument basiert. Die Verarbeitungsanweisung hat den Namen mso-infoPathSolution und enthält ein Attribut mit dem Namen href, das die URL der Dokumentvorlage darstellt.
<FieldRef
ID="{4B1BF6C6-4F39-45ac-ACD5-16FE7A214E5E}"
Name="DocumentTemplate"
PITarget="mso-infoPathSolution"
PIAttribute="href"/>
Diese Spalte ist im Formularinhaltstyp enthalten und wird einer Bibliothek hinzugefügt, wenn dieser Inhaltstyp der Bibliothek hinzugefügt wird.
Anstatt eine Inhaltstyp-ID einzuschließen, können Sie also dem XML-Dokument diese Verarbeitungsanweisung hinzufügen. Legen Sie das href-Attribut auf den URI der Dokumentvorlage fest, auf der das Dokument basiert.
Beispiel:
<?mso-infoPathSolution href=”http://www.adventureworks.com/templates/myTemplate.XML”?>
Wenn diese Verarbeitungsanweisung vom Parser gefunden wird, werden die der Dokumentbibliothek zugeordneten Inhaltstypen untersucht, um zu ermitteln, ob ein Inhaltstyp mit der gleichen Dokumentvorlage vorhanden ist. Wenn dies der Fall ist, wird dieser Inhaltstyp dem Dokument zugewiesen. Wenn die Dokumentvorlage bei mehreren der Dokumentbibliothek zugeordneten Inhaltstypen übereinstimmt, wird einfach der erste übereinstimmende Inhaltstyp zugewiesen.
Hinweis |
---|
Vom Parser wird in dem Dokumentspeicherort nach der Dokumentvorlagen-URL gesucht, den Sie in der Felddefinition für die Dokumentvorlage in der Dokumentbibliothek angegeben haben. Sie können die Dokumentvorlagenspalte einer beliebigen von Ihnen ausgewählten Verarbeitungsanweisung oder einem beliebigen XPath-Ausdruck zuordnen. Es wird jedoch empfohlen, die in der Vorlagendefinition für die Dokumentvorlagenspalte enthaltene Standardzuordnung beizubehalten. Auf diese Weise minimieren Sie die Wahrscheinlichkeit, dass Inhaltstypen vorhanden sind, in denen ein anderer Speicherort für diese Dokumenteigenschaft angegeben ist als die Dokumentbibliothek, der die Inhaltstypen zugeordnet sind. Diese Situation würde dazu führen, dass vom XML-Parser im falschen Dokumentspeicherort nach der Dokumentvorlage gesucht wird. |
Siehe auch
Konzepte
Höher- und Tieferstufen von Eigenschaften von XML-Dokumenten
Verwenden von Inhaltstypen zum Angeben von XML-Dokumenteigenschaften