Apple property list
Plist ukládá typované hodnoty včetně řetězců, polí, slovníků a dat. Existuje XML i binární varianta; binární plist není vadný XML. Apple dokumentace popisuje model a serializaci.
<plist version="1.0"><dict><key>jmeno</key><string>Eva</string><key>aktivni</key><true/></dict></plist> XAML
XAML vytváří objekty a nastavuje vlastnosti v aplikačním frameworku. Namespace se mapují na podporované typy; varianty WPF a dalších frameworků se liší. Nenačítej nedůvěryhodný XAML jako obyčejná pasivní data. Viz WPF XAML.
BPMN
BPMN 2.0.2 modeluje procesy a zahrnuje XML výměnný formát. Model a grafické rozmístění diagramu jsou odlišné části. Přijetí XSD nezaručuje, že konkrétní workflow engine podporuje všechny elementy a jejich vykonání.
OPML 2.0
OPML ukládá osnovy v hierarchii outline. Často se používá pro export RSS odběrů. Text je základní atribut položky, další atributy závisí na jejím typu.
<opml version="2.0"><head><title>Osnova</title></head><body><outline text="XML"><outline text="Základy"/></outline></body></opml> Jak identifikovat soubor
Zkontroluj kořen, namespace, deklarovanou verzi a dokumentaci původce. XML formátovač upraví zápis, ale nedoplní význam chybějících dat. Převod do JSON vždy vyžaduje mapování, které respektuje typy a pořadí daného formátu.
Plist: typovaná konfigurace a Python
<plist version="1.0"><dict><key>nazev</key><string>XML.cz</string><key>aktivni</key><true/><key>pocet</key><integer>2</integer></dict></plist> import plistlib
with open("config.plist", "rb") as source:
value = plistlib.load(source)
assert value == {"nazev":"XML.cz", "aktivni":True, "pocet":2}
with open("copy.plist", "wb") as output:
plistlib.dump(value, output, fmt=plistlib.FMT_XML) Dict používá střídání key a hodnoty. String a integer jsou odlišné typy; prosté čtení textových uzlů by tento význam ztratilo. Plistlib umí i binární plist. Při změně souboru přes serializaci se může změnit pořadí klíčů a formátování, i když hodnoty zůstanou stejné.
XAML: objekty rozhraní ve WPF
<StackPanel xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"><TextBlock Text="XML.cz"/><Button Content="Otevřít"/></StackPanel> Kořen vytváří panel a děti ovládací prvky. Content nastavuje obsah tlačítka, XML atribut neznamená prostý datový sloupec. Fragment musí načíst odpovídající WPF prostředí; obyčejný XML validátor neumí potvrdit funkční UI. Varianty XAML v jiných frameworkách mohou používat jiné typy a podporované vlastnosti.
BPMN: logický proces bez grafického rozmístění
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" targetNamespace="urn:xmlcz:proces">
<process id="ukazka" isExecutable="false">
<startEvent id="start"/><task id="kontrola" name="Kontrola dat"/><endEvent id="konec"/>
<sequenceFlow id="f1" sourceRef="start" targetRef="kontrola"/>
<sequenceFlow id="f2" sourceRef="kontrola" targetRef="konec"/>
</process>
</definitions> SourceRef a targetRef vážou hrany na ID uzlů. Tento model nemá BPMN DI údaje o poloze a velikosti diagramu; editor může vyžadovat jejich doplnění. IsExecutable=false označuje nevykonávaný model. Pro skutečný workflow potřebuješ podporovaný engine a jeho pravidla, ne pouze přepnout boolean.
OPML: výměna seznamu odběrů
<opml version="2.0"><head><title>Moje zdroje</title></head><body><outline text="XML.cz" type="rss" xmlUrl="https://example.cz/feed.xml" htmlUrl="https://example.cz/"/></body></opml> Text je popisek outline, xmlUrl adresa feedu a htmlUrl adresa webu. Vnořené outline vytvářejí skupiny. Import seznamu není import všech článků zdrojového feedu; aplikace je musí načíst samostatně a řídit síťové zdroje. OPML validní jako XML ještě nemusí odpovídat konkrétním pravidlům RSS čtečky.
Primární dokumentace: plistlib, WPF XAML, OMG BPMN 2.0.2 a OPML 2.0.