Dado que podemos consultar el archivo XML desde C # (.NET), ¿por qué necesitamos un archivo XSD? Sé que es un archivo de metadatos de un archivo XML en particular. Podemos especificar las relaciones en XSD, pero ¿cuál es su funcionamiento entonces?
XML
<?xml version="1.0" encoding="utf-8" ?>
<Root>
<Customers>
<Customer CustomerID="GREAL">
<CompanyName>Great Lakes Food Market</CompanyName>
<ContactName>Howard Snyder</ContactName>
<ContactTitle>Marketing Manager</ContactTitle>
<Phone>(503) 555-7555</Phone>
<FullAddress>
<Address>2732 Baker Blvd.</Address>
<City>Eugene</City>
<Region>OR</Region>
<PostalCode>97403</PostalCode>
<Country>USA</Country>
</FullAddress>
</Customer>
</Customers>
<Orders>
<Order>
<CustomerID>GREAL</CustomerID>
<EmployeeID>6</EmployeeID>
<OrderDate>1997-05-06T00:00:00</OrderDate>
<RequiredDate>1997-05-20T00:00:00</RequiredDate>
<ShipInfo ShippedDate="1997-05-09T00:00:00">
<ShipVia>2</ShipVia>
<Freight>3.35</Freight>
<ShipName>Great Lakes Food Market</ShipName>
<ShipAddress>2732 Baker Blvd.</ShipAddress>
<ShipCity>Eugene</ShipCity>
<ShipRegion>OR</ShipRegion>
<ShipPostalCode>97403</ShipPostalCode>
<ShipCountry>USA</ShipCountry>
</ShipInfo>
</Order>
<Order>
<CustomerID>GREAL</CustomerID>
<EmployeeID>8</EmployeeID>
<OrderDate>1997-07-04T00:00:00</OrderDate>
<RequiredDate>1997-08-01T00:00:00</RequiredDate>
<ShipInfo ShippedDate="1997-07-14T00:00:00">
<ShipVia>2</ShipVia>
<Freight>4.42</Freight>
<ShipName>Great Lakes Food Market</ShipName>
<ShipAddress>2732 Baker Blvd.</ShipAddress>
<ShipCity>Eugene</ShipCity>
<ShipRegion>OR</ShipRegion>
<ShipPostalCode>97403</ShipPostalCode>
<ShipCountry>USA</ShipCountry>
</ShipInfo>
</Order>
</Orders>
</Root>
Quiero obtener datos de los Order
elementos de acuerdo con un archivo CustomerID
.
Además : ¿Cuál es el propósito de dar las relaciones en XSD?
Respuestas:
Los archivos XSD se utilizan para validar que los archivos XML se ajusten a un formato determinado.
En ese sentido, son similares a los DTD que existían antes.
La principal diferencia entre XSD y DTD es que XSD está escrito en XML y se considera más fácil de leer y comprender.
fuente
Sin el esquema XML (archivo XSD), un archivo XML es un conjunto relativamente libre de elementos y atributos. El archivo XSD define qué elementos y atributos están permitidos y en qué orden.
En general, XML es un metalenguaje. Los archivos XSD definen idiomas específicos dentro de ese metalenguaje. Por ejemplo, si su archivo XSD contiene la definición de XHTML 1.0, entonces su archivo XML debe ajustarse a XHTML 1.0 en lugar de algún otro formato.
fuente
Menciona C # en su pregunta, por lo que puede ser útil pensar que XSD cumple una función similar a una interfaz C #.
Define cómo debería "verse" el XML de una forma similar a como una interfaz define lo que debería implementar una clase.
fuente
Los XSD restringen el vocabulario y la estructura de los documentos XML.
XML tiene que ver con el acuerdo , y los XSD proporcionan los medios para estructurar y comunicar el acuerdo más allá de la definición básica de XML en sí.
fuente
Suponga que desea generar algún XML para la herramienta de una parte externa, o similar, ¿cómo sabría qué estructura se le permite seguir para que se use correctamente para su herramienta? escribes en un esquema. Del mismo modo, si desea que otras personas usen su herramienta, debe escribir un esquema para que lo sigan. También puede resultar útil para validar su propio XML.
fuente
Antes de comprender el XSD (Definición de esquema XML), déjeme explicarlo;
por ejemplo; emailID: peter # gmail
Puede identificar que el ID de correo electrónico anterior no es válido porque no hay @, .com o .net o .org.
Sabemos que el esquema de correo electrónico parece [email protected].
XSD es en realidad una de las implementaciones de XML Schema. otros tenemosrelajante
Usamos XSD para validar datos XML.
fuente
Un XSD es un contrato formal que especifica cómo se puede formar un documento XML. A menudo se utiliza para validar un documento XML o para generar código a partir de.
fuente
Un archivo XSD es una definición de esquema XML y se utiliza para proporcionar un método estándar para comprobar que un documento XML dado se ajusta a lo que espera.
fuente
Un archivo .xsd se denomina esquema XML. A través de un esquema XML, es posible que necesitemos una cierta estructura en un XML dado: qué elementos en qué orden, cuántas veces, con qué atributos, cómo están anidados, etc. Si tenemos un esquema para nuestra entrada XML, podemos verificar que contiene los datos que necesitamos que contenga, y nada más, con unas pocas líneas que invocan un validador de esquema.
fuente
El archivo xsd es el esquema del archivo xml: define qué elementos pueden ocurrir y sus restricciones (como cantidad, orden, límites, relaciones, ...)
fuente