Zum Inhalt springen

„Collaborative Application Markup Language“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
Gary Dee (Diskussion | Beiträge)
K Repairing 1 and tagging 1 external links using Checklinks
Gary Dee (Diskussion | Beiträge)
K Def. WL entf.
Zeile 59: Zeile 59:
*[http://msdn2.microsoft.com/en-us/library/ms426449.aspx CAML auf MSDN]
*[http://msdn2.microsoft.com/en-us/library/ms426449.aspx CAML auf MSDN]
*[http://msdn2.microsoft.com/en-us/library/ms479188.aspx CAML Schema definition]
*[http://msdn2.microsoft.com/en-us/library/ms479188.aspx CAML Schema definition]
*[http://www.technorati.com/tag/caml CAML-tagged links on technorati]{{dead link|date=February 2012}}
*[http://web.archive.org/web/20110722004657/http://www.u2u.info/Blogs/Patrick/Lists/Posts/Post.aspx?ID=1252 U2U CAML Generator]
*[http://web.archive.org/web/20110722004657/http://www.u2u.info/Blogs/Patrick/Lists/Posts/Post.aspx?ID=1252 U2U CAML Generator]



Version vom 9. Februar 2012, 10:35 Uhr

CAML (Collaborative Application Markup Language) ist eine auf XML basierende Auszeichnungssprache, welche speziell für die Microsoft SharePoint-Produkte (z.B. Microsoft SharePoint Foundation und Microsoft SharePoint Server) entwickelt wurde und für diese ausgelegt ist. CAML enthält Elemente zur Datendefinition und zur Abfrage und Anzeige von Daten in SharePoint-Portalen.

Elemente

CAML ermöglicht es dem Entwickler, Inhalte in SharePoint-Portalen zu erstellen, zu verändern oder abzufragen, um diese dann nach eigenen Wünschen anzeigen zu lassen. Des Weiteren kann CAML für die Manipulation und Abfrage von Daten über externe Quellen (z.B. Anwendungen, welche das Client Object Model verwenden) benutzt werden.

Elemente zur Datendefinition

Elemente zur Datendefinition können verwendet werden, um Listen und einzelne Sites zu erstellen. Ein Beispiel für eine einfach gehaltene Definition von Listenelementen:

  <Fields>
    <Field Type="Counter" Name="ID"/>
    . . . weitere Definitionen. . .
  </Fields>

In CAML gibt es auch spezielle Tags, um Daten zu vergleichen und zu selektieren:

  <IfEqual>
     <Expr1>
        <Field Name="CheckedOutUserId" />
     </Expr1>
     <Expr2 />
     <Then />
     <Else>
       Weiteres CAML
     </Else>
  </IfEqual>

Des Weiteren gibt es spezielle Tags für Datenbankabfragen.

Data Rendering-Elemente

Mit Hilfe der neuen Tags ist es in CAML auch möglich, speziellen HTML-Code automatisch generieren zu lassen. Das folgende Beispiel zeigt eine Schleife, die Daten selektiert und im Anschluss ein mittels HTML implementiertes Dropdown-Menü mit diesen Daten anzeigt:

  <ForEach Select="CHOICES/CHOICE">
    <HTML>fld.AddChoice(</HTML>
    <ScriptQuote>
       <Property Select="."/>
    </ScriptQuote>
    <HTML>, </HTML>
    <ScriptQuote>
       <Property Select="Value"/>
    </ScriptQuote>
    <HTML>);</HTML>
  </ForEach>

Verwendung in SharePoint-Produkten

Sämtliche XML-Dateien in SharePoint-Produkten basieren auf CAML. Die CAML-Dateien sind für Struktur der Sites und Listen essentiell. Sie beschreiben, welche Elemente auf den Seiten existieren können, während die ASPX-Dateien lediglich diese Elemente formatieren und anordnen.

CAML kann weiterhin von Software-Entwicklern für die Abfrage und Manipulation von SharePoint-Daten verwendet werden. So können einzelne Listen, Listenelemente sowie ganze Seiten abgefragt werden. Auch Kombinationen (und Schachtelung) solcher Abfragen sind möglich. Dazu stellt Microsoft eine SharePoint-API und das SharePoint Object Model zur Verfügung, zudem die seltener verwendeten SharePoint-WebServices)

Zur visuellen Erstellung von CAML-Abfragen dient das Tool U2U CAML.