Zum Inhalt springen

Collaborative Application Markup Language

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 23. Februar 2011 um 17:25 Uhr durch Lutheraner (Diskussion | Beiträge) (HC: Entferne Kategorie:Auszeichnungssprachen). Sie kann sich erheblich von der aktuellen Version unterscheiden.

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. Im Gegensatz zu XML stehen in CAML bereits spezielle Tags für das Abfragen und Anzeigen von SharePoint-Portalen zur Verfügung.

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 externen Quellen (z.B. Anwendungen, welche das Client Object Model verwenden) benutzt werden.

Elemente zur Datendefinition

Elemente zur Datendefinition können verwedet werden, um Listen und einzelne Sites mit einer XML-Sprache (jedoch mit speziellen Tags) 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 CALM auch möglich, speziellen HTML-Code automatisch generieren zu lassen. Das folgende Beispiel zeigt eine Schleife, die Daten selektiert und im Anschluss ein Dropdown-Menü in HTML 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, das SharePoint Object Model (seltener verwendet auch die SharePoint WebServices) zur Verfügung.

Für die visuelle Erstellung von CAML-Abfragen bietet sich das Tool "U2U CAML" an.