Java
Java XML 외부 일반 unparsed entity
승모근뭉치
2023. 1. 16. 15:30
프로젝트 내 notation02.dtd
<?xml version="1.0" encoding="UTF-8"?>
<!NOTATION gif PUBLIC "image/gif" "photoshop.exe">
<!NOTATION jpg PUBLIC "image/jpg" "photoshop.exe">
<!NOTATION bmp PUBLIC "image/bmp" "painter.exe">
<!-- 외부 일반 언파스드 엔티티 -->
<!-- entity 를 선언하는 형식이 되는 겁니다.
NDATA의 이름은 gif다. 노테이션을 적어주는 거죠. 엔티티 다음에 엔티티명을 적고
이건 해당 엔티티명이되는거에요. 그리고 외부 system에 선언된 bi.gif일반 엔티티
가 되구요 해당 경로를 지정해주구요 bi.gif 이거에 대한 데이타노테이션을 적어줍니다.
NDATA gif-->
<!ENTITY img1 SYSTEM "b1.gif" NDATA gif>
<!ENTITY img2 SYSTEM "B2.JPG" NDATA jpg>
<!-- 노테이션 명을 적어주게 되있습니다. NDATA jpg
요 엔티티를 이용을 해서.소스 속성 선언을 했는데.이걸 책으로 바꿉니다.-->
<!ELEMENT 도서리스트 (책)* >
<!ELEMENT 책 (제목, 저자) >
<!ELEMENT 제목 (#PCDATA) >
<!ELEMENT 저자 (#PCDATA) >
<!ATTLIST 책
이미지 ENTITY #REQUIRED
>
<!-- entity는 모두 다 선언을 해서 해당 엔티티 가지고 처리해주면 되겠습니다. -->
<!-- XML파서는 문자데이타만 해석할수있다.그런데 이미지파일은바이너리이며이런이미지들은
해석하지못한다.이번엔 엔티티를 이용해본다.-->
<!-- 그러면 XML내에서는어떻게처리하는지 -->
프로젝트 내 notation02.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE 도서리스트 SYSTEM "notation02.dtd">
<!--DOCTYPE선언안하면 오류난다-->
<도서리스트>
<책 이미지 = "img1">
<제목>삼국지</제목>
<저자>이문열</저자>
</책>
<책 이미지 = "img2">
<제목>XML</제목>
<저자>김명수</저자>
</책>
</도서리스트>
<!-- 책에 대한 속성이 이미지 이기 때문에 이미지를 적어줍니다
엔티티유형이기때문에 엔티티의 이름을 적어주면 되는거죠 img1이라는 거죠 이름자체가
notation02.dtd에서는 책같은 경우에 항상 이미지가 리콰이어드 들어가기 때문에 -->