Announcement

Collapse
No announcement yet.

XPath: count() Elemente, deren Inhalt nicht xyz ist

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XPath: count() Elemente, deren Inhalt nicht xyz ist

    Hallo,

    ich möchte für eine Anweisung die Elemente zählen lassen, deren Status NICHT 'Makuliert', 'Storniert' oder 'Vermisst' ist. Hier der entsprechende Auszug aus dem XML-Schema:

    Code:
    <xs:element name="status">
    
    	<xs:simpleType>
    
    		<xs:restriction base="xs:string">
    
    		<xs:enumeration value="Bestellt"/>
    
    		<xs:enumeration value="Entliehen"/>
    
    		<xs:enumeration value="Geschäftsgang"/>
    
    		<xs:enumeration value="Inst. auf Nachfrage"/>
    
    		<xs:enumeration value="Installiert"/>
    
    		<xs:enumeration value="Intranet"/>
    
    		<xs:enumeration value="Makuliert"/>
    
    		<xs:enumeration value="Online/Passwort"/>
    
    		<xs:enumeration value="Praesenzbestand"/>
    
    		<xs:enumeration value="Storniert"/>
    
    		<xs:enumeration value="Verfügbar"/>
    
    		<xs:enumeration value="Vermisst"/>
    
    		</xs:restriction>
    	</xs:simpleType>
    
    </xs:element>
    Hab schon etwas rumprobiert aber leider reichen meine XPath-Kenntnisse dafür nicht aus...
    Würde mich sehr über Hilfe freuen :-)
    Grüße,
    Lizzy

  • #2
    XPath 2.0:
    Code:
    //*[not(status = ('Makuliert', 'Storniert', 'Vermisst'))]
    wobei das "//*" präzisiert werden sollte, aber du hast uns nicht gezeigt, wie die Elemente heißen, die du suchst.
    Mit XPath 1.0:
    Code:
    //*[not(status = 'Makuliert' or status = 'Storniert' or status = 'Vermisst'))]

    Comment


    • #3
      Wenn du die Elemente zählen willst, dann natürlich
      Code:
      count(//*[not(status = ('Makuliert', 'Storniert', 'Vermisst'))])
      bzw.
      Code:
      count(//*[not(status = 'Makuliert' or status = 'Storniert' or status = 'Vermisst'))])

      Comment


      • #4
        Super! Habe mein Problem mit deiner Vorlage lösen können, vielen Dank für die schnelle Hilfe! :-)
        Viele Grüße,
        Lizzy

        Comment

        Working...
        X