Gebruik van XML met de Raspberry Pi met Python (1 / 3 stap)

Stap 1: Wat is XML? Waarom is het nuttig?


Wat is XML?

XML staat voor eXtensible Markup Language. Het is een taal te structureren, opslaan en transporteren van informatie op een onafhankelijke manier van hardware en software. Het soort ziet eruit als HTML maar het wordt gebruikt voor het vervoer van informatie niet om informatie weer te geven. HTML en XML zijn beide voorbeelden van een SGML (Standard Generalized Markup Language).

Wat gebruik je XML voor?

Het is een beetje moeilijk te begrijpen, maar XML is niet "niets". XML is ontworpen voor het vervoer van informatie in tegenstelling tot HTML dat wordt gebruikt om informatie weer te geven. Kunt u XML structuur gegevens (meestal in een menselijk leesbare indeling) en deze gegevens te sturen naar andere stukken van de software op uw eigen computer of via het Internet. Vaak de voorkeuren van de gebruiker of gebruikersgegevens is ook in XML opgeslagen en vervolgens naar de bestanden geschreven. Als u nodig hebt om gestructureerde gegevens te verzenden, is XML een uitstekende keuze. Het is gemakkelijk om parse, gemakkelijk aan te passen, en de meeste belangrijker, gemakkelijk om te zuiveren. Een van de zeer nuttige kenmerken van XML-bestanden is dat zij kunnen worden uitgebreid (meer elementen, kenmerken, enz.) zonder verbreking van de toepassingen. Verstrekken, natuurlijk, zijn die toepassingen goed geschreven (zie deel twee van deze serie).

Hier is een volledige XML-bericht:

 <?xml version="1.0" encoding="ISO-8859-1"?> <XMLCOMMAND> 
 <OBJECTID>12</OBJECTID> <OBJECTSERVERID>BL-1</OBJECTSERVERID> <OBJECTTYPE>2048</OBJECTTYPE> <OBJECTFLAGS>0</OBJECTFLAGS> <RASPICONNECTSERVERVERSIONNUMBER>2.4 </RASPICONNECTSERVERVERSIONNUMBER> <RESPONSE> 
 <![CDATA[100.00, 0.00, CPU Load]]> </RESPONSE> 
 </XMLCOMMAND> 

Structuur van een XML-bericht

In tegenstelling tot HTML-code, in XML definieert u uw eigen codes. Een goed gevormd XML-bericht is een "root" en vervolgens "takken" en "Bladeren". De eerste regel is de XML-declaratie. Zelden worden gewijzigd. De tweede regel beschrijft het root-element van het XML-document.

 <XMLCOMMAND> 

XML-speciaal teken geheimen

Merk op dat het einde van de XML-wortel een afsluitende tag heeft:

 </XMLCOMMAND> 

Alle elementen in XML hebben een openings- en eindtag. Dit, is naast de wortel de definitie van een "well-formed XML-document". By the way, zijn alle tags in XML hoofdlettergevoelig. Een goede XML-codering praktijk is dat alle codes hoofdletters. Hierdoor maakt ook de structuur van de XML-opvallen wanneer je het leest.

Onderliggende elementen toevoegen



Onderliggende elementen worden gebruikt om aanvullende gegevens en informatie over het insluitende XML-element (dat wil zeggen in het bovenstaande voorbeeld). Merk op dat XML niet dezelfde set van onderliggende elementen voor elk omsluitende XML-element vereist, upgraden of het wijzigen van uw elementen gemakkelijk te maken. Uw parser beschikt echter over deze situatie omgaan! Onderliggende elementen zijn XML-elementen onder de hoofdmap (OBJECTID, OBJECTSERVERID, OBJECTTYPE, OBJECTFLAGS, RASPICONNECTSERVERVERSIONNUMBER, reactie). Deze tags moet allemaal een begin- en eindtijd van de tag vergelijkbaar met de wortel. Daarnaast kunnen alle elementen onderliggende elementen genest binnen hebben.

XML-kenmerken

XML-elementen kunnen kenmerken, net als HTML hebben. Kenmerken bevatten aanvullende informatie over een element. Door Conventie worden kenmerken gewoonlijk gegeven in kleine letters. Het is verstandig om te gebruiken kenmerken in XML spaarzaam en op een consistente wijze. U kunt het herschrijven van de bovenstaande XML als volgt:

 <PICTURE id="1"> <TYPE>gif</TYPE> 
 <FILE>BPNSCFA.gif</FILE> </PICTURE> 

Niet met kenmerken maakt het parseren van het XML-bestand in veel opzichten gemakkelijker.

Er zijn twee tekens die niet worden toegestaan binnen een XML-element. Zij zijn de "<" en "&". De ">" teken is toegestaan, maar het is ook goede praktijken ter vervanging van dit karakter. De vooraf gedefinieerde entiteit referenties in XML voor deze tekens zijn "<", "&" en ">".

Het verzenden van speciale gegevens in XML

Soms wilt u verzenden van algemene gegevens in uw XML-element zonder speciale tekens te vervangen. Bijvoorbeeld, u zou willen verzenden een HTML-pagina binnen een XML-element (de toepassing van de RasPiConnect doet dit) en u niet wilt wijzigen van alle tekens. XML parseert alle tekst tussen elementen standaard, maar er is een manier om dat te veranderen: CDATA. In een CDATA-structuur, de XML-parser negeert de gegevens en het zonder verandering in een XML-berichten kan worden doorgegeven. CDATA ziet er zo uit:

 <![CDATA[<XML & DOES & NOT <LIKETHIS>]]> 

Uw XML-validatie

Er zijn veel sites op het web dat zal valideren dat uw XML goed gevormd is. http://www.xmlvalidation.com is een van die site. Knip en plak de XML van de eerste pagina het om uit te proberen.

Conclusie

XML is een eenvoudige, gemakkelijk te begrijpen methode voor het verzenden van informatie in een onafhankelijk van hardware en software. De belangrijkste voordelen van XML zijn leesbaarheid en portabiliteit tussen systemen. Het biedt een eenvoudig uitbreidbare kader voor informatie-uitwisseling. Om te leren meer over XML proberen de volgende websites: http://www.w3schools.com/xml/http://www.quackit.com/xml/tutorial/

Gerelateerde Artikelen

Fotocel reageren op licht als een oog. een inleidende Project voor het gebruik van Processing met Arduino

Fotocel reageren op licht als een oog. een inleidende Project voor het gebruik van Processing met Arduino

In dit project ziet u een eenvoudig voorbeeld van het gebruik van verwerking zodat een grafische weergave van gegevens die een arduino als krijgt input van een sensor. In dit geval een fotocel.Nadat een oog beeld krijgen van internet, wat ik deed is,
Converteren van uw POP/drankautomaat voor het gebruik van RFID met Arduino

Converteren van uw POP/drankautomaat voor het gebruik van RFID met Arduino

Dit is mijn eerste instructable zodat elke nuttige opmerkingen worden op prijs gesteld. Ik begon dit project ongeveer een jaar geleden.Begon ik op zoek over het gebruik van de arduino te controleren van een automaat en ik vond dat een project zonder
Afspelen van Video met Python en GPIO

Afspelen van Video met Python en GPIO

Hallo weer. Vandaag ga ik om te laten zien van een lopend project dat ik bezig ben. Mijn bedrijf heeft me schonk het genoegen om te bouwen van een demo-kit voor een van onze productlijnen. Ik werk in de industrie voor laagspanning waarin brandalarm,
Beheren van Arduino met python gebaseerd web API (geen php)

Beheren van Arduino met python gebaseerd web API (geen php)

In deze handleiding zal ik u tonen hoe om uw apparaat arduino van een webpagina te controleren! Daarna zal ik u tonen hoe om te controleren uw arduino vanaf uw mobiele apparaat en zelfs het maken van een web-gebaseerde API voor het beheersen van je a
Het eerste gebruik van ESP8266 met Arduino Uno

Het eerste gebruik van ESP8266 met Arduino Uno

Vandaag, ga ik om u te tonen die hoe kunnen we onze module ESP8266 voor gebruik met Arduino UNO voorbereiden.De noodzaak lijst:1. Arduino UNO (met USB-kabel die op uw computer via USB-kabel aangesloten, ook wordt gebruikt de spanning)2. uw computer (
Het gebruik van calqueerpapier met uw patroon

Het gebruik van calqueerpapier met uw patroon

keer om te leren van de basics: met behulp van calqueerpapier ter gelegenheid van uw patroon.Wat u nodig hebt:-Stof-Patroon-Transfer papier/tracering papier (het heeft meerdere namen)-Tracing wiel1. Beveilig uw patroon op je stof. (Check out mijn and
Het gebruik van Miracast met een Android toestel

Het gebruik van Miracast met een Android toestel

Terug naar toen Android 4.0 werd ontwikkeld had het een systeem ingebouwd genaamd Wi-Fi Direct, waarmee ad hock draadloze netwerken worden opgezet. Dit nooit echt aangeslagen maar het was dit systeem die later toegestaan Miracast worden ontwikkeld to
Het gebruik van Google Chrome op Raspberry Pi 2

Het gebruik van Google Chrome op Raspberry Pi 2

Vandaag, ga ik u tonen hoe Google Chrome browser werken op Raspberry Pi 2 te gebruiken. Ik lees dit onderwerp op de Raspberry Pi Forums. Tijdens het uitvoeren van dat uw Raspberry Pi 2 met geladen Noobs opgenomen Raspbian Jessie, kun je dat de codes
Beheersing van Edison met Python

Beheersing van Edison met Python

Dit is een project om bekend zijn de Edison Intel en Intel Arduino expansiekaart.In de tussentijd ik eindelijk geleerd wat Python code.Het een tijdje geweest aangezien ik Linux gebruikt heb en nu had ik om het te doen zonder een Gui venster front-end
Beheersing van richting en snelheid van gelijkstroommotor met Raspberry Pi

Beheersing van richting en snelheid van gelijkstroommotor met Raspberry Pi

Dit is een eenvoudige gids wanneer leert u hoe u kunt besturen gelijkstroommotoren met behulp van de Raspberry pi. Over raspberrypi - is het een cradit kaart grootte kleine computer die General-Purpose input-output GPIO pinnen die worden gebruikt hee
Het gebruik van uw MotorShield met gelijkstroommotoren

Het gebruik van uw MotorShield met gelijkstroommotoren

Ik wilde helpen met het geven van de Gemeenschap een eenvoudiger te begrijpen gids voor het gebruik van gelijkstroommotoren met de Motorshield die kan worden aangesloten op de Arduino.Dus gelieve pak die je Arduino en MotorShield en ik hoop dat we ku
Integratie van LEDs met fischertechnik

Integratie van LEDs met fischertechnik

dit instructable beschrijft hoe te integreren LEDs met fischertechnik elementen!Mijn oorspronkelijke visie was het creƫren van een mechanische videospel dat zou LEDs oplichten. Toen ik begon knutselen met fischertechnik van Eco Power kit (#57485) en
Plotly met Python

Plotly met Python

Ik struikelde onlangs, op Plotly, een prachtige online Data Visualization systeem op grond van een artikel maken. Het is overbodig voor mij om te zeggen dat er verschillende artikelen waaruit het gebruik van Plotly voor Arduino, Raspberry Pi, etceter
Inleiding tot de aan het gebruik van de Google api.

Inleiding tot de aan het gebruik van de Google api.

Google naar verluidt niet langer steunt deze api met de nieuwste versie van python. Ik maakte een fout verslag, maar nog nooit gehoord terug.Voorwoord: Er is een programmeertaal die is gericht op nieuwe ontwikkelaars. Die taal heet Python. Het is bes