2C - A példa xml kimenet nem illeszkedik a sémára (Name vs Computer attribute)

+5 votes
asked Apr 11, 2015 in IRF tantárgy by kamui (33 points)  

A mintakimenet:

<?xml version="1.0" encoding="UTF-8"?>
<Accounts>
 <Computer Computer="192.168.250.128">...</Computer>
 <Computer Name="server01"/>
</Accounts>

A séma pedig többek közt ezt mondja a Computerről:

<xs:attribute type="xs:string" name="Computer" use="required"/>
<xs:attribute type="xs:string" name="Name" use="required"/>

Mindenkettő required, de a mintakimenetben nem szerepel együtt a kettő.
Itt mi volt a szándék?

A bemeneti CSV fájlban egy machineName oszlop szerepel. Tűntessem fel azt a Computer attribútumban? A Name attribútumba meg kérdezzem le a valódi nevét?

A feladatkiírás szerint hiba esetén is kell Computer elem a kimenetbe. Ilyenkor mi legyen a Name-el?

A szkript kezelje azt az esetet, ha a távoli géphez nem sikerül
csatlakozni. Ilyenkor a gépnek megfelelő üres elem kerüljön bele az
XML-fájlba, valamint a szkript írjon ki hibaüzenetet a stderr
kimenetre, és folytassa a feldolgozást.

commented Apr 11, 2015 by kamui (33 points)  
(Most nézem, hogy az egyik Account-nál meg hiányzik a Domain, pedig az is kötelező.)
commented Apr 11, 2015 by sipka (22 points)  
Account elementnél ott van a Domain attribútum, viszon a Name-t a Computernél én sem tudtam hova tenni, sehol nincs róla szó. (<xs:attribute type="xs:string" name="Domain" use="required" />)
Másodszorra megnézve látni, hogy ahol sikerült csatlakozni a géphez, ott Computer attribútummal hivatkozik rá, ahol pedig nem, ott Name-mel, bár a mindkét attribútum szükségességét ez sem magyarázza.
commented Apr 12, 2015 by Fundy (40 points)  
Én ezt úgy közelítettem meg, hogy ahol IP van ott Computer, ahol név (localhost), ott Name van. (Mondjuk egy órával a leadás után ez már majdnem mindegy. :) )

1 Answer

–2 votes
answered Apr 12, 2015 by Tomika (59 points)  

A kimeneti minta rossz, megnéztem validátorral. Én úgy csináltam hogy mindkét attribútumot megjelenítettem, de attól függően, hogy "sima" nevet adtak meg vagy IP címét. És attól függően egyik üres lett, másik nem.

...