Avatar billede mads375 Juniormester
02. juli 2013 - 12:21 Der er 11 kommentarer og
1 løsning

XML/DTD opgaver

Hejsa

Jeg er igang med at lære XML og DTD via mit studie. Jeg har læst de to første kapiteler i

"An Introduction to XML and Web Technologies af Anders Møller og Michael I. Schwartzbach" , set videoer og w3schools. Jeg har fået en god forståelse af det, men mangler noget konkret at programmere og lave. I har ikke en ide til hvordan jeg kunne sammenkoble det lidt, så jeg kunne lave en konkret opgave. Altså fx hvis i stilte mig en opgave?

Mvh Mads
Avatar billede arne_v Ekspert
03. juli 2013 - 01:31 #1
Forestil dig at du skal lave et litteratur katalog som skal gemmes i XML og lave:
* DTD
* eksempel XML
* program som validerer XML mod DTD
Avatar billede arne_v Ekspert
03. juli 2013 - 01:31 #2
DTD er ieorigt noget gammel. Idag bruger man naesten altid schema.
Avatar billede mads375 Juniormester
03. juli 2013 - 13:01 #3
hej Arne. Mange tak for opgaven, super fedt at komme igang med noget praktisk her. Jeg er lidt i tvivl om hvornår man skal bruge attributer eller <!ELEMENT> i DTD, men jeg er kommet med et forslag her. Håber du har tid til at kigge det igennem? :-)

Jeg har lavet mit XML skema:

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

<catalog>
    <book1>
        <author>Arne Ekspert Jensen</author>
        <subject>Programming</subject>
        <ISBN>746323-2345-21</ISBN>
        <year>2009</year>
        <language>Denmark</language>
        <publications>
            <books>Java Tutorials</books>
            <books>Learn MYSQL</books>
        </publications>
        <publisher>Delta</publisher>
    </book1>
    <book2>
        <author>Jesper Larsen</author>
        <subject>Horror</subject>
        <ISBN>948572-3946-98</ISBN>
        <year>1999</year>
        <language>Germany</language>
        <publications>
            <books>Murder on Foo street</books>
            <books></books>
        </publications>
        <publisher>Nordisk Forlag</publisher>
    </book2>
    <book3>
        <author>Simon Hansen</author>
        <subject>Advanced PHP</subject>
        <ISBN>394721-3846-45</ISBN>
        <year>2005</year>
        <language>Spain</language>
        <publications>
            <books>PHP for beginners</books>
            <books>The language of IT</books>
            <books>The world of programming</books>
            <publisher>Gads</publisher>
        </publications>
    </book3>
</catalog>


Jeg har prøvet at oversætte det til DTD:

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

<!ELEMENT book1 (author, subject, ISBN, year, language)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT subject (#PCDATA)>
<!ELEMENT ISBN (#PCDATA)>
<!ELEMENT year (#PCDATA)>
<!ELEMENT language (#PCDATA|danish|english|italian)+>
<!ELEMENT publications (books*)
<!ELEMENT books(#PCDATA)

<!ATTLIST author PCDATA #REQUIRED>
<!ATTLIST subject PCDATA #IMPLIED>
<!ATTLIST ISBN PCDATA #REQUIRED>
<!ATTLIST year PCDATA #REQUIRED>
<!ATTLIST language PCDATA #REQUIRED>
<!ATTLIST books PCDATA #IMPLIED>

Er det helt ved siden af?

Med Venlig Hilsen
Mads
Avatar billede mads375 Juniormester
03. juli 2013 - 13:01 #4
iøvrigt det er foreløbelig kun på book1, da jeg lige vil tjekke om det er helt ved siden af :-/
Avatar billede mads375 Juniormester
04. juli 2013 - 11:06 #5
Håber der er en som kan hjælpe? :-/
Avatar billede arne_v Ekspert
04. juli 2013 - 14:43 #6
Din XML er fin nok.

Din data model er ikke god.
Avatar billede arne_v Ekspert
04. juli 2013 - 14:46 #7
Det er ofte muligt at diskutere hvorvidt noget givet information skal vaere element eller attribut.

Som hovedregel:
- brug element for selvstanedig information
- brug attribut for supplerende information

<pris>125.00</pris>

<pris inklmoms="true">125.00</pris>

inklmoms er ikke selvstaendig men supplerende information omkring prisen.
Avatar billede mads375 Juniormester
04. juli 2013 - 16:06 #8
ok, jeg må lige kigge den igennem igen så:-) Tak for det Arne. Prøver lige at uploade en ny senere så
Avatar billede mads375 Juniormester
08. juli 2013 - 12:40 #9
Jeg er lidt i tvivl om hvornår man bruger ATTLIST. Altså hvilke ELEMENTS man bruger dem på?
Avatar billede mads375 Juniormester
15. juli 2013 - 16:47 #10
Hej Arne.
Tak for hjælpen. Ligger du ikke et svar?
Avatar billede arne_v Ekspert
15. juli 2013 - 16:52 #11
svar
Avatar billede arne_v Ekspert
15. juli 2013 - 16:53 #12
du bruger ATTLIST naar du skal have attributter - se ogsaa #7.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester