Common Schema Definition Language (CSDL)
Eintrag zuletzt aktualisiert am: 29.07.2013
Common Schema Definition Language (
CSDL) ist das
Metadatenformat beim
Open Data Protocol.
Durch den Operator $metadata erhält der Nutzer des OData-Feeds ein
Metadatendokument. Da es sich bei OData um ein
REST-basiertes Protokoll handelt, kommt hier nicht die
Webservice Desciption Language (
WSDL) zum Einsatz. Bei
REST gibt es kein Standardmetadatenformat; Microsoft hat aber erkannt, dass OData ohne
Metadaten sehr umständlich wäre. Schließlich geht es darum, mit OData auf beliebige Datenstruktueren zugreifen zu können. Diese Strukturen händisch auf dem Client nachzubauen, kann sehr viel Arbeit sein, wenn es um größere
Datenbankschemata geht. Microsoft hat in solchen Fällen in der Vergangenheit das Rad oft neu erfunden. Dieses Mal hat man aber klugerweise auf ein bestehendes
Metadatenformat aus dem eigenen Hause zurückgegriffen: das
Entity Data Model (
EDM), das im
ADO.NET Entity Framework verwendet wird. Dabei muss man sagen, dass dies auch nahe lag, denn die
WCF Data Services und das
ADO.NET Entity Framework haben gemeinsame Wurzeln im gleichen Produktteam bei Microsoft und in
.NET 3.5 Service Pack 1.
Die Sektion
EDMX:DataServices im Odata-
Metadatenformat entspricht weitestgehend dem
EDMX:ConceptualModel beim Entity Framework. Namentlich gibt es nur einen kleinen Unterschied: Odata spricht von Common Schema Definition Language (
CSDL) während im
EDMX die gleiche Abkürzung für
Conceptual Schema Definition Language steht.