AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

XSD Unique Element aber wie.....?

Ein Thema von creehawk · begonnen am 5. Nov 2018 · letzter Beitrag vom 6. Nov 2018
Antwort Antwort
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
241 Beiträge
 
Delphi 10.4 Sydney
 
#1

XSD Unique Element aber wie.....?

  Alt 5. Nov 2018, 17:26
Moin Moin.

Ich murkse jetzt schon den ganzen Nachmittag rum um entsprechend der folgenden XM Struktur..

Code:
<?xml version="1.0"?>
<Adressen xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance" xsi:schemaLocation="Adressenliste.xsd">
   <Adresse>
      <Index>4711</Index>
      <Anrede>Frau</Anrede>
      <Titel>Dr.</Titel>
      <Vorname>Anneliese</Vorname>
      <Nachname>Rampelburger-Meschbach</Nachname>
      <Strasse>Knödelweg</Strasse>
      <Hausnummer>38</Hausnummer>
      <Postleitzahl>47120</Postleitzahl>
      <Ort>Kassebur-Segersheim</Ort>
      <Telefon>04985/83984938</Telefon>
      <Mobil>0175/3986582364</Mobil>
      <EMail>Anneliese@t-online.jo</EMail>
      <Geburtsdatum>12-12-12</Geburtsdatum>
      <Kommentar></Kommentar>
   </Adresse>
</Adressen>
der folgenden XSD das Feld Index als UNIQUE Element zu verpassen.

Code:
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Adressen">
   <xs:complexType>
      <xs:sequence>
         <xs:element name="Adresse" maxOccurs="unbounded" minOccurs="0">
            <xs:complexType>
               <xs:sequence>
                  <xs:element type="xs:int" name="Index"/>
                  <xs:element type="xs:string" name="Anrede"/>
                  <xs:element type="xs:string" name="Titel"/>
                  <xs:element type="xs:string" name="Vorname"/>
                  <xs:element type="xs:string" name="Nachname"/>
                  <xs:element type="xs:string" name="Strasse"/>
                  <xs:element type="xs:integer" name="Hausnummer"/>
                  <xs:element type="xs:int" name="Postleitzahl"/>
                  <xs:element type="xs:string" name="Ort"/>
                  <xs:element type="xs:string" name="Telefon"/>
                  <xs:element type="xs:string" name="Mobil"/>
                  <xs:element type="xs:string" name="EMail"/>
                  <xs:element type="xs:date" name="Geburtsdatum"/>
                  <xs:element type="xs:string" name="Kommentar"/>
               </xs:sequence>
            </xs:complexType>
         </xs:element>
      </xs:sequence>
   </xs:complexType>
</xs:element>
</xs:schema>
Falls jemanden diese beiden ausgewählten Stücke bekannt vorkommen siehe letzten Thread.

Ich habe wirklich jede verdammte Google Fundstelle und natürlich auch hier gesucht. Ich finde nix das ich verstehe.

Hat da jemand einen Hilfestellung parat? Ein Code-Schnipsel?

creehawk
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#2

AW: XSD Unique Element aber wie.....?

  Alt 5. Nov 2018, 18:19
Mit dieser XSD
XML-Code:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           attributeFormDefault="unqualified"
           elementFormDefault="qualified">
  <xs:element name="Adressen">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Adresse" maxOccurs="unbounded" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:element type="xs:int" name="Index"/>
              <xs:element type="xs:string" name="Anrede"/>
              <xs:element type="xs:string" name="Titel"/>
              <xs:element type="xs:string" name="Vorname"/>
              <xs:element type="xs:string" name="Nachname"/>
              <xs:element type="xs:string" name="Strasse"/>
              <xs:element type="xs:integer" name="Hausnummer"/>
              <xs:element type="xs:int" name="Postleitzahl"/>
              <xs:element type="xs:string" name="Ort"/>
              <xs:element type="xs:string" name="Telefon"/>
              <xs:element type="xs:string" name="Mobil"/>
              <xs:element type="xs:string" name="EMail"/>
              <xs:element type="xs:date" name="Geburtsdatum"/>
              <xs:element type="xs:string" name="Kommentar"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
    <xs:unique name="uniqueAdresse">
      <xs:selector xpath="Adresse/Index"/>
      <xs:field xpath="."/>
    </xs:unique>
  </xs:element>
</xs:schema>
und dieser XML
XML-Code:
<?xml version="1.0"?>
<Adressen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:noNamespaceSchemaLocation="Adressenliste.xsd">
  <Adresse>
    <Index>1</Index>
    <Anrede>Frau</Anrede>
    <Titel>Dr.</Titel>
    <Vorname>Anneliese</Vorname>
    <Nachname>Rampelburger-Meschbach</Nachname>
    <Strasse>Knödelweg</Strasse>
    <Hausnummer>38</Hausnummer>
    <Postleitzahl>47120</Postleitzahl>
    <Ort>Kassebur-Segersheim</Ort>
    <Telefon>04985/83984938</Telefon>
    <Mobil>0175/3986582364</Mobil>
    <EMail>Anneliese@t-online.jo</EMail>
    <Geburtsdatum>2012-12-12</Geburtsdatum>
    <Kommentar></Kommentar>
  </Adresse>
  <Adresse>
    <Index>1</Index>
    <Anrede>Frau</Anrede>
    <Titel>Dr.</Titel>
    <Vorname>Anneliese</Vorname>
    <Nachname>Rampelburger-Meschbach</Nachname>
    <Strasse>Knödelweg</Strasse>
    <Hausnummer>38</Hausnummer>
    <Postleitzahl>47120</Postleitzahl>
    <Ort>Kassebur-Segersheim</Ort>
    <Telefon>04985/83984938</Telefon>
    <Mobil>0175/3986582364</Mobil>
    <EMail>Anneliese@t-online.jo</EMail>
    <Geburtsdatum>2012-12-12</Geburtsdatum>
    <Kommentar></Kommentar>
  </Adresse>
</Adressen>
erhalte ich folgendes Ergebnis
2018-11-05-18_16_47-xmlvalidator-microsoft-visual-studio.png
(geöffnet in Visual Studio 2017)

BTW

Wenn du ein Schema ohne Namespace hast, dann musst du das Schema so angeben xsi:noNamespaceSchemaLocation="Adressenliste.xsd"

Geändert von Schokohase ( 5. Nov 2018 um 18:22 Uhr)
  Mit Zitat antworten Zitat
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
241 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: XSD Unique Element aber wie.....?

  Alt 6. Nov 2018, 07:37
Och Mönsch.......

Immer alles so einfach. Ich alber hier rum und wälze dicke Webseiten...

Vielen Dank für die Antwort, funktioniert bestens.

creehawk
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz