Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.
Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.
Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).
Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.
Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.
Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.
Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.
Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.
Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).
Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.
Priklad: <resistor> … <value unit-prefix="k">10</value> … <resistor> <condensator> … <value unit-prefix="u">10</value> … </condensator>Zde konkretne element <value>, jednou muze jeho atribut unit-prefix nabyvat hodnot: m|R|k|M. Kdezto když je to u kondenzatoru, tak muze tento atribut nabyvat hodnot: m|u|n|p. Ted tvorim schema dle XML Schema (http://www.w3.org/2001/XMLSchema) a nevim jak mam definovat element value tak aby se rozlišilo, kde se element nachazi. Dekuji predem za pomoc! Tomas
<xsd:complexType name="rootType">
<xsd:sequence>
<xsd:element name="resistor" type="resistorType" />
<xsd:element name="condensator" type="condensatorType" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="resistorType">
<xsd:sequence>
<xsd:element name="value" type="valueType" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="condensatorType">
<xsd:sequence>
<xsd:element name="value" type="valueType" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="valueType">
<xsd:simpleContent>
<xsd:extension base="xsd:integer" use="required">
<xsd:attribute name="unit-prefix" type="unitsType" use="required" />
</xsd:extendsion>
</xsd:simpleContent>
</xsd:complexType>
<xsd:simpleType="unitsType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="k" />
<xsd:enumeration value="M" />
<xsd:enumeration value="G" />
<xsd:enumeration value="T" />
<xsd:enumeration value="P" />
<xsd:enumeration value="E" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="m" />
<xsd:enumeration value="u" />
<xsd:enumeration value="n" />
<xsd:enumeration value="p" />
<xsd:enumeration value="f" />
<xsd:enumeration value="a" />
<xsd:enumeration value="y" />
<xsd:enumeration value="d" />
<xsd:enumeration value="dk" />
<xsd:enumeration value="h" />
</xsd:restriction>
</xsd:simpleType>
<ns:root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns="http://hadrabap.googlepages.com/projects/xmlutilities/example.xsd"
xsi:schemaLocation="http://hadrabap.googlepages.com/projects/xmlutilities/example.xsd file:/Users/petr/NetBeansProjects/xmlutilities/test/global/sandbox/xmlutilities/example.xsd">
<ns:resistor>
<ns:value unit-prefix="k">12</ns:value>
</ns:resistor>
<ns:condensator>
<ns:value>
12
</ns:value>
</ns:condensator>
<ns:other>
<ns:value unit-prefix="xm">14</ns:value>
</ns:other>
<ns:resistor>
<ns:value unit-prefix="M">13</ns:value>
</ns:resistor>
</ns:root>
Kořenem je element root. V něm můžou být tyto elementy:
resistorcondensatorothervalue, který může obsahovat jen číselnou hodnotu (desetinné číslo). Element value v elementu resistor žere navíc atribut unit-prefix, který může nabývat hodnot m, R, k a M. Element value v elementu condensator nemá žádný atribut. Element value v elementu other má též atribut unit-prefix, ale s hodnotami xm, xR, xk a xM.
Schéma vypadá takto:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://hadrabap.googlepages.com/projects/xmlutilities/example.xsd"
targetNamespace="http://hadrabap.googlepages.com/projects/xmlutilities/example.xsd"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xsd:element name="root" type="rootType" />
<xsd:complexType name="rootType">
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
<xsd:choice>
<xsd:element name="resistor" type="resistorType" />
<xsd:element name="condensator" type="condensatorType" />
<xsd:element name="other" type="otherType" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="resistorType">
<xsd:sequence>
<xsd:element name="value">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="unit-prefix" type="unitsType" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="condensatorType">
<xsd:sequence>
<xsd:element name="value">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal" />
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="otherType">
<xsd:sequence>
<xsd:element name="value">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="unit-prefix" type="units2Type" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="unitsType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="m" />
<xsd:enumeration value="R" />
<xsd:enumeration value="k" />
<xsd:enumeration value="M" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="units2Type">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="xm" />
<xsd:enumeration value="xR" />
<xsd:enumeration value="xk" />
<xsd:enumeration value="xM" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
Když si stáhneš XMLUtilities a do adresáře xmlutilities/test/global/sandbox/xmlutilities/ nahraješ soubory z přílohy, získáš další TestCase, pomocí kterého si můžeš hrát s tím schémátkem. Je to projekt NetBeans 6.1 a všechny knihovny jsou součástí distribuce knihovny. Vyžaduje to JavaSE 5 a vyšší.
Tak snad jsem trošku pomohl. Dej vědět, co dál
<location>
<coordinate name="x">20</coordinate>
<coordinate name="y">50</coordinate>
</location>
nadefinovat to, aby se prvek coordinate mohl vyskytnout vicenasobne ale abynevznikla duplicitni definice u hodnoty atributu name.
Cili nejak takto ne:
<location>
<coordinate name="x">20</coordinate>
<coordinate name="x">50</coordinate>
<coordinate name="y">50</coordinate>
</location>
Dekuji Vam!
coordinate-x, tak se podíváš, jestli je nadefinovaná a když jo, tak vyhučíš), nebo změnil strukturu XML (například mít dva elementy <coordinate-x /> a <coordinate-y /> bez toho atributu)…
Bohužel, i XML Schema má své limity a tohle není jediná. Například nejde udělat, že když má atribut někde v nějakym elementu nahoře tuhle hodnotu, tak někde dole musí být hodnota jiná :-/
Tiskni
Sdílej: