Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 7 odgovora
  • 3.876 pregleda

Najnovija ↓

pixelboard zagonetka 10.12.2007. u 01:14 · pre 230 meseci #1
Kako uz pomoc XML i naravno DTD gdje je najmanje 10 razlicitih elemenata, najmanje stablo sa tri dubine/nivoa i najmanje 5 razlicitih atributa

uraditi sljedece, tj napisati kod kao PixelBoard stranica gdje ce svaki korisnik moci vlastite slike na zeljenu poziciju ubaciti, slike se moraju moci skalirati (1x1, 2x1, 1x2, 2x2) i da je tu i PixelItem (Owner, Name, id, Desc, Link, img-path, x-from, x-to, y-from, y-to)


Re: pixelboard zagonetka 11.12.2007. u 22:20 · pre 230 meseci #2
I evo XML sam uspio rijesiti:

Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE main SYSTEM "XMLAbgabe.dtd">
<abgabe>
<projekt>
    <projektbezeichnung>Keine Dokumentation keiner 

Webapplikation</projektbezeichnung>
    <benutzer>
        <Bilder>
   <skale>1x1</skale>
   <skale>2x1</skale>
   <skale>1x2</skale>
   <skale>2x2</skale>
</Bilder>
    </benutzer>
    <pixelitem>
        <owner>vlasnik</owner>
        <name>proba</name>
        <id>0.1</id>
        <Desc>slika</Desc>
<link>http://nowhere.com</link>
<img-path>http://imageshack.us</img-path>
<hScale>34</hScale>
   <hScaleto>4</hScaleto>
<vScale>34</vScale>
   <vScaleto>4</vScaleto>
    </pixelitem>

    <status>
        <abgabetoolstatus>CLOSED</abgabetoolstatus>
    </status>
</projekt>
</abgabe>




Sada je nagradno pitanje kako xmlabgabe.dtd napisati?
Re: pixelboard zagonetka 11.12.2007. u 22:43 · pre 230 meseci #3
evo i prva verzija DTD-a

Code:
<?xml version="1.0" encoding="UTF-8"?>

<!ELEMENT db (entity +)>

<!ELEMENT benutzer(vorname | nachname)+>
<!ATTLIST entity
    id CDATA #REQUIRED
    name CDATA #REQUIRED
>

<!ELEMENT bilder (hscale | hscaleto | vscale | vscaleto )+>
<!ATTLIST entity
    id CDATA #REQUIRED
    name CDATA #REQUIRED

>

<!ELEMENT pixelitem (#PCDATA)>
<!ATTLIST bezeichnung
    type (owner | lastname | id | desc | link | img-path ) 

#REQUIRED


>

<!ELEMENT standort (bezeichnung*)>
<!ATTLIST standort
    place CDATA #IMPLIED

>

>

<!ELEMENT owner (bezeichnung*)>
<!ATTLIST owner
    place CDATA #IMPLIED

>



===================================
Ovo ispod je gomila greski koje mi sada javi


17: element owner: validity error : No declaration for element owner
<owner>vlasnik</owner>
^
18: element name: validity error : No declaration for element name
<name>proba</name>
^
19: element id: validity error : No declaration for element id
<id>0.1</id>
^
20: element Desc: validity error : No declaration for element Desc
<Desc>slika</Desc>
^
21: element link: validity error : No declaration for element link
<link>http://nowhere.com</link>
^
22: element img-path: validity error : No declaration for element img-path
<img-path>http://imageshack.us</img-path>
^
23: element hScale: validity error : No declaration for element hScale
<hScale>34</hScale>
^
24: element hScaleto: validity error : No declaration for element hScaleto
<hScaleto>4</hScaleto>
^
25: element vScale: validity error : No declaration for element vScale
<vScale>34</vScale>
^
26: element vScaleto: validity error : No declaration for element vScaleto
<vScaleto>4</vScaleto>
^
27: element pixelitem: validity error : Element pixelitem was declared #PCDATA but contains non text nodes
</pixelitem>
^
30: element abgabetoolstatus: validity error : No declaration for element abgabetoolstatus
<abgabetoolstatus>CLOSED</abgabetoolstatus>
^
31: element status: validity error : No declaration for element status
</status>
^
32: element projekt: validity error : No declaration for element projekt
</projekt>
^
33: element abgabe: validity error : No declaration for element abgabe
</abgabe>
^
Re: pixelboard zagonetka 12.12.2007. u 00:00 · pre 230 meseci #4
rijesio, DTD:


Code:
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT abgabe (projekt)>
<!ELEMENT projekt (opis, benutzer, pixelitem, status)>
<!ELEMENT opis (#PCDATA)>
<!ELEMENT benutzer (Bilder )>
<!ELEMENT Bilder (scale1, scale2, scale3, scale4)>
<!ELEMENT scale1 (#PCDATA)>
<!ELEMENT scale2 (#PCDATA)>
<!ELEMENT scale3 (#PCDATA)>
<!ELEMENT scale4 (#PCDATA)>

<!ELEMENT pixelitem (owner, name, id, Desc, link, img-path, hScale, hScaleto, vScale, vScaleto)>
<!ELEMENT owner (#PCDATA )>
<!ELEMENT name (#PCDATA )>
<!ELEMENT id (#PCDATA )>
<!ELEMENT Desc (#PCDATA )>
<!ELEMENT link (#PCDATA )>
<!ELEMENT img-path (#PCDATA )>
<!ELEMENT hScale (#PCDATA )>
<!ELEMENT hScaleto (#PCDATA )>
<!ELEMENT vScale (#PCDATA )>
<!ELEMENT vScaleto (#PCDATA )>

<!ELEMENT status (abgabetoolstatus)>
<!ELEMENT abgabetoolstatus (#PCDATA )>

Re: pixelboard zagonetka 12.12.2007. u 00:47 · pre 230 meseci #5
e sada moram jos i XSD fajl napraviti iliti XML Schema, i ovdje nikako da rijesim dvije greske:


Code:
Fatal Error at file "Abgabe.xsd", line 46, column 4
   Message: Expected end of tag 'xsd:element'
Fatal Error at file "Abgabe.xml", line 3, column 9
   Message: Fatal error encountered during schema scan



a kod je:


Code:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <xsd:element name="abgabe">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="opis"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name="Keine Dokumentation keiner Webapplikation">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="Bilder"/>
        <xsd:element maxOccurs="unbounded" ref="scale"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name="name" type="xs:string"/>
  <xsd:element name="scale">
    <xsd:complexType>
      <xsd:choice>
        <xsd:element ref="1x1"/>
        <xsd:element ref="2x1"/>
        <xsd:element ref="1x2"/>
        <xsd:element ref="2x1"/>
      </xsd:choice>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name="pixelitem">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="owner"/>
        <xsd:element ref="name"/>
        <xsd:element ref="id"/>
        <xsd:element ref="desc"/>
        <xsd:element ref="link"/>
        <xsd:element ref="img-path"/>
        <xsd:element ref="hscale"/>
        <xsd:element ref="hscaleto"/>
        <xsd:element ref="vscale"/>
        <xsd:element ref="vscaleto"/>
      </xsd:sequence>
    </xsd:complexType>
   <xsd:element name="pixelitem">
 </xsd:element>
 </xsd:schema>
Re: pixelboard zagonetka 12.12.2007. u 08:37 · pre 230 meseci #6
Citat:
SuperC: <xsd:element name="pixelitem">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="owner"/>
<xsd:element ref="name"/>
<xsd:element ref="id"/>
<xsd:element ref="desc"/>
<xsd:element ref="link"/>
<xsd:element ref="img-path"/>
<xsd:element ref="hscale"/>
<xsd:element ref="hscaleto"/>
<xsd:element ref="vscale"/>
<xsd:element ref="vscaleto"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="pixelitem">
</xsd:element>
</xsd:schema>


Nije ti well formed, bold linija ti je visak.
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: pixelboard zagonetka 12.12.2007. u 10:42 · pre 230 meseci #7
Probah i onda dobijem druge dvije greske :):)

Code:
Fatal Error at file "Abgabe.xsd", line 45, column 4
   Message: Expected end of tag 'xsd:schema'
Fatal Error at file "Abgabe.xml", line 3, column 9
   Message: Fatal error encountered during schema scan
Re: pixelboard zagonetka 12.12.2007. u 16:38 · pre 230 meseci #8
Ok, evo je lista problema koji more tvoj XSD da ne bi jedno po jedno trebili:

1. Koristis xs:string tip za jedan element iako si taj namespace registrovao sa prefixom xsn
2. Fali ti targetNamespace, onaj po kome ce se XML pozivati na njega.
3. xsd:choice ne sluzi za limitiranje mogucih vrednosti taga, sluzi za odabir jednog od pod-tagova, ono sto ti trazis je simple type enumeration restriction.
4. Ako tag sadrzi ista vise od osnovnih podataka, nor atribut ili podtagove, automatski postaje complex type i uvek mora eksplicitno da se napomene :)
5. Nigde ne pominjes tipove podataka koji su ti u implicitnim ili simple tipovima.
6. Ako imas XSD ne treba ti DTD, sve sto ti treba za validaciju je vec u xsd-u i xsd ima mnogo vise mogucnosti za preciznije definisanje, a i brate u XML formatu je :)
7. MNOGO MNOGO vaznije, imas fundamentalnu gresku u razumevanju XMLa i XSDa. Xml nosi podatke, xsd nosi semu tog xml-a, njime odredjujes tagove i njihove tipove, ne sadrzaj koji ide u njih. Dakle sema koju ti trazis je sledeca:

Code:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.elitesecurity.org/t300733" 
      attributeFormDefault="unqualified" elementFormDefault="qualified">
  <xs:element name="abgabe">
    <xs:complexType>
      <xs:sequence minOccurs="1" maxOccurs="1">
        <xs:element name="projekt">
          <xs:complexType>
            <xs:sequence minOccurs="1" maxOccurs="1">
              <xs:element name="projektbezeichnung" type="xs:string" />
              <xs:element name="benutzer">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="Bilder">
                      <xs:complexType>
                        <xs:sequence minOccurs="1" maxOccurs="unbounded">
                          <xs:element name="skale">
                            <xs:simpleType>
                              <xs:restriction base="xs:string">
                                <xs:enumeration value="1x1"/>
                                <xs:enumeration value="2x1"/>
                                <xs:enumeration value="1x2"/>
                                <xs:enumeration value="2x2"/>
                              </xs:restriction>
                            </xs:simpleType>
                          </xs:element>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="pixelitem">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="owner" type="xs:string" />
                    <xs:element name="name" type="xs:string" />
                    <xs:element name="id" type="xs:decimal" />
                    <xs:element name="Desc" type="xs:string" />
                    <xs:element name="link" type="xs:string" />
                    <xs:element name="img-path" type="xs:string" />
                    <xs:element name="hScale" type="xs:int" />
                    <xs:element name="hScaleto" type="xs:int" />
                    <xs:element name="vScale" type="xs:int" />
                    <xs:element name="vScaleto" type="xs:int" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="status">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="abgabetoolstatus" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>


Kad target namespace ubasic u XML kao default namespace, validacija prolazi bez problema:

Code:

<?xml version="1.0" encoding="utf-8"?>
<abgabe xmlns="http://www.elitesecurity.org/t300733">
  <projekt>
    <projektbezeichnung>Keine Dokumentation keiner Webapplikation</projektbezeichnung>
    <benutzer>
      <Bilder>
        <skale>1x1</skale>
        <skale>2x1</skale>
        <skale>1x2</skale>
        <skale>2x2</skale>
      </Bilder>
    </benutzer>
    <pixelitem>
      <owner>vlasnik</owner>
      <name>proba</name>
      <id>0.1</id>
      <Desc>slika</Desc>
      <link>http://nowhere.com</link>
      <img-path>http://imageshack.us</img-path>
      <hScale>34</hScale>
      <hScaleto>4</hScaleto>
      <vScale>34</vScale>
      <vScaleto>4</vScaleto>
    </pixelitem>
    <status>
      <abgabetoolstatus>CLOSED</abgabetoolstatus>
    </status>
  </projekt>
</abgabe>
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme